Gibt es eine Möglichkeit, ein Benutzerskript bei Suspend / Resume in KDE4 auszuführen?

2252
Flimzy

Ich habe den Wunsch, ein Skript als angemeldeter Benutzer unmittelbar vor einer Ruhezustandsoperation (Suspend to Disk) und unmittelbar nach einem Lebenslauf mit KDE4 auszuführen.

Ich weiß, dass ich ein Skript einfügen kann /etc/pm/sleep.d, das dies tut, aber ein solches Skript muss nicht interaktiv sein und wird als root ausgeführt.

Dieses Skript muss als Benutzer ausgeführt werden, der bei KDE angemeldet ist, und das Post-Resume-Skript wäre idealerweise interaktiv.

Ich kann sehen, wo ich in KDE ein Verdächtiges Skript ausführen kann, aber es ist unvollständig:

Systemeinstellungen -> Energieverwaltung -> Erweiterte Einstellungen -> Benachrichtigungen konfigurieren

Dadurch kann ich einen Befehl angeben, der beim Fortsetzen ausgeführt werden soll.

  1. Es scheint nicht zwischen Suspend to RAM und Suspend to Disk zu unterscheiden (alleine, kein Deal Breaker), aber ich muss meinen Befehl nur auf Suspend-to-Disk ausführen.
  2. Es hat keine Möglichkeit, ein Skript für den Lebenslauf auszuführen, was eigentlich der wichtigste Teil ist, den ich brauche.

Letztendlich versuche ich, meine Windows-Partition im Ruhezustand automatisch aufzuheben, sodass das Dateisystem beim Booten in Windows konsistent ist. Dies geschieht am besten als Benutzer und mit Interaktion, da die Partition mit TrueCrypt verschlüsselt ist und ich die Passphrase nach dem Fortsetzen lieber eingebe, als dass sie im Dateisystem gespeichert ist.

Ich bin mir bewusst, dass ich viel davon automatisieren kann, wenn ich als root und nicht interaktiv laufen möchte, also schlagen Sie diese nicht als Alternativen vor. Ich kann das am Ende tun, aber darum geht es in dieser Frage nicht.

2

1 Antwort auf die Frage

0
GioMac

Nur ähnliches, was ich gefunden habe, sind Haken auf niedrigerer Ebene, die von pmund systemdHaken bereitgestellt werden :

https://wiki.archlinux.org/index.php/pm-utils

https://wiki.archlinux.org/index.php/Power_Management#Hooks_in_.2Fusr.2Flib.2Fsystemd.2Fsystem-sleep