SysRQ: Unterschied zwischen den Versionen
Boenki (Diskussion | Beiträge) K typo |
Dirk (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
| (15 dazwischenliegende Versionen von 9 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
Jeder wird schon Mal erlebt haben, obwohl Linux sehr stabil läuft, dass sich das System vollkommen aufgehängt hat. All zu voreilig wird die Reset-Taste gedrückt, und Datenverlust riskiert. | |||
Es gibt eine Lösung, die es erlaubt, das System sauber herunterzufahren. Im Kernel wird dafür die Option SysRQ verwendet. SysRQ ist eine "magische" Tastenkonfiguration, welche weiter unten näher beschrieben wird. | |||
Zunächst muss SysRQ aktiviert werden. Dazu ist folgender Befehl als root auszuführen: | |||
echo "1" > /proc/sys/kernel/sysrq | echo "1" > /proc/sys/kernel/sysrq | ||
Um SysRQ dauerhaft zu aktivieren, muss die Datei {{ic|/etc/sysctl.d/99-sysctl.conf}} editiert werden: | |||
# Enable the magic-sysrq key | # Enable the magic-sysrq key | ||
kernel.sysrq = 1 | kernel.sysrq = 1 | ||
SysRQ ist auf einer | SysRQ ist auf einer Standard-Tastatur als {{taste|Druck/S-Abf}} zu finden. | ||
{| | ''Hinweis'': Auf Laptops oder Tastaturen mit Umschalttaste für Funktionstasten - {{taste|Fn}} - ist es notwendig diese Taste auch mit zu verwenden. Also: {{taste|Fn}} + {{taste|Alt}} + {{taste|Druck/S-Abf}} + Aktionstaste. | ||
{| class="wikitable" | |||
|- | |- | ||
|'''Tastenkombinationen''' | |'''Tastenkombinationen''' | ||
|'''Bedeutung''' | |'''Bedeutung''' | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|R}} | ||
|nimmt | |nimmt X die Kontrolle über Maus und Tastatur (z. B. wenn X abgestürzt ist) | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|O}} | ||
|System über APM | |System über APM niedergemacht | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|S}} | ||
|schreibt die Daten aus dem Disk-Cache auf die Festplatte, es wird ein Sync durchgeführt | |schreibt die Daten aus dem Disk-Cache auf die Festplatte, es wird ein Sync durchgeführt | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|U}} | ||
|umountet alle gemounteten Dateisysteme readonly | |umountet alle gemounteten Dateisysteme readonly | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|B}} | ||
|reboot | |reboot | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|M}} | ||
|gibt Infos über den Speicher in der Konsole aus | |gibt Infos über den Speicher in der Konsole aus | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|K}} | ||
|killt Prozesse auf dem Terminal | |killt Prozesse auf dem Terminal | ||
|- | |- | ||
|Alt- | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|E}} | ||
|sendet ein SIGTERM an alle Prozesse, außer Init | |sendet ein SIGTERM an alle Prozesse, außer Init | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|I}} | ||
|sendet SIGKILL | |sendet SIGKILL an alle Prozesse, außer Init | ||
|- | |- | ||
|Alt+ | |{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|L}} | ||
|sendet SIGKILL | |sendet SIGKILL an alle Prozesse, inklusive Init | ||
|} | |} | ||
Um ein System | Um ein System „sauber“ herunterzufahren, kann man wie folgt vorgehen. | ||
*{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|R}} (Setzt die Tastatur in raw-mode) | |||
*{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|E}} (Prozesse werden sauber beendet (SIGTERM)) | |||
*{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|I}} (Für die widerspenstigen Prozesse, die sich nicht beenden lassen wollen (SIGKILL)) | |||
*{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|S}} (Daten aus dem Disk-Cache werden geschrieben (sync)) | |||
*{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|U}} (Hängt alle gemounteten Dateisysteme aus (umount)) | |||
*{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|B}} (Veranlasst einen Neustart (reboot)) | |||
Nach dem Auslösen von {{ic|e}} sollte man den Prozessen ein paar Sekunden Zeit lassen, der Aufforderung, sich sauber zu beenden, nachzukommen. | |||
Zu dieser Sequenz wird auch gerne die englische Eselsbrücke „'''R'''aising '''E'''lephants '''I'''s '''S'''o '''U'''tterly '''B'''oring“ („Die Aufzucht von Elefanten ist absolut langweilig.“) empfohlen. Ein solches Vorgehen wird daher oft mit der Bezeichnung „raising the elephant“ umschrieben. | |||
== Austesten == | |||
Da dass Neustarten mittels SysRQ doch einige "Verrenkungen der Hände" bedarf sollte man das Vorgehen mal austesten in einer Situation, die eben nicht ein nicht mehr reagierendes System ist. | |||
* | Dazu am besten alle Anwendungen schließen. Ein Terminal öffnen und die Kernel-Ringbuffer-Meldungen anzeigen lassen: | ||
# dmesg -w # oder sudo dmesg -w als User | |||
Wir beginnen mit "R" in der Sequenz "REISUB". Bei korrekter Verwendung der oben angeführten Tastenkombination für "Setzt die Tastatur in raw-mode" erscheint in der dmesg-Ausgabe: | |||
sysrq: Keyboard mode set to system default | |||
Es müssen '''alle''' Tasten gleichzeitig gedrückt sein, also: | |||
{{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|R}} | |||
oder mit Fn-Taste: | |||
{{taste|Fn}} + {{taste|Alt}} + {{taste|Druck/S-Abf}} + {{taste|R}} | |||
Das gleiche gilt für den Rest der "REISUB"-Sequenz. | |||
* nach ''E'' und/oder ''I'' beenden sich alle laufenden Prozesse, also auch das laufende dmesg-Terminal und der Windowmanager. Man landet auf einer TTY-Konsole. | |||
* nach ''S'' und ''U'' erscheinen entsprechende sysrq-Meldungen auf dem aktiven TTY-Terminal wie "Emergency Sync" und "Emergency Remount R/O". Danach ist zwingend ein Reboot notwendig, also: | |||
* ''B'' rebootet das System dann. | |||
== Weblinks == | |||
* [https://fedoraproject.org/wiki/QA/Sysrq SysRq-Informationen vom Fedora Project] {{sprache|en}} | |||
[[Kategorie:Tipps und Tricks]] | [[Kategorie:Tipps und Tricks]] | ||
[[en:Keyboard_shortcuts#Kernel_(SysRq)]] | |||
Aktuelle Version vom 12. November 2025, 06:39 Uhr
Jeder wird schon Mal erlebt haben, obwohl Linux sehr stabil läuft, dass sich das System vollkommen aufgehängt hat. All zu voreilig wird die Reset-Taste gedrückt, und Datenverlust riskiert.
Es gibt eine Lösung, die es erlaubt, das System sauber herunterzufahren. Im Kernel wird dafür die Option SysRQ verwendet. SysRQ ist eine "magische" Tastenkonfiguration, welche weiter unten näher beschrieben wird.
Zunächst muss SysRQ aktiviert werden. Dazu ist folgender Befehl als root auszuführen:
echo "1" > /proc/sys/kernel/sysrq
Um SysRQ dauerhaft zu aktivieren, muss die Datei /etc/sysctl.d/99-sysctl.conf editiert werden:
# Enable the magic-sysrq key kernel.sysrq = 1
SysRQ ist auf einer Standard-Tastatur als Druck/S-Abf zu finden.
Hinweis: Auf Laptops oder Tastaturen mit Umschalttaste für Funktionstasten - Fn - ist es notwendig diese Taste auch mit zu verwenden. Also: Fn + Alt + Druck/S-Abf + Aktionstaste.
| Tastenkombinationen | Bedeutung |
| Alt + Druck/S-Abf + R | nimmt X die Kontrolle über Maus und Tastatur (z. B. wenn X abgestürzt ist) |
| Alt + Druck/S-Abf + O | System über APM niedergemacht |
| Alt + Druck/S-Abf + S | schreibt die Daten aus dem Disk-Cache auf die Festplatte, es wird ein Sync durchgeführt |
| Alt + Druck/S-Abf + U | umountet alle gemounteten Dateisysteme readonly |
| Alt + Druck/S-Abf + B | reboot |
| Alt + Druck/S-Abf + M | gibt Infos über den Speicher in der Konsole aus |
| Alt + Druck/S-Abf + K | killt Prozesse auf dem Terminal |
| Alt + Druck/S-Abf + E | sendet ein SIGTERM an alle Prozesse, außer Init |
| Alt + Druck/S-Abf + I | sendet SIGKILL an alle Prozesse, außer Init |
| Alt + Druck/S-Abf + L | sendet SIGKILL an alle Prozesse, inklusive Init |
Um ein System „sauber“ herunterzufahren, kann man wie folgt vorgehen.
- Alt + Druck/S-Abf + R (Setzt die Tastatur in raw-mode)
- Alt + Druck/S-Abf + E (Prozesse werden sauber beendet (SIGTERM))
- Alt + Druck/S-Abf + I (Für die widerspenstigen Prozesse, die sich nicht beenden lassen wollen (SIGKILL))
- Alt + Druck/S-Abf + S (Daten aus dem Disk-Cache werden geschrieben (sync))
- Alt + Druck/S-Abf + U (Hängt alle gemounteten Dateisysteme aus (umount))
- Alt + Druck/S-Abf + B (Veranlasst einen Neustart (reboot))
Nach dem Auslösen von e sollte man den Prozessen ein paar Sekunden Zeit lassen, der Aufforderung, sich sauber zu beenden, nachzukommen.
Zu dieser Sequenz wird auch gerne die englische Eselsbrücke „Raising Elephants Is So Utterly Boring“ („Die Aufzucht von Elefanten ist absolut langweilig.“) empfohlen. Ein solches Vorgehen wird daher oft mit der Bezeichnung „raising the elephant“ umschrieben.
Austesten
Da dass Neustarten mittels SysRQ doch einige "Verrenkungen der Hände" bedarf sollte man das Vorgehen mal austesten in einer Situation, die eben nicht ein nicht mehr reagierendes System ist.
Dazu am besten alle Anwendungen schließen. Ein Terminal öffnen und die Kernel-Ringbuffer-Meldungen anzeigen lassen:
# dmesg -w # oder sudo dmesg -w als User
Wir beginnen mit "R" in der Sequenz "REISUB". Bei korrekter Verwendung der oben angeführten Tastenkombination für "Setzt die Tastatur in raw-mode" erscheint in der dmesg-Ausgabe:
sysrq: Keyboard mode set to system default
Es müssen alle Tasten gleichzeitig gedrückt sein, also:
Alt + Druck/S-Abf + R
oder mit Fn-Taste:
Fn + Alt + Druck/S-Abf + R
Das gleiche gilt für den Rest der "REISUB"-Sequenz.
- nach E und/oder I beenden sich alle laufenden Prozesse, also auch das laufende dmesg-Terminal und der Windowmanager. Man landet auf einer TTY-Konsole.
- nach S und U erscheinen entsprechende sysrq-Meldungen auf dem aktiven TTY-Terminal wie "Emergency Sync" und "Emergency Remount R/O". Danach ist zwingend ein Reboot notwendig, also:
- B rebootet das System dann.