LINUX.ORG.RU

Война с acpid


0

1

Неполучается сделать suspend при закрытии крышки. s2ram -f работает нормально, ложит, будит - всё работает.
А acpid запускает s2ram -f, ноут ложится спать, открываем крышку, ноут просыпается идет спать опять.
Даже если включить кнопкой (с открытой крышкой), после acpid он все равно циклически засыпает-просыпается. Как починить?

cat /etc/acpi/events/lid
event=button/lid
action=s2ram -f

При открытии крышки тоже приходит событие button/lid. Напишите скрипт, который проверяет свои параметры $1 .. $4 и засыпает только при определённых их значениях, и укажите его в качестве action.

AITap ★★★★★
()
Ответ на: комментарий от AITap
noname@dell:~$ acpi_listen 
button/lid LID 00000080 00000013<- закрыл
button/lid LID 00000080 00000014<- открыл
button/lid LID 00000080 00000015 и т.д.
button/lid LID 00000080 00000016
button/lid LID 00000080 00000017
button/lid LID 00000080 00000018
button/lid LID 00000080 00000019
button/lid LID 00000080 0000001a
button/lid LID 00000080 0000001b
button/lid LID 00000080 0000001c
a_no_no
() автор топика

Можно при закрытии сохранять в файл, например, «1», а при открытии проверять, и, если там «1», то не засывать. Т. е. сделать флаг.

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

Можно проще. Сначала сделать ls flag_file, если пусто - touch flag_file и уснуть. А если такой файл есть (вывод ls не пустой), то не засыпать, но удалить файл.

vurdalak ★★★★★
()

/etc/acpid/events/lid

event=button/lid
action=/usr/local/sbin/suspend.sh

/usr/local/sbin/suspend.sh

#!/bin/sh
grep -q open /proc/acpi/button/lid/LID/state && exit 0
s2ram -f

Готово.

a_no_no
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.