Mot de passe de root perdu sur Squeeze

Si on a perdu le mot de passe du compte root sous Squeeze, il y a deux moyens (au moins) de pouvoir tout de même se connecter en root à la machine et de mettre ensuite un nouveau mot de passe à ce compte avec la commande passwd. Dans les deux cas, il faut avoir un accès physique à l'ordinateur et heureusement d'ailleurs...

La première méthode consiste à booter la machine via un cd live (par exemple un cd live Ubuntu). À partir de là, on peut ouvrir un terminal et monter (en ext3 sans doute) dans un dossier quelconque la partition du disque dur de la machine qui contient le dossier /etc (en général c'est la partition racine). On en profite alors pour éditer les deux fichiers /etc/passwd et /etc/passwd-. Il suffit d'y supprimer tout ce qu'il y a entre les deux premiers « : » de la ligne « root » pour avoir quelque chose de la forme :

root::0:0:root:/root:/bin/bash

Au prochain redémarrage de la machine (via son disque dur et non plus le cd), on pourra se connecter avec le compte root sans mettre de mot de passe. Évidemment, la première chose à faire sera de définir un nouveau mot de passe pour le compte root.

L'autre méthode ne nécessite même pas de cd live. On utilise Grub. Il faut d'abord redémarrer la machine. Lorsque Grub apparaît, il faut sélectionner la ligne avec la mention « mode de dépannage » (rescue mode) et appuyer sur la touche e pour éditer. On place alors le curseur à la fin de la ligne (assez longue) commençant par linux /boot/vmlinuz-xxx. On ajoute à la fin de cette ligne init=/bin/bash (attention tout au long de cette procédure le clavier est en qwerty). Ensuite, on appuie sur CTRL+x pour lancer le démarrage. À la fin de celui-ci, on sera alors connecté directement en root. On remonte alors la partition en écriture avec la commande :

mount -o remount,rw /
# En supposant que la partition qui contient /etc 
# soit la partition racine.

Enfin, on peut avec la commande passwd changer le mot de passe du compte root. Mais attention, le clavier est toujours en qwerty. Il faut mettre alors « fff » par exemple comme mot de passe (car f est une touche azerty-qwerty indépendante), redémarrer ensuite normalement la machine, se connecter en root avec le mot de passe « fff » puis changer ce mot de passe, sachant que cette fois-ci le clavier sera a priori en azerty.

Au passage, avec cette deuxième méthode, nous avons édité le mode de démarrage « dépannage » dans Grub. Toutefois, les modifications que nous avons faites sont non persistantes et les prochaines fois le démarrage « en mode dépannage » ne contiendra plus ces modifications.

Cette entrée a été publiée dans Commandes pratiques, Ligne de commandes, avec comme mot(s)-clef(s) . Vous pouvez la mettre en favoris avec ce permalien.

Les commentaires sont fermés.