Diese Seite beschreibt den Bereitschaftsmodus unter Debian.
Konfiguration des Ruhezustands- und des Bereitschaftsmodus in Debian Lenny
Das Ruhezustand-/Bereitschaftsmodus Untersystem in Debian Lenny ist etwas unintuitiv. Scheinbar werden die Skripte für den Bereitschaftsmodus in /etc/hibernate in Verbindung mit PM-utils benutzt. Es gibt eine sehr gute Beschreibung über die Funktionsweise des Bereitschaftsmodus in Ubuntu:
Das meiste hiervon scheint ebenso für Debian Lenny gelten. Die mit acpi-support verbundenen Dinge sind jedoch Ubuntu-Spezifisch.
Wenn Sie benutzerdefinierte Befehle ausführen müssen, um den PC in den Bereitschafsmodus zu versetzen oder daraus aufzuwecken, sollten Sie ihre Skripte in /etc/pm/sleep.d platzieren. Das Modifizieren der /etc/hibernate*.conf Dateien scheint KEINEN Effekt zu haben. Sie können das unten stehende Skript als Beispiel verwenden. Alternativ können Sie ein bestehendes Skript von /usr/lib/pm-utils/sleep.d/ verwenden und modifizieren.
# /etc/pm/sleep.d/51wireless # # Die Datei /etc/pm/sleep.d ist der Richtige Platz um Ihre eigenen Skripte zu # platzieren. Nichts aus dem Verzeichnis /etc/hibernate/ hat _irgendeinen_ Effekt # (OnResume, RestartServices, UnloadModules etc). Das Skript /etc/init.d/atheros # ist ein einfacher Wrapper um das Modul ath_pci zu entladen case "$1" in hibernate|suspend) /etc/init.d/bluetooth stop /etc/init.d/atheros stop ;; thaw|resume) /etc/init.d/bluetooth start /etc/init.d/atheros start ;; *) exit $NA ;; esac
Debian Lenny scheint standardmäßig uswsusp zu verwenden, aber wenn Ihr Kern Tuxonice (a.k.a suspend2) unterstützt, sollte er dies automatisch stattdessen verwenden.
Uswsusp
uswsusp ist das standardmäßige Tool für den Ruhezustand in DebianEtch. Es benutzt eine bestehende Swap-Partition um den aktuellen Inhalt des Arbeitsspeichers zu sichern (siehe /etc/uswsusp.conf).
Sie sollten s2disk aufrufen um das System in den Bereitschaftsmodus zu versetzen (nicht hibernate, benutzen Sie keinesfalls "echo" nach /proc/acpi/sleep oder /sys/power/disk )
Lesen Sie unbedingt zuerst /usr/share/doc/uswsusp/README.Debian.
hibernate
http://wiki.debian.org/de/Ruhezustand
Debugging hibernation
Kernel testing facility
Seit linux 2.6.25, hat der Kernel eine neue Testmöglichkeit für den Ruhezustand changelog.
Mit der Hilfe des /sys/power/pm_test Attributs, welches mit dem letzten Patch zum Testen des Ruhezustands eingeführt wurde, machen Sie das Testen des Ruhezustands-Codes möglich.
Das Schreiben bestimmter Strins in diese Datei bringt den Code des Bereitschaftsmodus dazu in einem der wie folgt definierten Testmodi zu laufen:
- freezer
- testet das Einfrieren von Prozessen
- devices
- testet das Einfrieren von Prozessen und das Einschläfern von Geräten
- platform
- testet das Einfrieren von Prozessen, das Einschläfern von Geräten und plattformweiter Kontrollmethoden(*)
- processors
- testet das Einfrieren von Prozessen, das Einschläfern von Geräten, plattformweiter Kontrollmethoden(*) und das Deaktivieren von nonboot-CPUs
- core
- testet das Einfrieren von Prozessen, das Einschläfern von Geräten, plattformweiter Kontrollmethoden(*), das Deaktivieren von nonboot-CPUs und das Einschläfern von der Plattform oder von Systemgeräten
*) Die systemweiten Kontrollmethoden sind nur auf ACPI-Systemen verfügbar und werden nur getestet, wenn der Hibernation-Modus auf "platform" gesetzt wird.
Wenn hibernation im üblichen Gebrauch gestartet wird wird der hibernate core seine normalen Operationen bis zu dem Punkt ausführen, der durch den gegeben Testlevel definiert ist. Danach wird er 5 Sekunden warten und dann die Operationen anstoßen, welche nötig sind, um das System zurück in seinen voll-funktionsfähigen Status zurück zu versetzen.
Der Kern der Aussage (für Googler) sind hibernation debug: Waiting for 5 seconds und swsusp debug: Waiting for 5 seconds.