Bereitschaft und Ruhezustand

Aus wiki.archlinux.de

Der Ruhezustand (hibernate) und der Bereitschaftszustand (standby / suspend) sind zwei Modi, die den PC teilweise abschalten und dadurch Energie sparen. Im Bereitschaftszustand wird der Arbeitsspeicher noch mit Energie versorgt und ist dadurch nach kurzer Zeit wieder einsatzfähig. Im Ruhezustand wird der Inhalt des Arbeitsspeichers auf die Swap-Partition der Festplatte geschrieben. Damit dauert der Startvorgang länger, es wird jedoch weniger Energie verbraucht. Bei schnellen Rechnern kann jedoch der Unterschied zwischen dem Starten aus dem Ruhezustand und dem regulären Startvorgang kaum ein Unterschied bestehen. Ein Vorteil jedoch besteht darin, dass der Rechner so fortgesetzt wird, wie er in den jeweiligen Modus versetzt wurde.

Hinweis: Beide Zustände können unter bestimmten Hardwarezusammenstellungen Probleme bereiten und nicht richtig funktionieren.

Konfiguration

Bereitschaftszustand

Für den Bereitschaftszustand muss nichts weiter konfiguriert werden.

Ruhezustand

Damit das Aufwachen aus dem Ruhezustand funktioniert, muss dem Kernel mit der Option resume die Swap Partition im Bootloader übergeben werden. Bei GRUB kann dies dauerhaft eingerichtet werden, indem zuerst die Datei /etc/default/grub folgendermaßen editiert wird: zu der Zeile GRUB_CMDLINE_LINUX_DEFAULT wird resume zusammen mit der Swap Partition hinzugefügt. z.B. mit Label:

GRUB_CMDLINE_LINUX_DEFAULT="quiet resume=LABEL=swap"

Im Anschluss wird # grub-mkconfig -o /boot/grub/grub.cfg aufgerufen, um eine neue grub.cfg zu erstellen, die die Änderungen enthält.

Zudem muss in der Konfigurationsdatei /etc/mkinitcpio.conf im Abschnitt HOOK resume hinzugefügt werden

HOOKS="base udev autodetect ide sata resume filesystems"

und das Initramfs-Image mit

mkinitcpio -p linux

neu erstellt werden.


Anwendung

Meist bringt die Desktopumgebung die Möglichkeit mit sich, mit der Maus in die Zustände zu versetzen. Ist das nicht der Fall oder gibt es keine grafische Benutzeroberfläche, dann hilft systemd weiter:

systemctl hybrid-sleep # versetzt den Rechner in Bereitschaft
systemctl hibernate    # versetzt den Rechner in den Ruhezustand

Problemlösungen

Ruhezustand ohne Login-Manager

Hat man keinen Login-Manager (kdm, gdm, slim ...) installiert und startet die grafische Oberfläche über einen Eintrag in der .xinitrc mit startx, kann es vorkommen, dass der Rechner nicht in den Ruhezustand geht. Um das Problem zu lösen kann es helfen den Starteintrag in der .xinitrc von

 exec startkde

in

 exec ck-launch-session startkde

zu ändern.

Dies muss natürlich für die jeweilige Desktopumgebung angepasst werden.