Несколько дней назад я обновил свой нетбук eMachines (Acer) с Lubuntu 15.10 до 16.04LTS. Все работает нормально, кроме того, что кнопка питания больше не вызывает меню выключения. Я попытался переключить функцию кнопки питания в параметрах питания на обычное отключение, а затем вернуться в меню, но он все равно не реагировал.
Я наконец стал достаточно раздраженным этой проблемой, что я провел несколько часов, пытаясь зафиксировать ее. Много сообщений здесь на askubuntu.com было полезно, и надо надеяться это поможет кому-то еще.
Вот то, что я закончил тем, что делал, чтобы заставить это работать...
Во-первых, я установил действие кнопки питания в предпочтениях диспетчера электропитания, Чтобы ничего "не Сделать", поскольку я не хотел, чтобы это вмешалось во что-либо (вспомните, что кнопка иногда делала что-то).
Затем, я установил ACPI:
sudo apt-get update
sudo apt-get install acpi acpid
Затем я создал /etc/acpi/powerbtn.sh
содержа следующее:
# If LXDE is running execute lxsession-logout.
_LXSESSION_PID=`pidof lxsession`
if [ ! -n "$_LXSESSION_PID" ]
then
/sbin/shutdown -h now "Power button pressed"
elif [ "$2" = "PBTN" ]
then
export _LXSESSION_PID
export DISPLAY=:0
export XUSER=myUserName ## Put your actual user ID here! ##
export XAUTHORITY=/home/$XUSER/.Xauthority
logger "Launching lxsession-logout"
lxsession-logout
fi
Затем, я создал /etc/acpi/events/powerbtn
содержа следующее:
event=button/power
action=/etc/acpi/powerbtn.sh %e
Наконец, я перезапустил демона ACPI:
/etc/init.d/acpid restart
Всего несколько дополнительных примечаний:
powerbtn.sh
или events/powerbtn
файлы уже были бы там; они не были.%e
в действии события, и elif [ "$2" = "PBTN" ]
в powerbtn.sh
сценарий, были необходимы, потому что нажатие клавиши инициировало событие дважды, один с ключевым названием PBTN
, и однажды с LNXPWRBN:00
. Без этого диалоговое окно открылось снова, если я отменил в первый раз.