LINUX.ORG.RU

Obshutdown + кнопка включения ноутбука

 , , ,


0

2

Установил сабж на Debian 9. Кнопка сама по себе работает, выключает ноут без каких-либо диалоговых окон. Но хотелось быть иметь окошко) Obshutdown из терминала запускается, окно есть. Как повесить на кнопку включения не знаю. В /etc/acpi/events в файле powerbtn-acpi-support закомментировал строку action. Она ссылалась на скрипт выключения. Но после нажатия выкл ноут вырубается. Может где-то в другом файле идет управление? Я не разобрался

Ответ на: комментарий от micronekodesu

Получилось, кнопка не активна. Теперь в acpi_list смотрю:

button/power PBTN 00000080 00000000
button/power LNXPWRBN:00 00000080 00000005
в evente
powerbtn-acpi-support
прописал:
event=button[ /]power
action=/etc/acpi/actions/powerbtn.sh
в action
powerbtn.sh
#!/bin/bash
/usr/local/bin/obshutdown
Но реакции на нажатие кнопки нет. Если вручную запустить
powerbtn.sh
, то меню появляется. Где моя ошибка?

achilles_85 ()
Ответ на: комментарий от achilles_85

Скорее всего надо в скрипт написать дисплей, на котором показывать это окошко:

#!/bin/bash
DISPLAY=:0 /usr/local/bin/obshutdown

Если и это не сработает - добавьте в скрипт запись в какой-нибудь файл (типа date >> /tmp/powerbtn.log) и проверьте что он у вас вообще вызывается (то есть посмотрите что при нажатии на кнопку в лог добавляется запись).

micronekodesu ★★ ()
Ответ на: комментарий от micronekodesu

С дисплеем та же ерунда. Второй способ сработал, лог есть. Но в лог 2 раза дата падает, потому как acpi одно нажатие за 2 видит. Вот

button/power PBTN 00000080 00000000
button/power LNXPWRBN:00 00000080 00000005
Может из-за этого не появляется?

achilles_85 ()
Ответ на: комментарий от achilles_85

Тогда два окна бы появлялось (или может там есть проверка что одна копия запущена, тогда окно было бы одно). Это тоже, конечно, надо починить, но после того как заработает.

Добавьте тогда еще и перенаправление stderr\stdout в лог, может там что полезное будет.

micronekodesu ★★ ()
Ответ на: комментарий от micronekodesu

Не знаю на сколько я правильно написал команду

#!/bin/bash
/usr/local/bin/obshutdown
date 1>> /tmp/powerbtn.log 2>&1
В лог падает все тоже самое, что и без перенаправления stderr\stdout
Вт ноя 20 17:55:39 MSK 2018
Вт ноя 20 17:55:39 MSK 2018

achilles_85 ()
Ответ на: комментарий от achilles_85

Ну скорее всего дело в дисплее. Выполните в терминале echo $DISPLAY и результат подставьте в скрипт как делали выше. Если не сработает - попробуйте заменить вызов obshutdown на, например, xclock, или еще что-то графическое.

micronekodesu ★★ ()