
Итак, я не хочу запускать его при запуске работы от сети переменного тока, а этот или лучше другой скрипт при запуске работы от батареи.
Я пытался
- /etc/acpi/power.sh
- добавление символической ссылки на /etc/laptop-mode/battery-start
Кажется, это не работает.
решение1
Вы должны иметь возможность делать то, что хотите, со скриптом в /etc/pm/power.d
. Цитата из HOWTO.hooks
файла в pm-utils
:
Как написать хук pm-utils:
ПАРАМЕТРЫ
Хук pm-utils — это просто исполняемый файл, который принимает как минимум один параметр.
Для хуков в power.d потенциальные значения этого параметра следующие:
- true — хук ДОЛЖЕН выполнить любое соответствующее действие при переходе системы НА питание от батареи.
- false — хук ДОЛЖЕН выполнить любое соответствующее действие при переходе системы ОТ питания от батареи.
Возможно, вам также будет интересно прочитать некоторые из существующих приемов, /usr/lib/pm-utils/power.d
чтобы получить идеи о том, как структурировать свой сценарий.
Обратите внимание, что если вы используете pm-utils
интерфейс, то с помощью первого аргумента вы узнаете, подключены ли вы к сети переменного тока или нет: если $1
это так true
, то вы переключаетесь на питание от батареи, а если это так, false
то вы переключаетесь обратно на питание от сети.
решение2
Я достигаю аналогичной цели, используя acpi.
используйте /usr/bin/acpi_listen для перехвата нужного вам события acpi. На моем ноутбуке событие, которое возникает при переключении на батарею, — это «ac_adapter ACPI0003:00 00000080 00000000». Поэтому я создаю новое событие: /etc/acpi/events/switch-to-battery, ниже приведено его содержимое:
event=ac_adapter ACPI0003:00 00000080 00000000
action=/etc/acpi/switch-to-battery.sh
Просто делайте все, что хотите в ac_adapter.sh. Больше примеров можно найти, если установлен acpi-support.
Наконец, выполните эту команду, чтобы новое событие вступило в силу.
sudo service acpid restart
решение3
Это не совсем правильный вопрос. Я получаю некоторые ошибки, но сейчас я их исправляю и мой power.sh и все работает
if on_ac_power; then
echo 0 > /home/riad/1
#on ac
else
echo 1 > /home/riad/1
#on battery
fi
и это работает