Ztracené rootovské heslo
Člověk je tvor zapomětlivý a občas se stane, že něco zapomene. Pokud je to naše rootovské heslo, můžou nastat vážné komplikace. V tomto malém návodu se dozvíte, jaké kroky podniknout, pokud zapomenete heslo pro roota.
Bootování z CD
V první řadě se odpojte od internetu, jelikož následující řešení dočasně vystavuje váš počítač většímu riziku napadení. Poté nabootujte z instalačního CD a zvolte Rescue system. Po výběru rozložení klávesnice budete vyzváni k zadání loginu, napište:
root
Poznámka: Není potřeba zadávat žádné heslo.
Editace souboru "passwd"
Následně se přesuňte do adresáře /etc a pomocí editoru vi upravte soubor passwd, to uděláte zadáním následujících příkazů:
cd /etc
vi passwd
V souboru passwd vyhledejte řádek, který vypadá nějak takto:
root:x:0:0:root:/root:/bin/bash
a smažte písmeno "x" za "root:". Dvojtečku nemažte, ale ponechejte (ve vi se pohybujete kurzorovými klávesami a mažete pomocí klávesy delete). Po vaši modifikaci, by řádek měl vypadat takto:
root::0:0:root:/root:/bin/bash
Nyní soubor uložte postupným stiskem kláves ":wq a enter" (dvojtečka, w, q a enter) a přejdeme k editaci souboru "shadow"
Editace souboru "shadow"
K editaci souboru shadow se dostaneme zadáním příkazu:
vi shadow
Kde budeme editovat řádek obsahující slovo root, který může vypadat nějak takto:
root:$2a$05$sin5i458ghsdfg8076t5ymp4y;jgslkdbvffd bshmRK:12856:0:10000::::
po našem zásahu z něj zbude jen:
root::::
Poznámka: Po naší editaci zůstanou u slova root čtyři dvojtečky. Soubor opět uložíme a vi opustíme zadáním kláves ":wq a enter". Pokud bychom něco během editace zkazili a nebyli si jistí změnami zadáme ":q!" (dvojtečka q a vykřičník)
Teď už stačí jen počítač restartovat, přihlásit se jako normální uživatel a z konzole napsat:
su
passwd
a nastavit si nové heslo. Jen doplním, že heslo pro běžného uživatele se mění příkazem:
passwd uživatelské_jméno
To je vše.
Zdroj: Cool solutions
Komentáře
Za prvé:
Internet není třeba odpojovat, protože Rescue startuje pouze s úrovní běhu 0. Tedy v jednouživatelském módu, bez disků, sítě a grafiky.
Za druhé: Po zadání uživatele root stačí spustit příkaz passwd a zadat nové heslo roota. Na staré heslo se v tomto případě neptá.
Toť vše.
Bohuzel tak snadno to nejde. Protoze hlaska /usr/lib/pwdutils/liblog_syslog.so.1: cannot open shared object file: No such file or directory. Changing password for root. passwd: User not known to the underlying authentication module, nam v tom uspesne brani ;)
A jinak pri bootu pise INIT: Entering runlevel: 3 :)
Close the world, open the next.
Omlouvám se, máte pravdu. Měl jsem to sice v praxi ověřeno ale teď si uvědomuji, že heslo bylo kódováno ještě výchozím algoritmem DES, který linux při instalaci nabízel defaultně a kdosi nezmněnil. V runlevel 1 (pochopitelně ne 0) jsem pracoval určitě ale zřejmě jsem úroveň běhu shodil sám. Nicméně ani v tomto případě by init 1 neškodil - pro jistotu.
Příště si to raději opět ověřím, než budu něco tvrdit.