Сайт | Скачать | Видео | Wiki

Голосование

Чем будете управлять питанием

xfce4-power-manager
3 (50%)
acpid
2 (33.3%)
laptop-mode-tools
1 (16.7%)
TLP
0 (0%)

Проголосовало пользователей: 6

Автор Тема: Управление питанием ноутбука. acpid laptop-mode, hibernate  (Прочитано 24408 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Pm-utils - в PRA есть и работают даже в minirc (без systemd)
hybernate tuxonice - немного отдельная тема - кому-нибудь он нужен?
Реакция на разряд батареи есть - через trayBatteryCtrl и т.п.
DPMS - есть
https://wiki.archlinux.org/index.php/Power_management
Цитата
systemd handles some power-related ACPI events. These are configured in /etc/systemd/logind.conf or /etc/systemd/logind.conf.d/*.conf, and described in man logind.conf.
The specified action can be one of ignore, poweroff, reboot, halt, suspend, hibernate, hybrid-sleep, lock or kexec. If these options are not configured, systemd will use its defaults: HandlePowerKey=poweroff, HandleSuspendKey=suspend, HandleHibernateKey=hibernate, and HandleLidSwitch=suspend.
systemd cannot handle AC and Battery ACPI events, so if you use Laptop Mode Tools or other similar tools acpid is still required.
On systems with no dedicated power manager, this may replace the acpid daemon which is usually used to react to these ACPI events.
Через systemd можно настроить в /etc/systemd/logind.conf только реакцию на HandlePowerKey, HandleSuspendKey, HandleHibernateKey, and HandleLidSwitch  ( ignore, poweroff, reboot, halt, suspend, hibernate, hybrid-sleep, lock or kexec)
Если хочется большего (другой реакции на эти события) или если нет systemd :
1. xfce4(mate|gnome)-power manager. Относительно русурсоемок, тянет upowerd и DE либы, хороший gui
2. acpid - легкий простой, без зависимостей. По событию запускает что угодно. Т.е можно получить функционал как у 1. gui нет (можно написать или кто знает готовый?)
3. Laptop_Mode_Tools - легкий простой, без зависимостей. Позволяет максимально  долго прожить на батарее. Конфиги адские, но и по дефолту все ок. gui нет (точнее есть на питоне тяжелый и неудобный)
4. TLP - похож на 3

Думаю - 1 - не puppy way
2,3 - пойдет. Но надо написать gui для acpid (сон или ... на закрытие крышки, уменьшение яркости на пропадание 220в +сюда же перенести управление DPMS)
Реальную проблему - сон при закрытии крышки на minirc я решил acpid - в аттаче

Выводы по итогу экспериментов:
1. acpid не мешает systemd, в minirc без него не обработать закрытие крышки, выкл и т.п. Увеличение яркости и громкости можно делать через него (а не конфирурить хоткеи во всех WM)
2. Через acpid не запустить никого Х-ового. Это главное неудобство
Добавление в handler.sh решает проблему
Код
   for x in /tmp/.X11-unix/*; do  export DISPLAY=":`echo $x | sed s#/tmp/.X11-unix/X##`" ; done
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
export XAUTHORITY="/home/`sfsusr`/.Xauthority"
3. Laptop_Mode_Tools не работает без acpid запускается udev и не мешает systemd. В systemd нет такого функционала
4. Laptop_Mode_Tools бережет батарею по максимуму. Хорошо конфигурируется.

Итог:
Надо добавить в 070- acpid и  Laptop_Mode
Должно работать так
Запускаем только на ноутах в /etc/rc.local acpid : laptop-detect && acpid
На отключение питания (ac_adapter) вешаем /etc/acpi/handler.sh :
-rfkil отключение блютуз
-rfkil отключение неактивного wifi
-остальное автоматически сделает Laptop_Mode_Tools
Сюда же можно добавить уменьшение яркости и звука
На закрытие крышки можно повесить сон или выключение
Перед сном экран блокируется
Отключить блокировку:
Заблокиировать две строки в /etc/acpi/handlers.sh
Код
SLEEP(){
        pm-suspend &
        #ntf -i "Экран заблокирован" "Введите пароль пользователя '`sfsusr`'" &
        #sudo -u "`sfsusr`" sxlock -b -f '*' || `which sudo` xtrlock || sudo -u "`sfsusr`" i3lock -d -c 000000  -i /usr/share/xpupsay/puppyLOGO2.png
}

Не запускается acpid (не работают кнопки)
« Последнее редактирование: 29 Январь 2021, 09:51:32 от sfs »

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Управление питанием ноутбука
« Ответ #1 : 01 Октябрь 2015, 02:50:07 »
Мне нужен hibernate.
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн Satevis

  • Старожил
  • ****
  • Сообщений: 230
  • Репутация: +6/-0
Re:Управление питанием ноутбука
« Ответ #2 : 01 Октябрь 2015, 05:15:40 »

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:Управление питанием ноутбука
« Ответ #3 : 01 Октябрь 2015, 13:48:17 »
Попробовал - оба модуля из шапки нормально работают вместе и по отдельности с systemd и minirc
C acpid все просто и понятно - надо только определиться - чего хотим по итогу и написать гуй
laptop-mode - надо разбираться с конфигами или просто добавить в acpid то в чем разобрались типа яркости, rfkill и т.п.

xfce4-power-manager - кто проголосовал - обоснуйте. Сделать не проблема.  Только "красиво"? Мой гуй красивым вряд ли будет (yad gtkdialog)
hibernate - разве tuxonice не работает ? Или проблема в том, что нет доки и гуя?

Поискал что-нибудь готовое с gui - ничего не нашел
Для acpi можно вдохновиться https://anders.unix.se/2012/09/12/standalone-power-management-in-linux-plus-brightness-sound-buttons/
https://bbs.archlinux.org/viewtopic.php?id=159233

https://wiki.archlinux.org/index.php/TLP

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:Управление питанием ноутбука
« Ответ #4 : 01 Октябрь 2015, 14:47:44 »
tuxonice конечно работает, только надо в init код вставить чтобы пробуждалось.
Тему насчет кода я уже поднимал.
Давайте про это сюда

Кстати - а будет ли xfce4(mate|gnome)-power manager работать с tuxonice...
« Последнее редактирование: 01 Октябрь 2015, 14:59:26 от sfs »

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:Управление питанием ноутбука
« Ответ #5 : 06 Октябрь 2015, 13:53:47 »
http://www.howtogeek.com/55185/how-to-maximize-the-battery-life-on-your-linux-laptop/
http://www.thinkwiki.org/wiki/How_to_reduce_power_consumption
Pro - я правильно понял - в нашем ядре по дефолту ondemand и этого необходимо и достаточно на все случаи жизни. Ничего больше у проца настраивать не надо?

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Управление питанием ноутбука
« Ответ #6 : 06 Октябрь 2015, 14:21:35 »
да вроде ненадо.
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:Управление питанием ноутбука
« Ответ #7 : 06 Октябрь 2015, 17:40:52 »
Доработал шапку. Проверил на 3х ноутах. Чтобы получилось как написано в "Итоги" надо положить в /modules 3 модуля из шапки
Теперь уже не уверен, нужен ли gui. Настраивать в gui можно только это "На закрытие крышки можно повесить сон или выключение "

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Управление питанием ноутбука
« Ответ #8 : 07 Октябрь 2015, 03:35:05 »
Теперь уже не уверен, нужен ли gui. Настраивать в gui можно только это "На закрытие крышки можно повесить сон или выключение "
конечно ненужен, кому понадобится спящий режим настраивать на десктопе, а время отключения монитора регулировать и вовсе не обязательно, блокировку паролем при закрытии крышки тоже можно через скрипты настроить.

Особенно доставляет процедура настройки чтобы при выходе из ждущего режима экран блокировался и пароль запрашивался, я через systemd запиливал.
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:Управление питанием ноутбука
« Ответ #9 : 07 Октябрь 2015, 09:22:32 »
блокировку паролем при закрытии крышки тоже можно через скрипты настроить.
Кak? Желательно без systemd
Через acpid у меня получилось только
Цитата
Перед сном можно заблокировать : physlock (некоторые ноуты вешает)
Цитата
2. Через acpid не запустить никого Х-ового. Это главное неудобство

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Управление питанием ноутбука
« Ответ #10 : 07 Октябрь 2015, 10:16:03 »
а ты блокируй не до засыпания, а после пробуждения
Код
 cat /etc/pm/sleep.d/99xlock 
#!/bin/sh
# Log some extra information at the beginning of a suspend/resume cycle.
# TODO: Make this hook only run when PM_DEBUG is true?

. "${PM_FUNCTIONS}"

case "$1" in
        resume)
/usr/bin/sudo -u live /usr/local/bin/sxlock -b -f '*'
;;
esac
« Последнее редактирование: 07 Октябрь 2015, 16:36:59 от sfs »
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:Управление питанием ноутбука
« Ответ #11 : 07 Октябрь 2015, 16:45:23 »
Нашел в чем проблема
2. Через acpid не запустить никого Х-ового. Это главное неудобство
Добавление в handler.sh решает проблему
Код
   for x in /tmp/.X11-unix/*; do  export DISPLAY=":`echo $x | sed s#/tmp/.X11-unix/X##`" ; done
...но только с systemd
Код
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
export XAUTHORITY="/home/`sfsusr`/.Xauthority"

/etc/pm/sleep.d/99xlock - работает тоже только с export ...

Перезалил rootcopy в шапке

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:Управление питанием ноутбука
« Ответ #12 : 09 Октябрь 2015, 09:17:17 »
обновил модуль Bluetooth-5.35 стал.
-rfkil отключение блютуз
Из соображений, что блютуз у нас не работает - я его выключаю и больше не включаю
Есть какой-то критерий по которому можно понять что он используется и выключать не надо

Кто экспериментировал с suspend? Поднимаются ли сети после пробуждения? Может надо их "подтолкнуть" ?

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Управление питанием ноутбука
« Ответ #13 : 09 Октябрь 2015, 09:21:56 »
какой еще критерий, хочешь использовать - включаешь.
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 34033
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:Управление питанием ноутбука
« Ответ #14 : 09 Октябрь 2015, 09:36:25 »
Вот критерий для вифи:
Код
iwconfig || rfkill block wifi
Не настроен - выключаем
Для блютуза аналогичное можно придумать?