FreeBSD 6.2
Проблема такая нужно записать в лог о том что была нажата кнопка Power на корпусе.
Делал так:
apmd.conf:
apm_event USERSUSPENDREQ {
exec "/etc/apmd_power.sh";
}apmd_power.sh:
#!/bin/sh
scripname=`basename $0`
logger="/usr/bin/logger -t ${scripname}"
/bin/sync && /bin/sync && /bin/sync
sleep 1
$logger -p notice "Button Power has been pressed!"
/sbin/shutdown -p nowНо все равно при нажатие кнопки идет остановка системы и записи в логах нет. В чем не так?
>[оверквотинг удален]
>#!/bin/sh
>scripname=`basename $0`
>logger="/usr/bin/logger -t ${scripname}"
>/bin/sync && /bin/sync && /bin/sync
>sleep 1
>$logger -p notice "Button Power has been pressed!"
>/sbin/shutdown -p now
>
>Но все равно при нажатие кнопки идет остановка системы и записи в
>логах нет. В чем не так?может так:
logger="`/usr/bin/logger -t ${scripname}`"
>[оверквотинг удален]
>>sleep 1
>>$logger -p notice "Button Power has been pressed!"
>>/sbin/shutdown -p now
>>
>>Но все равно при нажатие кнопки идет остановка системы и записи в
>>логах нет. В чем не так?
>
>может так:
>
>logger="`/usr/bin/logger -t ${scripname}`"Не сам скрипт вот так работает, в лог пишет
#!/bin/sh
scripname=`basename $0`
logger="/usr/bin/logger -t ${scripname}"
$logger -p notice "Button Power has been pressed!"думаю тут дело в то что apmd не успеват его обработать и происходит сразу shutdown, если попробовать отловить процесс shutdown, тока вот как это реализовать?
Когда-то делал подобный прибамбас (отлавливал не кнопку, но суть таже)
shutdown переименовывал, а вместо него писал свой скрипт который определял откуда поступила команнда и если мой случай, то команда не выполнялась (выполнялся мой сценарий), в остальных случаях запускался переименнованый файл
>Но все равно при нажатие кнопки идет остановка системы и записи в
>логах нет. В чем не так?Попробуйте посмотреть в сторону ACPI & devd.conf.