On Wed, 08.04.2009 14:01:39 , Тихон Тарнавский wrote: > On Mon, 30.03.2009 17:55:32 , Тихон Тарнавский wrote: > > On Mon, 30.03.2009 18:13:00 , Alexander GQ Gerasiov wrote: > > > Mon, 30 Mar 2009 14:20:55 +0300 > > > Тихон Тарнавский <[email protected]> wrote: > > > > > > > Создал скрипт из одной строчки (echo mem >/sys/power/state), прописал > > > > его в /etc/acpi/events/lidbtn. При закрытии крышки скрипт отрабатывает > > > > дважды, т.е. вот с этой командой ноут засыпает, а после включения > > > > засыпает ещё рах -- включается лишь со второго раза. Это точно именно > > > > этот скрипт запускается два раза: проверял, заменив строку на > > > > echo 1>>/home/t/tmp/tmp. И запускается точно оба раза из одного и того > > > > же места: больше нигде в /etc/acpi/ он не упоминается, и если из > > > > lidbtn убрать, засыпания не происходит. > > > > > > > > Прошу помочь разобраться, где корень проблемы; или хотя бы подсказать, > > > > как проще её обойти. Спасибо. > > > Для начала проверить, что генерится одно событие при помощи > > > acpi_listen, Затем проверить в логах acpid что он пишет. > > В лог я уже смотрел -- он пустой. События генетирся таки два. Но я был > > уверен, что это оттого, что lidbtn ведь отвечает _и_ за закрытие, _и_ > > за открытие крышки; т.е. нажал-отпустил кнопку -- вот и есть два > > события. А в случае с засыпанием второе событие по идее создаваться не > > должно, т.к. в момент открытия крышки ноут спит. Проверил: написал в > > тестовом варианте date вместо echo 1 -- таки да, вывод происходит в > > момент нажания кнопки и в момент отпускания. А в варианте с засыпанием > > хотя второе событие создаваться не должно, но оно всё же создаётся; > > проверил так: нажал кнопку пальцем и включил не отпуская -- всё > > отработало как надо, а когда отпустил -- тогда уже выключилось ещё > > раз. Видимо, в момент просыпания сверяется состояние кнопки -- и, если > > оно изменилось, всё же создаётся ещё одно событие. Получается, надо > > либо всё же читать /proc/acpi/button/lid/*/state, либо, как написал > > Иван, обходить путём контроля чётности. И действительно, оба варианта > > работают. Понятно, что первый -- более правильный. Его и оставил. > > Спасибо за наводку. > Странно. Всё это время ноут усыплял (то на диск, то в память). Сейчас > потребовалось перезагрузиться -- после перезагрузки на закрытие крышки > вообще перестала система реагировать: даже acpi_listen молчит. С > момента последнего перезапуска acpid ничего не обновлялось. Ядро не > обновлялось с момента последней перезагрузки. В чём может быть > проблема?.. Проверил несколько раз: проблема возникает после перезагрузки или выключения и исчезает после первого же засыпания на диск. Т.е. ничего, похоже, и не менялось -- так всё и было изначально. В чём корень проблемы, так и не понял.
-- С уважением, Тихон Тарнавский. http://linuxforum.ru http://posix.ru -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

