Power-Button soll XBMC-Shutdown bewirken

  • Ich möchte die /etc/acpi/powerbtn.sh gerne so verändern, dass ein Druck auf den Ausschaltknopf XBMC veranlasst den Rechner herunterzufahren. Ich habe XBMC so eingerichtet, dass es die Aufwachzeit vor dem Herunterfahren in's Bios schreibt. Außerdem lässt sich nach einem XBMC-Shutdown der Rechner per Fernbedienung einschalten.
    Ich habe dazu leider noch keine Beiträge hier gefunden. Daher die Frage: Wie muss ich die Datei ändern?


    Der Shutdown-Befehl für xbmc kann mittels xbmc-send gesendet werden (muss man per Paketmanager nachinstallieren).


    Nur wo schreib ich den genau hin? Hier meine /etc/acpi/powerbtn.sh


  • Auf die Schnelle würde ich sagen, Du musst Zeile 53 deines Skriptes

    /sbin/shutdown -h now "Power button pressed"


    gegen

    xbmc-send --action="XBMC.ShutDown()"


    austauschen.

  • Mich verwirrt halt der Kommentar da drüber:

    Code
    1. # If all else failed, just initiate a plain shutdown.


    Mir scheint, dass das nur die Notlösung ist, wenn das Skript sonst den Shutdown nicht hinkriegt. Nur leider versteh ich gar nicht was das sonst noch macht.
    Das checkt wohl irgendwelche Policys und eventuell parallel laufende Shutdown-Prozeduren.
    Die Frage ist nur, ob das irgendwo in den dem Zeichensalat irgendwie anders noch 'nen Shutdown auslöst.

  • Nur leider versteh ich gar nicht was das sonst noch macht.


    Da kann man Abhilfe schaffen :unsch :
    http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html
    http://www.tldp.org/LDP/abs/html/


    Im wesentlichen sind da Abbruchbedingungen für die Fälle definiert in denen andere Dienste zusätzlich laufen, die auf den Powerbutton reagieren und damit den Shutdown über dieses Skript überflüssig machen würden (steht ja auch im Kommentar).


    Ich würde in Zeile 29 einfach eine Abfrage für XBMC einbauen und den Shutdown-Befehl reinpacken:

    Code
    1. if pidof xbmc.bin > /dev/null; then
    2. /usr/bin/xbmc-send --action="XBMC.ShutDown()"
    3. exit
    4. fi

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)