Drückt man den Startknopf am Gehäuse eines laufenden PCs, fährt sich dieser unter Debian automatisch herunter. Diese Aktion wird mittels ACPI gesteuert. Standardmäßig wird das Kommando /sbin/shutdown -h -P now "Power button pressed"
ausgeführt. Verwendet man VDR und hat den Rechner über ein ACPI-Wakeup-Skript für einen automatischen Start konfiguriert, um Aufnahmen zu tätigen, wird das Wakeup-Skript bei dieser Methode aber nicht ausgeführt.
Um dies zu ändern, passt man die entsprechende Kommandozeile im ACPI-Skript an, welches bei dieser Aktion ausgeführt wird. Zu finden ist es unter /etc/acpi/powerbtn-acpi-support.sh
:
#!/bin/sh # This script initiates a shutdown when the power putton has been # pressed. Loosely based on the sample that ships with the acpid package. # If the acpid sample is present as a real config file (as it was in earlier # versions of acpid), we skip this script. (Purging and reinstalling acpid # resolves this situation, or simply deleting /etc/acpi/events/powerbtn.) if [ -f /etc/acpi/events/powerbtn -o -f /etc/acpi/events/powerbtn.dpkg-bak ] ; then logger Acpi-support not handling power button, acpid handler exists at /etc/acpi/events/powerbtn or /etc/acpi/events/powerbtn.dpkg-bak. exit 0 fi [ -e /usr/share/acpi-support/policy-funcs ] || exit 0 . /usr/share/acpi-support/policy-funcs if CheckPolicy; then exit 0 fi if [ -x /etc/acpi/powerbtn.sh ] ; then # Compatibility with old config script from acpid package /etc/acpi/powerbtn.sh elif [ -x /etc/acpi/powerbtn.sh.dpkg-bak ] ; then # Compatibility with old config script from acpid package # which is still around because it was changed by the admin /etc/acpi/powerbtn.sh.dpkg-bak else # Normal handling. #/sbin/shutdown -h -P now "Power button pressed" # Use svdrpsend to handle ACPI power event to set ACPI wakeup time in BIOS for next recording logger "Power button pressed. Using \"svdrpsend\" to power off machine." /usr/local/bin/svdrpsend HITK Power fi
Die markierten Zeilen zeigen die Änderungen, die an dem Skript vorgenommen wurden. Das Setzen der Weckzeit erfolgt dabei über VDR beim Herunterfahren des Rechners über ein Shutdown-Skript. Um diesen Vorgang auch beim Drücken des Gehäuseknopfes zu erreichen, bekommt VDR über svdrpsend
das Signal, dass der Power-Knopf der Fernbedienung gedrückt wurde. Das HITK
-Kommando simuliert dabei den Tastendruck auf der Fernbedienung.
Zu beachten ist, dass der Power-Knopf in VDR unterschiedlich benannt sein kann. Um herauszufinden, wie er auf dem aktuellen System heißt, ruft man svdrpsend HITK
(ohne weitere Argumente) in der Shell auf. Anschließend bekommt man eine Auflistung aller in VDR registrierten Fernbedienungstasten.