Reset password di root
Updated at: 19/09/2013
Nel caso in cui si abbia accesso fisico alla macchina ma non si disponga delle credenziali root
http://soft-land.org/articoli/artlb01
http://aplawrence.com/Linux/lostlinuxpassword.html
Per prima cosa occorre riavviare il sistema in
Single Mode. Questo si può fare dando un CTRL-ALT-DEL, oppure nei casi più estremi semplicemente staccando la spina.
A questo punto, durante la fase di boot occorre dire al Bootmanager di caricare il sistema in single mode.
Con GRUB questo si ottiene modificando la configurazione (tasto
e) in corso, scegliendo poi la voce
Kernel...
e modificando (nuovamente tasto
e) la voce, aggiungendo
init=/bin/bash
alla fine della riga.
A questo punto con il tasto
b si fa proseguire il boot.
Con LILO basta aggiungere
init=/bin/bash
al nome della configurazione da caricare (per esempio
linux init=/bin/bash
).
A questo punto viene caricato il sistema di base (appunto single mode, normalmente usato per le riparazioni d'emergenza),
senza chiedere nessuna passsword, pur dando a disposizione i privilegi amministrativi.
Da qui in poi la strada è breve... Per prima cosa occorre rimontare la partizione di root in
ReadWrite-mode, altrimenti non si potrà scrivere su disco la nuova password.
Per far questo basta dare:
mount -o remount,rw /
A questo punto basta usare l'apposito comando
passwd
e impostare una nuova password, oppure, nel caso in cui
/usr/bin
sia su una partizione separata e non si voglia montarla, editando il file
/etc/passwd
e cancellando la password dalla riga. In pratica, modificando la riga da:
root:x:0:0:root:/root:/bin/bash
a
root::0:0:root:/root:/bin/bash
(
Nota: nel caso in cui non si usino le Shadow-Passwords, al posto della "x", si vedrà l'Hash della password.
Le operazioni da fare, però sono identiche.)
A questo punto è necessario rimontare la partizione di root in ReadOnly:
mount -o remount,ro /
e riavviare il sistema.