X

Корректное выключение при нажатии кнопки Power

Домашний сервачок, подключен без мышки, клавиатуры и разумеется монитора. Управляется через putty, чего вполне хватает. Но есть одна незадача, если погасил основной комп, а сервачок нет, то приходится либо включать сново комп с клавиатурой, либо выключать его зажав кнопку питания. Последнее происходило гораздо чаще.


В связи стем что это не есть хорошо, все таки на сервере хранятся мои труды, как настоящие, так и предыдущие, полез в инет искать инфо на предмет настройки этой самой кнопки Power.
Итак:

В /etc/acpi/events/powerbtn нашел такое:

    # /etc/acpi/events/powerbtn  
    # This is called when the user presses the power button and calls  
    # /etc/acpi/powerbtn.sh for further processing.  

    # Optionally you can specify the placeholder %e. It will pass  
    # through the whole kernel event message to the program you've  
    # specified.  

    # We need to react on "button power.*" and "button/power.*" because  
    # of kernel changes.  

    event=button[ /]power  
    action=/etc/acpi/powerbtn.sh

после чего полез редактировать /etc/acpi/powerbtn.sh, т.к. изначально стояла desktop-ная версия, то просто убрал вывод диалога:

    #!/bin/sh  
    # /etc/acpi/powerbtn.sh  
    # Initiates a shutdown when the power putton has been  
    # pressed.  
      
    # Skip if we just in the middle of resuming.  
    test -f /var/lock/acpisleep && exit 0  
      
    # If gnome-power-manager, kded4, dalston-power-applet or xfce4-power-manager  
    # are running, let them handle policy This is effectively the same as  
    # 'acpi-support's '/usr/share/acpi-support/policy-funcs' file.  
      
    #if pidof gnome-power-manager kded4 dalston-power-applet xfce4-power-manager > /dev/null; then  
    #    exit  
    #fi  
      
    # If all else failed, just initiate a plain shutdown.  
    /sbin/shutdown -h now "Power button pressed"

Теперь при нажатии кнопки power, комп успешно тушется. Кстати для вступления действий в силу, перезагружаться не нужно.

--[добавлено 11.11.10]--

Если у Вас Ubuntu сервер и нет каталога /etc/acpi/, то Вам необходимо поставить ACPID, делается это коммандой:

apt-get install acpid

После установки, внесите изменения указанные выше.

 

Категории: Linux Бездна
Тэги: acpi