Petite manipulation pour modifier le mot de passe root lorsqu’on l’as oublié et que l’on ne peut lancer le système sans lui:

Au lancement du système, que ce soit sur LiLo ou Grub, il est possible d’éditer la ligne de démarrage.

Il faut ici y ajouter

init=/bin/sh

Une fois le système lancé avec cette option, nous nous retrouvons connectés en root sans mot de passe sur un système en lecture seule.

Il nous faut donc remonter le système en lecture / écriture:

mount -rw -o remount /

Nous pouvons maintenant changer le mot de passe root:

passwd root

Il est également possible d’aller modifier directement via un éditeur, les fichiers /etc/passwd et /etc/shadow.

Le démarrage ne s’étant pas effectué entièrement, il est nécessaire de resynchroniser le système afin de s’assurer de la prise en compte des modifications.

sync

Au démarrage suivant une vérification du disque est possible.

Si cette méthode ne fonctionne pas car Grub ou LiLo empêche l’édition des lignes de démarrage, d’autres méthodes existent.

Notamment dans le cas où il est possible de démarrer via un live-cd.

Il suffit alors de quelques commandes pour arriver au même résultat.

Se connecter en root sur le live-cd:

sudo su -

Monter la partition système:

mount /dev/sdX /mnt

Copier les périphériques sur cette partition:

cp -R /dev/ /mnt/dev

Se chrooter dans la partition:

chroot /mnt

À partir de ce moment, toutes les actions effectuées ne le sont plus sur le système du live-cd mais sur votre système installé sur le disque dur. Toute mauvaise manipulation peut s’avérer désastreuse pour votre système.

Il suffit maintenant de changer le mot de passe:

passwd root

Il suffit maintenant de redémarrer le système sans le live-cd.