Christophe Casalegno

Reboot “hard” de serveur linux, avec un shell

Il peut arriver que l’état d’instabilité d’un serveur dédié, rende impossible l’utilisation de la commande reboot. Par exemple des binaires corrompus, un système de fichier endommagé, ou tout simplement un état de charge qui ne permet pas un contrôle suffisant. Dans ce cas là, il est possible, lorsque l’on est devant le serveur d’utiliser les SysReq. Cependant, ces combinaisons de touche, peuvent poser problème à distance, lorsque l’on a comme unique moyen d’accès un shell ssh.

Heureusement il est tout de même possible d’obtenir le même résultat. Il s’agit d’un reboot “sauvage”, les services ne sont pas arrêtés, et la machine est rebootée, avec un résultat similaire à un reboot hard. Eventuellement, vous pouvez mettre en place un cron sur le serveur avec certaines conditionnelles qui effectue cette opération salvatrice (attention à bien contrôler tous les paramètres).

Bref venons en au fait :

Sur votre shell linux, lancer tout simplement les commandes suivantes :

echo 1 > /proc/sys/kernel/sysrq (pour activer les sysreq)
echo b > /proc/sysrq-trigger (pour lancer le reboot sauvage)

Contrairement à la commande reboot ou shutdown, le redémarrage est automatique, sans tenter d’arrêter des processus ou encore de démonter les systèmes de fichiers (ce qui évite également les reboot qui ne peuvent fonctionner à cause de ces problèmes). Petite astuce de Hacker à utiliser tout de même avec parcimonie !

3 Comments

  1. Terrible !

  2. Ce que l’on peut raisonnablement se demander, c’est pourquoi ce truc n’est pas dans tous les manuels…

  3. Ouf ! Le pire c’est que ça marche. heu merci en tout cas, cela va m’être bien utile.

Leave a Comment