Shutdown Pressing Power Button

From ArchWiki
Revision as of 14:14, 3 September 2008 by Crox (talk | contribs) (hal starts acpid)
Jump to: navigation, search

Template:I18n links start Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n links end

If you want to shutdown your system by simply pressing the power button, do the following:

Install acpid package, if there is no hal in the DAEMONS array in rc.conf add acpid to it and create a file in /etc/acpi/events/ named power with following content:

# /etc/acpi/events/power
# This is called when the user presses the power button

event=button/power (PWR.||PBTN)

To be able to test it start the acpid daemon:

/etc/rc.d/acpid start

From now on pressing the power button (lightly, not for few seconds) should properly shutdown the system. Template:I18n entry Note that if you have hibernate configured and working you may want to change the last line with:


However, if you're using more sophisticated WM, you should use its own shutdown call, so it'd save its session etc.

To accomplish it in KDE 3, simply change the action to:

action=/opt/kde/bin/dcop --all-users --all-sessions ksmserver ksmserver logout 0 2 0

For KDE 4, dcop is being phased out in favour of dbus, so as well as the above you could also use:

action=/usr/bin/qdbus org.kde.ksmserver /KSMServer logout 0 2 0

Likewise for XFCE4.4 change the action line to:

action=echo POWEROFF | /usr/lib/xfce4/xfsm-shutdown-helper

Note: For a more robust solution [If you are facing frequent WM crashes or working on a sacrificial PC for developing or testing your software...], you should take a look at "/usr/src/linux/Documentation/sysrq.txt", which is a kernel facility for yielding you [the user...] the CPU so that it could be used for any *rescue* work.