Я хотел, чтобы мои приложения работали, но экран закрывался, когда я закрывал крышку. Я не хотел переходить в спящий режим, поскольку это блокировало мои загрузки и мою музыку. Кроме того, я был достаточно ленив, чтобы отказаться от использования Win kbd> + L kbd> перед закрытием крышки. Все, что я хотел, это закрыть крышку и сразу же закрыть ее. Пожалуйста, не используйте опцию экранной заставки.
Существует довольно длинный путь, чтобы сделать это так, давайте возьмемся за работу.
Важно понять, что эти события будут пойманы процессами, принадлежавшими корню. Фиксация необходима, чтобы позволить корню выполнять процессы в X средах обычного пользователя. Для предоставления доступа к переменным среды доступными для корня:
gedit ~/export_x_info
и вставьте следующий contets
# Export the dbus session address on startup so it can be used by any other environment
sleep 5
touch $HOME/.Xdbus
chmod 600 $HOME/.Xdbus
env | grep DBUS_SESSION_BUS_ADDRESS > $HOME/.Xdbus
echo 'export DBUS_SESSION_BUS_ADDRESS' >> $HOME/.Xdbus
# Export XAUTHORITY value on startup so it can be used by cron
env | grep XAUTHORITY >> $HOME/.Xdbus
echo 'export XAUTHORITY' >> $HOME/.Xdbus
Сохраните и закройтесь. Затем сделайте это исполняемым файлом:
chmod 700 ~/export_x_info
Теперь установите его для выполнения при запуске. В Gnome 2, Система> Предпочтения> Сессии и нажимают Add. В Единице Ubuntu нажмите значок механизма в верхнем правом углу, выберите Программы Запуска и нажмите Add.
Name: X Environment Variables
Command: /home/your_user/export_x_info
Теперь необходимо отредактировать Ваш /etc/acpi/lid.sh
файл, которые ловят крышку открытое и близкое событие
gksudo gedit /etc/acpi/lid.sh
и вставка
/home/your_user/lid_event
сразу после #!/bin/bash
. Сохраните и закройтесь.
Теперь необходимо создать сценарий для близкого события так, чтобы можно было заблокировать экран.
gedit ~/lid_event
и вставьте следующее. Измените user_name со своим именем пользователя
#!/bin/bash
grep closed /proc/acpi/button/lid/LID0/state
if [ $? = 0 ]
then
source /home/user_name/.Xdbus
DISPLAY=:0.0 su user_name -c "gnome-screensaver-command -l"
fi
также проверьте на /proc/acpi/button/lid/LID0/state
файл с помощью Вас файловый менеджер, потому что LID0 может быть LID.
Теперь перезапустите свое использование ACPI
sudo /etc/init.d/acpid restart
Удостоверьтесь, что опция Power Management для закрытой крышки ноутбука установлена ничего не сделать