Magic SysRequest key: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
= Magic SysRQ =
= Magic SysRQ =
Obwohl Linux sehr stabil ist, können in Ausnahmefällen [https://de.wikipedia.org/wiki/Kernel_Panic Kernel Panics] auftreten.
* Manchmal stoppt auch nur der [https://wiki.ubuntuusers.de/XServer/ XServer], der für die grafische Oberfläche verantwortlich ist.
* Dann ist unter Umständen nicht mal der Wechsel in eine [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Konsole] zur Reparatur möglich.


Obwohl Linux sehr stabil ist, können in Ausnahmefällen [https://de.wikipedia.org/wiki/Kernel_Panic Kernel Panics] auftreten. Manchmal stoppt auch nur der [https://wiki.ubuntuusers.de/XServer/ XServer], der für die grafische Oberfläche verantwortlich ist. Dann ist unter Umständen nicht mal der Wechsel in eine [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Konsole] zur Reparatur möglich.
In einem solchem Moment kann natürlich der Reset-Taster gedrückt oder der Rechner "hart" ausgeschaltet werden – mit dem immer vorhandenen Risiko von Datenverlusten.
* Notwendig ist dies aber nicht, da es Möglichkeiten gibt, das System entweder sauber herunterzufahren oder weitere Maßnahmen zu ergreifen, um die Ursache des Problems zu finden.
* Dazu gibt es eine Funktion des Kernels, die sich "SysRequest key" nennt, auch als [https://de.wikipedia.org/wiki/Magische_S-Abf-Taste Magische S-Abf-Taste] bekannt.


In einem solchem Moment kann natürlich der Reset-Taster gedrückt oder der Rechner "hart" ausgeschaltet werden – mit dem immer vorhandenen Risiko von Datenverlusten. Notwendig ist dies aber nicht, da es Möglichkeiten gibt, das System entweder sauber herunterzufahren oder weitere Maßnahmen zu ergreifen, um die Ursache des Problems zu finden. Dazu gibt es eine Funktion des Kernels, die sich "SysRequest key" nennt, auch als [https://de.wikipedia.org/wiki/Magische_S-Abf-Taste Magische S-Abf-Taste] bekannt.
Die SysRq-Taste befindet sich auf der deutschen Tastatur als Zweitbelegung von Druck .  
 
* Je nach Tastatur muss man zum Erreichen von "S-Abf" zuerst Alt gedrückt halten: praktisch also Alt + Druck (auf schweizerischen und englischsprachigen Tastaturen jedoch Alt Gr + die Taste "SysRq").  
Die SysRq-Taste befindet sich auf der deutschen Tastatur als Zweitbelegung von Druck . Je nach Tastatur muss man zum Erreichen von "S-Abf" zuerst Alt gedrückt halten: praktisch also Alt + Druck (auf schweizerischen und englischsprachigen Tastaturen jedoch Alt Gr + die Taste "SysRq"). Bei Notebooks ist teilweise auch die Kombination mit Fn erforderlich.
* Bei Notebooks ist teilweise auch die Kombination mit Fn erforderlich.
 
=== Hinweis ===


'''Hinweis'''
* Dell Vostro Laptops: Erst ⇩ num drücken – dann leuchtet das blaue LED auf – und danach Fn + Alt + Druck +"Buchstabe" drücken.
* Dell Vostro Laptops: Erst ⇩ num drücken – dann leuchtet das blaue LED auf – und danach Fn + Alt + Druck +"Buchstabe" drücken.
* einige Logitech-Tastaturen (z.B. K300): Erst Fn (Taste in rot) drücken, dann leuchten oben die LED's in kräftiger, oranger Farbe auf und danach Alt + Druck (die Druck-Taste ist die Pos1 -Taste) +"Buchstabe" drücken.
* einige Logitech-Tastaturen (zum Beispiel K300): Erst Fn (Taste in rot) drücken, dann leuchten oben die LED's in kräftiger, oranger Farbe auf und danach Alt + Druck (die Druck-Taste ist die Pos1 -Taste) +"Buchstabe" drücken.
* Workarounds, wie ⇩ num zuerst zu aktivieren oder Alt Gr anstelle von Alt zu verwenden, sind offenbar bei vielen Laptops nötig.
* Workarounds, wie ⇩ num zuerst zu aktivieren oder Alt Gr anstelle von Alt zu verwenden, sind offenbar bei vielen Laptops nötig.
* Ebenso kann es bei Notebooks vorkommen, dass die Tastenkombination auf der integrierten, nicht jedoch auf einer extern angeschlossenen Tastatur funktioniert.
* Ebenso kann es bei Notebooks vorkommen, dass die Tastenkombination auf der integrierten, nicht jedoch auf einer extern angeschlossenen Tastatur funktioniert.
* Manchmal funktionieren nur Teile der Magic SysRQ-Kette nicht, z. B. der letzte (B) für den Reboot. In diesem Fall kann der Rechner durch kurzes Drücken des An-/Ausschalters neu gestartet werden.
* Manchmal funktionieren nur Teile der Magic SysRQ-Kette nicht, zum Beispiel der letzte (B) für den Reboot.  
 
* In diesem Fall kann der Rechner durch kurzes Drücken des An-/Ausschalters neu gestartet werden.
 


Der gewünschte Befehl wird erteilt, indem auf der Tastatur dann noch zusätzlich der entsprechenden Buchstaben gedrückt wird. Die für den entsprechenden Befehl notwendige Taste kann der folgenden Tabelle entnommen werden.
Der gewünschte Befehl wird erteilt, indem auf der Tastatur dann noch zusätzlich der entsprechenden Buchstaben gedrückt wird.  
* Die für den entsprechenden Befehl notwendige Taste kann der folgenden Tabelle entnommen werden.


== Anwenden ==
== Anwenden ==
 
Die meisten Tastenkombinationen werden oft in einer bestimmten Reihenfolge ausgeführt, um eine bestimmte Aktion auszuführen.  
Die meisten Tastenkombinationen werden oft in einer bestimmten Reihenfolge ausgeführt, um eine bestimmte Aktion auszuführen. Für solche Sequenzen haben sich mittlerweile verschiedene Merksätze gebildet. Die häufigste Sequenz wird vermutlich ein Notfall-Neustart sein; hierfür wird die ganze Zeit Alt + Druck gedrückt gehalten und nacheinander die Tasten R + E + I + S + U + B betätigt. Die dazu benötigte Reihenfolge lässt sich mit folgendem Satz merken:
* Für solche Sequenzen haben sich mittlerweile verschiedene Merksätze gebildet.  
* Die häufigste Sequenz wird vermutlich ein Notfall-Neustart sein; hierfür wird die ganze Zeit Alt + Druck gedrückt gehalten und nacheinander die Tasten R + E + I + S + U + B betätigt.  
* Die dazu benötigte Reihenfolge lässt sich mit folgendem Satz merken:
* ''"'''R'''eboot '''E'''ven '''I'''f '''S'''ystem '''U'''tterly '''B'''roken"'' oder
* ''"'''R'''eboot '''E'''ven '''I'''f '''S'''ystem '''U'''tterly '''B'''roken"'' oder
* ''"'''R'''ichtig '''E'''inparken '''I'''st '''S'''o '''U'''nglaublich '''B'''anal"''
* ''"'''R'''ichtig '''E'''inparken '''I'''st '''S'''o '''U'''nglaublich '''B'''anal"''
* rückwärts: "'''busier'''", (vom engl. "busy", d.h. beschäftigt oder ausgelastet)
* rückwärts: "'''busier'''", (vom engl. "busy", das heißt, beschäftigt oder ausgelastet)


Jeweils der erste Buchstabe eines Wortes steht für die folgende SysRQ-Funktion:
Jeweils der erste Buchstabe eines Wortes steht für die folgende SysRQ-Funktion:
Zeile 34: Zeile 40:




{| style="border-spacing:0;width:17cm;"
{|  
|- style="border:none;padding:0.049cm;"
|-  
| colspan="4" | Sicheres Reboot  
| colspan="4" | Sicheres Reboot  
|-
|-
| style="border:none;padding:0.049cm;" | '''Taste'''  
| | '''Taste'''  
| style="border:none;padding:0.049cm;" | '''Funktion'''  
| | '''Funktion'''  
| style="border:none;padding:0.049cm;" | '''Bedeutung'''  
| | '''Bedeutung'''  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | R  
| | R  
| style="border:none;padding:0.049cm;" | unraw  
| | unraw  
| style="border:none;padding:0.049cm;" | Nimmt der grafischen Oberfläche den Zugriff auf die Tastatur  
| | Nimmt der grafischen Oberfläche den Zugriff auf die Tastatur  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | E  
| | E  
| style="border:none;padding:0.049cm;" | term  
| | term  
| style="border:none;padding:0.049cm;" | Sendet ein [https://wiki.ubuntuusers.de/Signale/ SIGTERM] an alle Prozesse außer Init  
| | Sendet ein [https://wiki.ubuntuusers.de/Signale/ SIGTERM] an alle Prozesse außer Init  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | I  
| | I  
| style="border:none;padding:0.049cm;" | kill  
| | kill  
| style="border:none;padding:0.049cm;" | Sendet ein [https://wiki.ubuntuusers.de/Signale/ SIGKILL] an alle Prozesse außer Init  
| | Sendet ein [https://wiki.ubuntuusers.de/Signale/ SIGKILL] an alle Prozesse außer Init  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | S  
| | S  
| style="border:none;padding:0.049cm;" | [https://wiki.ubuntuusers.de/sync/ sync]  
| | [https://wiki.ubuntuusers.de/sync/ sync]  
| style="border:none;padding:0.049cm;" | Schreibt alle noch nicht auf die Festplatte geschriebenen Daten aus dem Kernel-Festplatten-Cache auf die Festplatten  
| | Schreibt alle noch nicht auf die Festplatte geschriebenen Daten aus dem Kernel-Festplatten-Cache auf die Festplatten  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | U  
| | U  
| style="border:none;padding:0.049cm;" | umount  
| | umount  
| style="border:none;padding:0.049cm;" | Alle eingehängten Partitionen werden ausgehängt, und danach nur-lesbar eingehängt  
| | Alle eingehängten Partitionen werden ausgehängt, und danach nur-lesbar eingehängt  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | B  
| | B  
| style="border:none;padding:0.049cm;" | reboot  
| | reboot  
| style="border:none;padding:0.049cm;" | Fährt den Rechner sofort herunter, ohne Daten aus dem Kernel-Festplatten-Cache auf die Festplatten zu schreiben und ohne Partitionen auszuhängen, und startet den Rechner neu.  
| | Fährt den Rechner sofort herunter, ohne Daten aus dem Kernel-Festplatten-Cache auf die Festplatten zu schreiben und ohne Partitionen auszuhängen, und startet den Rechner neu.  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
|}
|}


Außerdem gibt es noch einige weitere Funktionen:
Außerdem gibt es noch einige weitere Funktionen:
{| style="border-spacing:0;width:17cm;"
{|  
|- style="border:none;padding:0.049cm;"
|-  
| colspan="4" | Sonstige Funktionen  
| colspan="4" | Sonstige Funktionen  
|-
|-
| style="border:none;padding:0.049cm;" | '''Taste'''  
| | '''Taste'''  
| style="border:none;padding:0.049cm;" | '''Funktion'''  
| | '''Funktion'''  
| style="border:none;padding:0.049cm;" | '''Bedeutung'''  
| | '''Bedeutung'''  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | C  
| | C  
| style="border:none;padding:0.049cm;" | Crashdump  
| | Crashdump  
| style="border:none;padding:0.049cm;" | Startet über '''kexec'''(sofern vorhanden) neu und gibt einen Dump auf dem Bildschirm aus. Ohne '''kexec''' wird ein Absturz durch eine Null-Pointer-Dereferenzierung veranlasst.
| | Startet über '''kexec'''(sofern vorhanden) neu und gibt einen Dump auf dem Bildschirm aus.  
| style="border:none;padding:0.049cm;" |  
* Ohne '''kexec''' wird ein Absturz durch eine Null-Pointer-Dereferenzierung veranlasst.
| |  
|-
|-
| style="border:none;padding:0.049cm;" | D  
| | D  
| style="border:none;padding:0.049cm;" |  
| |  
| style="border:none;padding:0.049cm;" | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] alle gesetzten Locks an  
| | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] alle gesetzten Locks an  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | K  
| | K  
| style="border:none;padding:0.049cm;" | secure attention key  
| | secure attention key  
| style="border:none;padding:0.049cm;" | Beendet alle Prozesse auf dem aktuellen Terminal, um sicher zu sein, dass der Login-Prompt von Init stammt und nicht von einem Trojaner. Eine aufgehängte Anwendung, welche die SVGAlib benutzt oder ein nicht mehr reagierender X-Server lassen sich auch auf diese Weise beenden.  
| | Beendet alle Prozesse auf dem aktuellen Terminal, um sicher zu sein, dass der Login-Prompt von Init stammt und nicht von einem Trojaner.  
| style="border:none;padding:0.049cm;" |  
* Eine aufgehängte Anwendung, welche die SVGAlib benutzt oder ein nicht mehr reagierender X-Server lassen sich auch auf diese Weise beenden.  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | L  
| | L  
| style="border:none;padding:0.049cm;" | Kill including init  
| | Kill including init  
| style="border:none;padding:0.049cm;" | Sende [https://wiki.ubuntuusers.de/Signale/ SIGKILL] an alle Prozesse, auch an Init. Das kommt einem Ausschalten gleich.  
| | Sende [https://wiki.ubuntuusers.de/Signale/ SIGKILL] an alle Prozesse, auch an Init.  
| style="border:none;padding:0.049cm;" |  
* Das kommt einem Ausschalten gleich.  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | M  
| | M  
| style="border:none;padding:0.049cm;" | Memory  
| | Memory  
| style="border:none;padding:0.049cm;" | Gibt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] die Hauptspeicherbelegung in der Konsole aus.  
| | Gibt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] die Hauptspeicherbelegung in der Konsole aus.  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | O  
| | O  
| style="border:none;padding:0.049cm;" | Power off  
| | Power off  
| style="border:none;padding:0.049cm;" | Fährt den Rechner mit [https://wiki.ubuntuusers.de/Archiv/Energiesparmodi_mit_ACPI/ APM/ACPI] herunter und schalte ihn aus (wenn vom Rechner unterstützt).  
| | Fährt den Rechner mit [https://wiki.ubuntuusers.de/Archiv/Energiesparmodi_mit_ACPI/ APM/ACPI] herunter und schalte ihn aus (wenn vom Rechner unterstützt).  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | P  
| | P  
| style="border:none;padding:0.049cm;" |  
| |  
| style="border:none;padding:0.049cm;" | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] den Inhalt der CPU-Register inklusive der FLAGS an  
| | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] den Inhalt der CPU-Register inklusive der FLAGS an  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | Q  
| | Q  
| style="border:none;padding:0.049cm;" |  
| |  
| style="border:none;padding:0.049cm;" | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] alle derzeitig laufenden Timer an  
| | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] alle derzeitig laufenden Timer an  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | T  
| | T  
| style="border:none;padding:0.049cm;" |  
| |  
| style="border:none;padding:0.049cm;" | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] eine Liste aktuell laufender Prozesse an.  
| | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] eine Liste aktuell laufender Prozesse an.  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | W  
| | W  
| style="border:none;padding:0.049cm;" |  
| |  
| style="border:none;padding:0.049cm;" | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] die Prozesse in geblocktem Status an.  
| | Zeigt im [https://wiki.ubuntuusers.de/Terminal/#Virtuelle-Konsole Textmodus] die Prozesse in geblocktem Status an.  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
| style="border:none;padding:0.049cm;" | F  
| | F  
| style="border:none;padding:0.049cm;" | force a OOM kill  
| | force a OOM kill  
| style="border:none;padding:0.049cm;" | Killt den "teuersten" Prozess für den Speicher.  
| | Killt den "teuersten" Prozess für den Speicher.  
| style="border:none;padding:0.049cm;" |  
| |  
|-
|-
|}
|}


== Aktivieren und Deaktivieren von Magic SysRQ ==
== Aktivieren und Deaktivieren von Magic SysRQ ==
Ob der Magic SysRQ aktiviert ist oder nicht, kann über diesen Befehl [https://wiki.ubuntuusers.de/Magic_SysRQ/#source-1 [1]] herausgefunden werden:
Ob der Magic SysRQ aktiviert ist oder nicht, kann über diesen Befehl [https://wiki.ubuntuusers.de/Magic_SysRQ/#source-1 [1]] herausgefunden werden:


  cat /proc/sys/kernel/sysrq  
  cat /proc/sys/kernel/sysrq  


überprüft werden. Ist die Ausgabe ungleich <tt>0</tt>, ist SysRQ aktiv, bei <tt>0</tt> nicht. Zur Deutung des zurückgelieferten Werts siehe [http://www.mjmwired.net/kernel/Documentation/sysrq.txt sysrq.txt].
überprüft werden.  
* Ist die Ausgabe ungleich <tt>0</tt>, ist SysRQ aktiv, bei <tt>0</tt> nicht.  
* Zur Deutung des zurückgelieferten Werts siehe [http://www.mjmwired.net/kernel/Documentation/sysrq.txt sysrq.txt].


Auf diesem Weg lässt sich die Funktion auch direkt aktivieren. Beispiel:
Auf diesem Weg lässt sich die Funktion auch direkt aktivieren.  
* Beispiel:


  echo 1 | sudo tee /proc/sys/kernel/sysrq  
  echo 1 | sudo tee /proc/sys/kernel/sysrq  
Zeile 159: Zeile 170:


== Permanentes Aktivieren und Deaktivieren von Magic SysRQ ==
== Permanentes Aktivieren und Deaktivieren von Magic SysRQ ==
Zum permanenten Aktivieren wird in die Datei '''/etc/sysctl.d/10-magic-sysrq.conf''' Folgendes eingetragen:
Zum permanenten Aktivieren wird in die Datei '''/etc/sysctl.d/10-magic-sysrq.conf''' Folgendes eingetragen:


Zeile 170: Zeile 180:


== Bedienung aus der Kommandozeile ==
== Bedienung aus der Kommandozeile ==
 
Wenn die Druck -Taste nicht zur Verfügung steht, das Terminal aber schon, können die SysRQ-Kommandos auch über eine Kommandozeile ausgeführt werden.  
Wenn die Druck -Taste nicht zur Verfügung steht, das Terminal aber schon, können die SysRQ-Kommandos auch über eine Kommandozeile ausgeführt werden. Mit Hilfe der Standard-Datenströme wird der Code der gewünschten Taste in den SysRQ-Trigger des procfs geschrieben. Ein Beispiel:
* Mit Hilfe der Standard-Datenströme wird der Code der gewünschten Taste in den SysRQ-Trigger des procfs geschrieben.  
* Ein Beispiel:


  echo b | sudo tee /proc/sysrq-trigger  
  echo b | sudo tee /proc/sysrq-trigger  
Zeile 178: Zeile 189:


== Problembehebung ==
== Problembehebung ==
== Magic SysRQ testen ==
== Magic SysRQ testen ==
Wer die SysRQ-Funktionen gezielt testen möchte, startet am besten eine [https://de.wikipedia.org/wiki/Forkbomb Forkbomb] auf dem Rechner, um diesen bewusst zu überlasten. Abschließend noch ein Auszug des Systemprotokolls eines Rechners mit [https://wiki.ubuntuusers.de/Trusty/ Ubuntu 14.04], aus dem deutlich zu erkennen ist, dass der ersten drei Tasten ("REI") ignoriert werden:
Wer die SysRQ-Funktionen gezielt testen möchte, startet am besten eine [https://de.wikipedia.org/wiki/Forkbomb Forkbomb] auf dem Rechner, um diesen bewusst zu überlasten. Abschließend noch ein Auszug des Systemprotokolls eines Rechners mit [https://wiki.ubuntuusers.de/Trusty/ Ubuntu 14.04], aus dem deutlich zu erkennen ist, dass der ersten drei Tasten ("REI") ignoriert werden:


Zeile 191: Zeile 200:


== Links ==
== Links ==
* [https://de.wikibooks.org/wiki/Linux-Praxisbuch/_Problembehandlung_beim_Neustart Problembehandlung beim Neustart] im Linux-Kompendium
* [https://de.wikibooks.org/wiki/Linux-Praxisbuch/_Problembehandlung_beim_Neustart Problembehandlung beim Neustart] im Linux-Kompendium
* [https://wiki.ubuntuusers.de/Notfall/ Notfall] Übersichtsartikel
* [https://wiki.ubuntuusers.de/Notfall/ Notfall] Übersichtsartikel

Version vom 3. April 2022, 08:38 Uhr

Magic SysRQ

Obwohl Linux sehr stabil ist, können in Ausnahmefällen Kernel Panics auftreten.

  • Manchmal stoppt auch nur der XServer, der für die grafische Oberfläche verantwortlich ist.
  • Dann ist unter Umständen nicht mal der Wechsel in eine Konsole zur Reparatur möglich.

In einem solchem Moment kann natürlich der Reset-Taster gedrückt oder der Rechner "hart" ausgeschaltet werden – mit dem immer vorhandenen Risiko von Datenverlusten.

  • Notwendig ist dies aber nicht, da es Möglichkeiten gibt, das System entweder sauber herunterzufahren oder weitere Maßnahmen zu ergreifen, um die Ursache des Problems zu finden.
  • Dazu gibt es eine Funktion des Kernels, die sich "SysRequest key" nennt, auch als Magische S-Abf-Taste bekannt.

Die SysRq-Taste befindet sich auf der deutschen Tastatur als Zweitbelegung von Druck .

  • Je nach Tastatur muss man zum Erreichen von "S-Abf" zuerst Alt gedrückt halten: praktisch also Alt + Druck (auf schweizerischen und englischsprachigen Tastaturen jedoch Alt Gr + die Taste "SysRq").
  • Bei Notebooks ist teilweise auch die Kombination mit Fn erforderlich.

Hinweis

  • Dell Vostro Laptops: Erst ⇩ num drücken – dann leuchtet das blaue LED auf – und danach Fn + Alt + Druck +"Buchstabe" drücken.
  • einige Logitech-Tastaturen (zum Beispiel K300): Erst Fn (Taste in rot) drücken, dann leuchten oben die LED's in kräftiger, oranger Farbe auf und danach Alt + Druck (die Druck-Taste ist die Pos1 -Taste) +"Buchstabe" drücken.
  • Workarounds, wie ⇩ num zuerst zu aktivieren oder Alt Gr anstelle von Alt zu verwenden, sind offenbar bei vielen Laptops nötig.
  • Ebenso kann es bei Notebooks vorkommen, dass die Tastenkombination auf der integrierten, nicht jedoch auf einer extern angeschlossenen Tastatur funktioniert.
  • Manchmal funktionieren nur Teile der Magic SysRQ-Kette nicht, zum Beispiel der letzte (B) für den Reboot.
  • In diesem Fall kann der Rechner durch kurzes Drücken des An-/Ausschalters neu gestartet werden.

Der gewünschte Befehl wird erteilt, indem auf der Tastatur dann noch zusätzlich der entsprechenden Buchstaben gedrückt wird.

  • Die für den entsprechenden Befehl notwendige Taste kann der folgenden Tabelle entnommen werden.

Anwenden

Die meisten Tastenkombinationen werden oft in einer bestimmten Reihenfolge ausgeführt, um eine bestimmte Aktion auszuführen.

  • Für solche Sequenzen haben sich mittlerweile verschiedene Merksätze gebildet.
  • Die häufigste Sequenz wird vermutlich ein Notfall-Neustart sein; hierfür wird die ganze Zeit Alt + Druck gedrückt gehalten und nacheinander die Tasten R + E + I + S + U + B betätigt.
  • Die dazu benötigte Reihenfolge lässt sich mit folgendem Satz merken:
  • "Reboot Even If System Utterly Broken" oder
  • "Richtig Einparken Ist So Unglaublich Banal"
  • rückwärts: "busier", (vom engl. "busy", das heißt, beschäftigt oder ausgelastet)

Jeweils der erste Buchstabe eines Wortes steht für die folgende SysRQ-Funktion:

Hinweis

  • Seit Ubuntu 12.10 sind die ersten drei SysRQ-Funktionen standardmäßig deaktiviert.
  • Damit steht praktisch nur "SUB" zur Verfügung (194676, 1025467).
  • Möchte man diese aus Sicherheitsgründen getroffene Einschränkung aufheben, setzt man statt 176 den Wert 1 (siehe unten).


Sicheres Reboot
Taste Funktion Bedeutung
R unraw Nimmt der grafischen Oberfläche den Zugriff auf die Tastatur
E term Sendet ein SIGTERM an alle Prozesse außer Init
I kill Sendet ein SIGKILL an alle Prozesse außer Init
S sync Schreibt alle noch nicht auf die Festplatte geschriebenen Daten aus dem Kernel-Festplatten-Cache auf die Festplatten
U umount Alle eingehängten Partitionen werden ausgehängt, und danach nur-lesbar eingehängt
B reboot Fährt den Rechner sofort herunter, ohne Daten aus dem Kernel-Festplatten-Cache auf die Festplatten zu schreiben und ohne Partitionen auszuhängen, und startet den Rechner neu.

Außerdem gibt es noch einige weitere Funktionen:

Sonstige Funktionen
Taste Funktion Bedeutung
C Crashdump Startet über kexec(sofern vorhanden) neu und gibt einen Dump auf dem Bildschirm aus.
  • Ohne kexec wird ein Absturz durch eine Null-Pointer-Dereferenzierung veranlasst.
D Zeigt im Textmodus alle gesetzten Locks an
K secure attention key Beendet alle Prozesse auf dem aktuellen Terminal, um sicher zu sein, dass der Login-Prompt von Init stammt und nicht von einem Trojaner.
  • Eine aufgehängte Anwendung, welche die SVGAlib benutzt oder ein nicht mehr reagierender X-Server lassen sich auch auf diese Weise beenden.
L Kill including init Sende SIGKILL an alle Prozesse, auch an Init.
  • Das kommt einem Ausschalten gleich.
M Memory Gibt im Textmodus die Hauptspeicherbelegung in der Konsole aus.
O Power off Fährt den Rechner mit APM/ACPI herunter und schalte ihn aus (wenn vom Rechner unterstützt).
P Zeigt im Textmodus den Inhalt der CPU-Register inklusive der FLAGS an
Q Zeigt im Textmodus alle derzeitig laufenden Timer an
T Zeigt im Textmodus eine Liste aktuell laufender Prozesse an.
W Zeigt im Textmodus die Prozesse in geblocktem Status an.
F force a OOM kill Killt den "teuersten" Prozess für den Speicher.

Aktivieren und Deaktivieren von Magic SysRQ

Ob der Magic SysRQ aktiviert ist oder nicht, kann über diesen Befehl [1] herausgefunden werden:

cat /proc/sys/kernel/sysrq 

überprüft werden.

  • Ist die Ausgabe ungleich 0, ist SysRQ aktiv, bei 0 nicht.
  • Zur Deutung des zurückgelieferten Werts siehe sysrq.txt.

Auf diesem Weg lässt sich die Funktion auch direkt aktivieren.

  • Beispiel:
echo 1 | sudo tee /proc/sys/kernel/sysrq 

beziehungsweise deaktivieren:

echo 0 | sudo tee /proc/sys/kernel/sysrq 

Permanentes Aktivieren und Deaktivieren von Magic SysRQ

Zum permanenten Aktivieren wird in die Datei /etc/sysctl.d/10-magic-sysrq.conf Folgendes eingetragen:

# Werte fuer X sind der Dokumentation zu entnehmen: http://www.mjmwired.net/kernel/Documentation/sysrq.txt
kernel.sysrq = X

Zur permanenten Deaktivierung:

kernel.sysrq = 0

Bedienung aus der Kommandozeile

Wenn die Druck -Taste nicht zur Verfügung steht, das Terminal aber schon, können die SysRQ-Kommandos auch über eine Kommandozeile ausgeführt werden.

  • Mit Hilfe der Standard-Datenströme wird der Code der gewünschten Taste in den SysRQ-Trigger des procfs geschrieben.
  • Ein Beispiel:
echo b | sudo tee /proc/sysrq-trigger 

Dieser Befehl ist äquivalent zur Kombination Alt + Druck + B und startet den Rechner sofort neu.

Problembehebung

Magic SysRQ testen

Wer die SysRQ-Funktionen gezielt testen möchte, startet am besten eine Forkbomb auf dem Rechner, um diesen bewusst zu überlasten. Abschließend noch ein Auszug des Systemprotokolls eines Rechners mit Ubuntu 14.04, aus dem deutlich zu erkennen ist, dass der ersten drei Tasten ("REI") ignoriert werden:

Sep  9 16:42:48 ubuntu kernel: [  568.061699] SysRq : This sysrq operation is disabled.
Sep  9 16:42:54 ubuntu kernel: [  573.215822] SysRq : This sysrq operation is disabled.
Sep  9 16:42:57 ubuntu kernel: [  576.346673] SysRq : This sysrq operation is disabled.
Sep  9 16:43:00 ubuntu kernel: [  579.131420] SysRq : Emergency Sync
Sep  9 16:43:00 ubuntu kernel: [  579.277440] Emergency Sync complete
Sep  9 16:43:02 ubuntu kernel: [  581.271897] SysRq : Emergency Remount R/O

Links