Меню Рубрики

Acpid linux что это

команда acpid в Linux с примерами

Демон acpid обеспечивает интеллектуальное управление питанием в системе и позволяет запрашивать состояние батареи и конфигурации, поддерживая расширенный интерфейс конфигурации и питания (ACPI). События ACPI уведомляются программами пользовательского пространства с помощью acpid.
Спецификация ACPI (Advanced Configuration и Power Interface) позволяет операционной системе контролировать количество энергии, которое она предоставляет каждому устройству или периферийному устройству, подключенному к системе. Это заставляет операционную систему отключать определенные устройства, когда они больше не используются, например монитор, обеспечивая стабильное и эффективное управление питанием.
Демон acpid по умолчанию работает как фоновый процесс и должен запускаться во время загрузки системы . Всякий раз, когда происходит событие, он выполняет программы для обработки события. Это происходит при открытии файла событий (по умолчанию / proc / acpi / event) и считывании всех строк. Когда строка получена (событие), она проверяет список правил, чтобы выполнить то, которое соответствует событию. Если существует файл блокировки (по умолчанию / var / lock / acpid), он игнорирует все входящие события ACPI.
Простые файлы конфигурации используются для определения правил. Он просматривает каталог конфигурации (по умолчанию / etc / acpi / events), и все файлы, которые не начинаются с точки (‘.’) Или заканчиваются тильдой (

), анализируются. Каждый файл должен определять событие и соответствующее действие. Пустые строки или строки с первым символом в виде хэша (‘#’) игнорируются.

В каждой строке есть три токена : ключ , буквальный знак равенства и значение .

  • Ключ может содержать до 63 символов, регистр не учитывается, но пробелы имеют значение.
  • Значение может содержать до 511 символов, оно чувствительно к регистру и пробелам. Значение события состоит из регулярного выражения, и события сопоставляются с ним.

Команда установки:

Сводка:

Параметры:

  • c, –confdir каталог
    Изменяет каталог, в котором acpid ищет файлы конфигурации правил. Каталог по умолчанию / etc / acpi / events.
  • C, –clientmax число
    Изменяет максимальное количество подключений некорневого сокета, которое может быть сделано к сокету acpid. По умолчанию 256.
  • d, –debug
    Увеличивает уровень отладки acpid на единицу. Он запускается на переднем плане, если уровень отладки отличен от нуля, и регистрируется в stderr и обычном системном журнале.
  • e, –eventfile filename
    Изменяет файл события. Acpid читает события из него. Файл по умолчанию / proc / acpi / event.
  • f, –foreground
    Сохраняет кислотность на переднем плане, не разветвляясь при запуске.
  • l, –logevents
    Сообщает acpid регистрировать информацию, связанную со всеми событиями и действиями.
  • L, –lockfile имя файла
    Изменяет файл блокировки, используемый для остановки обработки событий. Файл по умолчанию / var / lock / acpid.
  • g, –socketgroup groupname
    Изменяет групповое владение доменным сокетом. Acpid публикует события для него.
  • м, режим сокет-режима
    Изменяет разрешения сокета домена UNIX. По умолчанию 0666.
  • s, –socketfile filename
    Изменяет имя сокета домена UNIX, который открывается с помощью acpid. По умолчанию используется /var/run/acpid.socket.
  • S, –nosocket имя файла
    Говорит acpid не открывать сокет домена UNIX. Это отменяет параметр -s, а также отменяет все остальные параметры сокета.
  • p, –pidfile filename
    Указывает acpid использовать указанный файл в качестве pid-файла. Если файл существует, он будет удален и перезаписан. По умолчанию используется /var/run/acpid.pid.
  • v, –версия
    Распечатывает информацию о версии и завершает работу.

ч, –помощь
Показывает помощь и выходы.

Сервисный контроль

    Используйте служебную утилиту для управления сервисом acpid:

Для запуска услуги:

Вам будет предложено для аутентификации.

Чтобы остановить службу:


Вам будет предложено для аутентификации.

Проверьте, запущено или остановлено обслуживание:

Источник

acpid (Русский)

Contents

Краткое вступление

Многие руководства описывают процесс настройки мультимедийных клавиш с использованием таких программ как xev или keyTouch. Настоящая статья поясняет использование утилиты acpi_listen и создание вашего собственного скрипта для горячих клавиш.

Для кого предназначено данное руководство?

Данный метод предполагает, что сигналы с клавиатуры передаются через acpi. Если вам неизвестно, как это происходит в вашей системе, то полезно обратиться к статьям:

  • Using Multimedia Keys in Linux
  • Hotkeys

Установка необходимых инструментов

Скорее всего, все необходимое уже присутствует на вашей машине, но для уверенности лучше выполнить

Данная статья рассказывает, какие модули вам необходимо загрузить (например, в /etc/rc.conf или через modprobe).

Использование acpi_listen

Из-под суперпользователя или же из-под обычного, но с достаточными привилегиями доступа к устройствам ввода, выполните:

Если при нажатии особой клавиши, например “Следующий” (“Next”) или “Предыдущий” (“Previous”) на экране появляются строки, похожие на:

значит все в порядке и можно продолжать.

Настройка ACPID

Демон ACPI реагирует на события ACPI в соответствии с содержимым файла handler.sh , который находится в /etc/acpi/handler.sh

Вы можете либо редактировать его непосредственно, либо указать в нем другой скрипт (например /etc/acpi/hotkeys.sh )

В файл /etc/acpi/hotkeys.sh нужно добавить следующие строки:

Значения “00000b31” и тому подобные представляют собой ответ, полученный от acpi_listen. “$4” представляет собой последнюю часть строки “hkey VALZ 00000000 00000b31” и различает мультимедийные клавиши.

К тому же можно создать краткий shell-скрипт для управления медиа проигрывателем (на примере Exaile), который назовем exailectl. Так как ACPID запускается от суперпользователя, то вызов Exaile нужно выполнить командой:

В противном случае acpi не сможет обнаружить нашу плеер, работающий на пользовательском уровне запуска, и воссоздаст другой процесс.

Устаревшее: пример скрипта

Так как keyTouch и другие программы для работы с клавиатурой у меня либо не заработали, либо работали не совсем хорошо, то перед редактированием handler.sh я создал свой скрипт, запускающийся в фоне и непосредственно реагирующий на вывод acpi_listen. Это не совсем правильный способ, так как его работа постоянно нагружала мой ноутбук. Но так или иначе я привожу данный скрипт, поэтому вы можете использовать или изменять его для себя, а также добавлять свои предложения по его улучшению. Он создан для ноутбука Toshiba Satellite A50 и управляет плеером Exaile, но его легко изменить для управления Amarok, Xine или даже приспособить для немультимедийных программ.

Указание: скрипт необязательно запускать из-под суперпользователя, если вы можете получать ответ acpi_listen из-под обычного пользовательского аккаунта (снова подразумевается, что для него возможен доступ к устройствам ввода).

Источник

Управление питанием и настройки acpi

Трудно приходится линуксоидам, не имеющим DE, а сидящим исключительно на WM — всё, что в полноценном Desktop Environment ( окружении рабочего стола или как это лучше обозначить на великом и могучем? ) поставляется и работает “из коробки” в WM нужно подбирать и настраивать. Вот и автором сего поста ранее были использованы элементы xfce для таких вещей как управление питанием, регулировка громкости звука и яркости экрана. Но вступило что-то в голову: ведь в моей системе всегда установлены acpi и laptop-mode-tools, так почему бы не обучить их выполнять их же непосредственные обязанности: делать всё то, для чего раньше нужны были xfce4-volumed и xfce4-power-manager?

Для обучения нам понадобятся пакеты laptop-mode-tools , acpi , acpid . Acpid должен быть запущен.

Уровень яркости экрана

Дописать в /etc/default/grub строки:

Лезем в acpi. Создайте файлы со следующим содержанием.

Для увеличения яркости:

Для уменьшения яркости:

В bl_device замените inel_backlight на своё значение в зависимости от используемой видеокарты. Также стоит выяснить устраивающее вас значение, на основе которого будет увеличиваться или уменьшаться яркость экрана. У автора это значение = 200.

Как найти подходящее значение? Посмотрите какая цифра стоит сейчас. Если вы ничего ещё не настраивали, она должна отражать максимально допустимое значение:

Теперь поиграйте со значениями, чтобы выбрать нужный шаг:

Посмотрите как будет изменяться яркость экрана при разных значениях, если при добавлении 10 единиц вы практически не чувствуете разницы, добавьте ещё 50-100 единиц. Какой шаг покажется оптимальным, тот и оставьте.

Теперь укажем acpi использовать наши скрипты:

и сделаем эти скрипты исполняемыми:

Чтобы автоматически подбирать яркость при работе от аккумулятора или же сети, установим laptop-mode-tools:

и немного изменим его настройки:

Разумеется, значения 700/2000/3000 и путь /sys/class/backlight/intel_backlight/brightness должны быть заменены на ваши значения.

Автогибернация при критическом уровне заряда батареи

Достаточно часто бывает такое, что при работе от батареи забываешь посматривать на уровень её заряда, в результате чего получаешь отключение машины при полной разрядке батареи. Внезапное – как хлопок – выключение и все несохранённые данные потеряны. Обидно, не правда ли? Поэтому неплохо было бы позаботиться о своевременных мерах предосторожности.

Для этих целей также будем использовать функционал laptop-mode.

Если вас не устраивают значения по умолчанию, вы также можете изменить их. В случае, если до этого момента у вас не был указан раздел swap, укажите его в grub2, эти настройки уже были даны выше:

где /dev/sda5 – ваш swap-раздел Кроме того, в случае с archlinux следует добавить хук suspend в /etc/mkinitcpio.conf :

и пересобрать initrd:

Регулировка звука

Для этого снова обратимся к скриптам acpi, как и в случае с управлением яркостью дисплея.

Делаем скрипты в actions исполняемыми:

Для корректного распознавания мультимедийных клавиш, лучше использовать утилиту xmodmap .

Acpi и события клавиш

Честно говоря, меня устраивает поведение по-умолчанию, поэтому с пристрастием этот вопрос не рассматривался. При закрытии крышки ноутбука машина переходит в режим гибернации. При нажатии кнопки питания – корректно отключает систему. Оно и хорошо.

Похоже, управление этими событиями тоже берёт на себя laptop-mode-tools ( только пока неясно, в каком модуле/скрипте лежат эти настройки), поскольку в /etc/acpi/handler.sh каких-либо действий на события не назначено.

Но таки рассмотрим как настраивать то или иное событие.

Ответственен за эти шаманские действа вышеупомянутый handler.sh (или default.sh в зависимости от используемого дистрибутива), где и прописываются настройки. В случае, если вам хочется использовать не команду, а скрипт, расположите его в отдельном файле, подобно тому, как выше настраивалось управление яркостью дисплея и уровнем громкости .

button/lid указывает на управление закрытием/открытием крышки ноутбука, пока здесь нет ничего интересного.

Пример с воспроизведением звукового файла при закрытии/открытии крышки ноутбука:

То есть для настройки события нужно добавить его команду в соответствующее поле ( здесь после logger ‘LID closed’ ). Так, действие при открытии крышки нужно будет вписать после logger ‘LID opened’ .

  • button/power — события, связанные с кнопкой управления питанием
  • logger ‘PowerButton pressed’ — когда клавиша нажата
  • button/sleep — сон, если подобная кнопка/клавиша имеется
  • ac_adapter — события, связанные с подключением/отключением адаптера питания
  • logger ‘AC unpluged’ — когда адаптер отключен
  • logger ‘AC pluged’ — когда адаптер подключен
  • battery — батарея ноутбука
  • button/lid — крышка ноутбука

Для перевода в ждущий/спящий режимы можно использовать скрипты laptop-mode-tools из /usr/share/laptop-mode-tools/module-helpers : pm-hibernate и pm-suspend .

Для выключения питания при закрытии крышки достаточно добавить в /etc/acpi/actions/lm_lid.sh строку:

Помимо всего вышеописанного мы можем контролировать парковку головок жёсткого диска. Дабы отключить парковку совсем пропишите в /etc/laptop-mode/laptop-mode.conf :

Пожалуй, на этом стоит остановиться и дать читателю возможность самостоятельно поэкспериментировать с настройками энергосбережения и событий acpi.

Источник

Читайте также:  Rosa linux или mageia

Популярные записи

Adblock
detector