Wie führe ich Befehle beim Anhalten / Zurückkehren vom Anhalten aus?

9

Ich hänge meinen Laptop (pm-suspend) oft und manchmal meinen Desktop (pm-suspend-hybrid) ziemlich oft an. Ich benutze das neueste Ubuntu (13.10, frech).

Gibt es eine Möglichkeit, einen Befehl auszuführen, wenn ich in Suspend gehe oder unmittelbar nachdem ich aus Suspend herausgekommen bin? Ich möchte alle offenen SSH-Ausgangsverbindungen beenden und die Offline-Karte beenden, da das Zeitlimit für diese eher ärgerlich ist. Ideen?

Frew Schmidt
quelle

Antworten:

10

Von der Manpage pm-action(8):

/etc/pm/sleep.d, /usr/lib/pm-utils/sleep.d
     Programs in these directories (called hooks) are combined
     and executed in C sort order before suspend and hibernate
     with as argument ´suspend´ or ´hibernate´. Afterwards they
     are called in reverse order with argument ´resume´ and
     ´thaw´ respectively. If both directories contain a similar
     named file, the one in /etc/pm/sleep.d will get preference.
     It is possible to disable a hook in the distribution
     directory by putting a non-executable file in
     /etc/pm/sleep.d, or by adding it to the HOOK_BLACKLIST
     configuration variable.

Sie können also einfach ein Shell-Skript wie folgt einfügen:

#!/bin/bash

case "$1" in
suspend|hibernate)
    actions to
    take
    on suspend
    or hibernate
    ;;
resume|thaw)
    other actions
    to trigger
    on resume
    ;;
esac

in zB 99-myhooks.shund machen es ausführbar.

Übrigens können Sie veraltete SSH-Verbindungen beenden, indem Sie Enter~.Enteran der SSH-Sitzung teilnehmen.

Andreas Wiese
quelle
Dies ist offensichtlich vorsystemiert
MountainX