SYSTEMD-SUSPEND.SERVICE(8)

BEZEICHNUNG
systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-suspend-then-hibernate.service, systemd-sleep - Systemsschlafzustandslogik

ÜBERSICHT

    systemd-suspend.service
    systemd-hibernate.service
    systemd-hybrid-sleep.service
    systemd-suspend-then-hibernate.service
    /usr/lib/systemd/system-sleep

BESCHREIBUNG

systemd-suspend.service ist ein Systemdienst, der von suspend.target hereingezogen und für die tatsächliche Suspendierung zuständig ist. Ähnlich wird systemd-hibernate.service von hibernate.target hereingezogen, um den tatsächlichen Ruhezustand auszuführen. Schließlich wird systemd-hybrid-sleep.service durch hybrid-sleep.target hereingezogen, um den hybriden Ruhezustand mit Systemsuspendierung auszuführen und von suspend-then-hibernate.target hereingezogen, um Systemsuspendierung mit einer Zeitüberschreitung auszuführen, die später den Ruhezustand aktiviert.

Direkt vor dem Eintritt in die Systemsuspendierung und/oder den Systemruhezustand wird systemd-suspend.service (und die anderen erwähnten Units) alle in /usr/lib/systemd/system-sleep/ befindlichen Programme ausführen und ihnen zwei Argumente übergeben. Das erste Argument wird »pre«, das zweite entweder »suspend«, »hibernate«, »hybrid-sleep« oder »suspend-then-hibernate«, abhängig von der ausgewählten Aktion, sein. Es wird eine Umgebungsvariable namens »SYSTEMD_SLEEP_ACTION« gesetzt und enthält die Schlafaktion, die verarbeitet wird. Dies ist hauptsächlich für »suspend-then-hibernate« nützlich, bei dem der Wert »suspend«, »hibernate« oder »suspend-after-failed-hibernate«, falls der Ruhezustand fehlgeschlagen ist, lautet. Direkt nach Verlassen der Systemsuspendierung und/oder des Ruhezustandes werden die gleichen Programme ausgeführt, aber das erste Argument ist jetzt »post«. Alle Programme in diesem Verzeichnis werden parallel ausgeführt und mit der Ausführung der Aktion wird nicht fortgefahren, bis alle Programme sich beendet haben. Beachten Sie, dass user.slice eingefroren wird, während die Programme laufen, daher sollten sie nicht versuchen, mit irgendwelchen Benutzerdiensten zu kommunizieren und Antworten zu erwarten.

Beachten Sie, dass in /usr/lib/systemd/system-sleep/ abgelegte Skripte oder Programme nur für die lokale Benutzung gedacht sind und als Notbehelf betrachtet werden sollten. Falls Anwendungen auf die Systemsuspendierung/den Ruhestand reagieren möchten, sollten sie stattdessen die Unterdrückungssperren[1] verwenden.

Beachten Sie, dass systemd-suspend.service, systemd-hibernate.service systemd-hybrid-sleep.service und systemd-suspend-then-hibernate.service nie direkt ausgeführt werden sollten. Lösen Sie Schlafzustände stattdessen mit systemctl suspend oder systemctl hibernate aus.

Intern wird dieser Dienst eine Zeichenkette der Art »mem« an /sys/power/state ausgeben, um die eigentliche Systemsuspendierung auszulösen. Was genau wohin geschrieben wird, kann im Abschnitt »[Sleep]« der Datei /etc/systemd/sleep.conf oder sleep.conf.d file konfiguriert werden. Siehe systemd-sleep.conf(5).

Beachten Sie, dass diese Dienste standardmäßig user.slice während ihrer Ausführung einfrieren. Dies verhindert die Ausführung irgendwelcher Prozesse in irgendeiner der Benutzersitzungen während das System in den Ruhezustand eintritt oder aus ihm zurückkehrt. Es hindert daher die Hooks in /usr/lib/systemd/system-sleep/ oder in der Tat jeden anderen Prozess an der Kommunikation mit jedem Benutzersitzungsprozess während des Ruhezustandes.

OPTIONEN

systemd-sleep versteht die folgenden Befehle:

-h, --help
    Zeigt einen kurzen Hilfetext an und beendet das Programm.

--version
    Zeigt eine kurze Versionszeichenkette an und beendet das Programm.

suspend, hibernate, suspend-then-hibernate, hybrid-sleep
    System in Suspendierung, in Ruhezustand, in Suspendierung mit anschließendem Ruhezustand oder in hybriden Schlaf bringen.

    Hinzugefügt in Version 203.

SIEHE AUCH

systemd-sleep.conf(5), systemd(1), systemctl(1), systemd.special(7), systemd-halt.service(8)

ANMERKUNGEN

1.  Unterdrückungssperren
    https://systemd.io/INHIBITOR_LOCKS

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.