14.8 Magic SysRq
Vielleicht hat sich Linux bei Ihnen schon einmal aufgehängt und ließ sich nicht mehr ansprechen, geschweige denn herunterfahren. Für diesen Fall haben wir eine sehr gute Nachricht für Sie: Dass sich Linux wirklich überhaupt nicht mehr steuern lässt, ist ein äußerst seltener Ausnahmefall, da fast immer ein (relativ unbekanntes) Rettungsmanöver funktioniert.
Es funktioniert folgendermaßen: Die SysRq-Taste [Fn. SysRq ist die Abkürzung für System Request.] wird in Kombination mit einer weiteren Taste gedrückt, um dem Kernel eine Direktanweisung zu geben. [Fn. Die Kernel-Dokumentation bezeichnet dies als »magische Tastenkombination«.] Wenn Sie an einem üblichen x86/x64-Rechner oder an einem Rechner mit PPC-Prozessor arbeiten, dann werden Sie sich sicherlich fragen, wo denn dort eine solche Taste sein soll? Diese Taste gibt es auf solchen Systemen nicht, verwenden Sie hier stattdessen die Tastenkombination Alt + Druck.
Alternativ (und das funktioniert immer, solange man noch Befehle in der Konsole eingeben kann) kann man den jeweiligen Buchstaben der Tastenkombination auch in die Datei /proc/sysrq-trigger schreiben:
Listing 14.108 SysRq via /proc/sysrq-trigger
# echo h > /proc/sysrq-trigger
14.8.1 Aktivierung von SysRq
Bevor wir die eigentlichen Tastenkombinationen vorstellen, soll noch gezeigt werden, wie man herausfindet, ob SysRq aktiviert ist, und wie man es im Kernel aktivieren kann.
Kernel- Konfiguration
Eine Untersuchung der Kernel-Konfiguration auf die Variable CONFIG_MAGIC_SYSRQ hin (etwa mit grep CONFIG_MAGIC_SYSRQ .config) zeigt, ob die Unterstützung für SysRq einkompiliert wurde. Falls dem nicht so ist, kann man dies durch Hinzufügen dieser Option jederzeit ändern.
Ist SysRq aktiviert?
Über die Datei /proc/sys/kernel/sysrq lässt sich steuern, ob (und wenn ja, wie), SysRq-Support aktiviert werden soll. Trägt man eine »0« in diese Datei ein, wird SysRq deaktiviert. Eine »1« bewirkt die Aktivierung der gesamten SysRq-Funktionalität. Ein Wert größer 1 wird als Bitmaske gewertet, um auf diese Weise nur bestimmte Funktionen zu aktivieren. Sie finden die entsprechenden Werte in der Datei Documentation/sysrq.txt Ihrer Kernel-Version.
Listing 14.109 SysRq vollständig aktivieren
# echo 1 >/proc/sys/kernel/sysrq
14.8.2 Tastenkombinationen
Im Folgenden sind die wichtigsten SysRq-Tastenkombinationen für die zum Zeitpunkt des Schreibens aktuelle Kernel-Version aufgelistet. Sie finden die zu Ihrer Kernel-Version passenden Tastenkombinationen in der Datei Documentation/sysrq.txt des Kernel-Quellcodes.
- SysRq+b: Sofortiger Neustart des Systems (ohne Synchronisation der Speichermedien!)
- SysRq+e: Sendet SIGTERM an alle Prozesse außer init.
- SysRq+h: Gibt eine Hilfe-Information auf der Konsole aus. [Fn. Der Dokumentation ist zu entnehmen, dass jeder nicht weiter festgelegte Buchstabe ebenfalls zur Ausgabe der Hilfe-Informationen führt. Allerdings sei der Buchstabe »h« in diesem Zusammenhang leichter zu merken.]
- SysRq+i: Sendet SIGKILL an alle Prozesse außer init.
- SysRq+k: Beendet alle Prozesse der aktuellen Konsole.
- SysRq+m: Führt einen Memory-Dump auf der Konsole aus.
- SysRq+o: Fährt das System herunter und schaltet es (falls möglich) aus.
- SysRq+p: Führt einen Dump (eine Ausgabe) der aktuellen Registerinhalte und Flags auf der Konsole aus.
- SysRq+r: Schaltet den RAW-Mode des Tastaturtreibers ab und wechselt in den XLATE-Modus. [Fn. X11 und auch svgalib-Programme ändern den Keyboard-Modus. Stürzen diese ab, so bleibt die Tastaur unter Umständen im RAW-Modus, was sich mit SysRq+r lösen lässt.]
- SysRq+s: Synchronisiert alle gemounteten Dateisysteme.
- SysRq+t: Führt einen Dump der Tasks auf der Konsole aus.
- SysRq+u: Mountet alle Dateisysteme erneut im Read-only-Modus.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.