Univers Libre

Hard reboot à distance

Written on 9 August 2010, 00:00 EDT
Tags: magic sysrq key, sysadmin.

Voici une astuce bien utile si votre serveur est complètement planté. Il faut néanmoins pouvoir se connecter en SSH sur la machine et avoir un shell en root.

Dans mon cas, il s'agissait d'un problème d'accès disque, la plupart des commandes exécutées renvoyaient des erreurs d'entrée/sortie, y compris la commande reboot, qui a besoin d'exécuter les scripts d'init de niveau 6.

Mais tout n'est pas perdu, si vous n'avez pas d'accès physique à la machine ! On va passer par le pseudo système de fichier /proc pour parler directement au noyau et lui dire de redémarrer la machine. Avant tout (et si il ne s'agit pas d'un problème disque), on tente de forcer la synchronisation du cache vers le disque :

sync

On active ensuite les magic sysrq key si elles ne le sont pas déjà :

echo 1 > /proc/sys/kernel/sysrq

Puis on modifie l'état de la machine :

echo b > /proc/sysrq-trigger

Cette dernière action a exactement le même effet que la combinaison Alt + Syst + b.

Après cela, priez pour que la machine redémarre correctement :-).