www.linuxpress.org
GNU Not Unix

June 5, 2008

Crash di una macchina linux

Filed under: Howto — Simone Federici @ 2:29 pm

Mi è capitato che una macchina remota, ha avuto un errore nel filesystem con errore di Input/Output
non potendo lanciare i comandi reboot, halt o shutdown

ho trovato un una soluzione buona da conoscere:

Il modulo sysrq del kernel si occupa di interaggire con la macchina in caso di mancata possibilità di accedere ad un terminale.
Kernel hacking —> Kernel debugging —> Magic SysRq key

echo 1 > /proc/sys/kernel/sysrq # abilita il kernel per l’ascolto dei segnali

(scrivendo 0, invece, il supporto viene disattivato).

non essendo in locale, la macchina non riceve direttamente le combinazioni di tasti Alt + SysRq + key, dove key è un tasto che indica l’azione da svolgere
si può però forzare l’invio di un signal scrivendo direttamente i caratteri nel filesystem virtuale /proc/sysrq-trigger

echo s > /proc/sysrq-trigger # invoca la syncronizazzione di emergenza

questo comando da remoto non si può usare, perche chiuderebbe la connessione remota, killando il processo sshd
echo i > /proc/sysrq-trigger # invoca il kill -9 a tutti i processi non di sistema attivi

killare a mano tutti i processi non di sistema.

echo s > /proc/sysrq-trigger # altra sincronizzazione
echo u > /proc/sysrq-trigger # umount / o remount in R/O delle partizioni
echo b > /proc/sysrq-trigger # software reset (equivale a premero il pulsante hardware reset)

Links utili:
http://matrixhasu.altervista.org/index.php?view=tips&cat=linux&tip=tips_linux__attivare_magic_sysrq

Powered by WordPress