Le Magic SysRq Key sono combinazioni di tasti che inviano comandi direttamente al kernel e permettono spesso di ripristinare un sistema bloccato ed eseguire un riavvio senza arrecare danni al file system,
Attivazione Magic SysRq Key
Prima di tutto verifichiamo che la Magic SysRq Key siano attivate sul nostro sistema
Normalmente sono attive in tutte le distribuzioni, comunque …
digitiamo da terminale
$ egrep -i sysrq /boot/config-$(uname -r)
Se la risposta è
CONFIG_MAGIC_SYSRQ=y
siamo a posto, altrimenti dovremmo compilare il Kernel e durante la configurazione, nella sezione Kernel Hacking dovremmo rispondere Yes alla richiesta relativa a
Magic SysRq Key (CONFIG_MAGIC_SYSRQ)
Abilitazione Magic SysRq Key
Detto ciò e avendo qundi ottenuta la risposta
CONFIG_MAGIC_SYSRQ=y digitiamo
$ cat /proc/sys/kernel/sysrq per verificare se la funzione oltre che attiva è anche abilitata.
Se la risposta è 1 siamo a posto altrimenti dobbiamo abilitare il tutto come segue :
$ echo “1” > /proc/sys/kernel/sysrq
A titolo informativo per la disabilitazione dobbiamo digitare
$ echo “0” > /proc/sys/kernel/sysrq
Se vogliamo che le Magic SysRq Key siano attivate automaticamente al boot dobbiamo modificate con un editor e i privilegi di root il file /etc/sysctl.conf
aggiungendo la riga :
kernel.sysrq = 1
Quando il computer è bloccato e non abbiamo risolto con altre soluzioni, dobbiamo eseguire la seguente combinazione di tasti :
Alt + Stamp + x
Dove x è a seconda di quello che vogliamo fare uno dei seguenti tasti
b |
Riavvia immediatamente il sistema s/smontare o fare un syncing dei dischi |
c |
Riavvia prendendo un crashdump |
d |
Mostra tutti i blocchi |
e |
Invia un SIGTERM a tutti i processi tranne quello di Init |
f |
Killa il processo che occupa più memoria |
g |
Usa kgdb su piattaforma ppc e sb |
h |
Help |
i |
Sigkill x tutti i processi tranne Init |
k |
Secure Access Key (SAK) killa tutti i prg sulla console virtuale corrente |
m |
Visualizza info della memoria |
n |
Used ti make RT tasks nice-able |
o |
Shutdown del sistema (se configurato e supportato) |
p |
Visualizza registri e flag correnti |
q |
Lista timers attivati |
r |
Setta la tastiera in XLATE |
s |
Sync di tutti i filesystem montati |
t |
M§ostra tutti i processi |
u |
Rimonta tutti i file system in read-only |
v |
Mostra info su processore Voyager SMP |
w |
Mostra i task bloccati |
x |
Usato da interfaccia XMON su PPC/PowerPC |
0 |
Setta il livello di log della console. Mostrerà i msg di kernel |
Consiglio : REISUB
Insomma una combinazione di tasti prima come segue
Alt+ Stamp + R
Alt + Stamp + E
Alt + Stamp + I
Alt + Stamp + S
Alt + Stamp + U
Alt + Stamp + B
Al posto del b che effettua il riavvio potete tentare se supportato e configurato
Alt + Stamp + O per spegnere il sistema
Ogni comando richiede un certo intervallo di secondi, quindi non dateli di seguito per evitare di sovrapporli.
Eseguire i comandi da remoto
Questi comandi possono esser eseguiti anche da remoto a patto di avere accesso alla macchina bloccata per mezzo di ssh o telnet
Si utilizzerà “echo” sul file /proc/sysrq-trigger
Quindi per esempio per Alt + Stamp + B digitare
$ sudo sh -c ‘echo b > /proc/sysrq-trigger’
Questa pagina si basa su miei appunti e sull’articolo di Linux Magazine del Settembre 2012