Přemýšleli jste někdy, jak resetovat heslo root v systému, pokud jste ho úplně zapomněli? Až donedávna jste mohli jednoduše změnit možnosti jádra GRUB tak, aby se zavádělo do režimu jednoho uživatele, nebo říct init, aby vytvořil shell s /bin/bash nebo podobným. S Red Hat Enterprise Linux 7 nebo CentOS 7 se hra změnila o několik dalších kroků, níže uvedený průvodce vám ukáže, jak to udělat!
Upozornění:Pokud je systém souborů zašifrován, tyto pokyny nebudou fungovat!
Kroky se liší v závislosti na tom, zda je váš počítač virtuálním hostem pomocí virtualizovaného prostředí, jako je KVM nebo VirtualBox pomocí klávesnice USB, nebo zda používáte standardní počítač RHEL/CentOS. První pokyny jsou pro standardní počítač, pokud používáte virtuálního hosta, přejděte v tomto článku dolů.
Resetování hesla na standardním počítači RHEL/CentOS
1) Spusťte systém a počkejte, dokud se nezobrazí nabídka GRUB2.
2) V nabídce spouštění zvýrazněte libovolnou položku a stiskněte
e
.3) Najděte řádek začínající na linux. Na konec tohoto řádku připojte následující:
init=/bin/sh
Poznámka:Pokud zjistíte, že trpíte panikou jádra, místo „ro“ změňte na „rw“ na sysroot jako příklad níže:
rw init=/sysroot/bin/sh
4) Stisknutím F10 nebo Ctrl+X nabootujete systém pomocí možností, které jste právě upravili.
Jakmile se systém spustí, zobrazí se vám výzva shellu, aniž byste museli zadávat uživatelské jméno nebo heslo:
sh-4.2#
5) Načtěte nainstalovanou zásadu SELinux:
sh-4.2# /usr/sbin/load_policy -i
6) Provedením následujícího příkazu znovu připojte kořenový oddíl:
sh4.2# mount -o remount,rw /
7) Obnovte heslo uživatele root:
sh4.2# passwd root
Až budete vyzváni, zadejte své nové root heslo a potvrďte stisknutím klávesy Enter. Zadejte heslo podruhé, abyste se ujistili, že jste jej zadali správně, a potvrďte znovu Enterem. Pokud se obě hesla shodují, zobrazí se zpráva informující o úspěšné změně hesla uživatele root.
8) Znovu připojte kořenový oddíl, tentokrát pouze pro čtení:
sh4.2# mount -o remount,ro /
9) Restartujte systém. Od této chvíle se budete moci přihlásit jako uživatel root pomocí nového hesla nastaveného během tohoto postupu. Chcete-li systém restartovat, zadejte exit
a exit
znovu opustit prostředí a restartovat systém.
Pokyny pro použití klávesnice USB nebo pokud je systém virtuální host
Pamatujte, že výše uvedené kroky vás mohou přeskočit na výzvu bez přístupu ke klávesnici USB a nefungují na virtuálním počítači, jako je KVM nebo VirtualBox. Chcete-li resetovat heslo uživatele root v těchto prostředích:
1) přidejte rd.break
místo init=/bin/sh
na konec řádku, který začíná linux
v Grub2:
2) když se systém spustí, spusťte následující příkaz pro opětovné připojení kořenového souborového systému v režimu čtení-zápis:
mount -o remount,rw /sysroot
3) pak spusťte:
chroot /sysroot
4) spustit:
passwd
5) instruujte SELinux, aby po restartu znovu označil všechny soubory (protože /etc/shadow
soubor byl změněn mimo svůj běžný kontext SELinux) — spustit:
touch /.autorelabel
Pamatujte, že to může při příštím spouštění nějakou dobu trvat.
6) zadejte exit
opustíte prostředí chroot.
7) zadejte exit
Chcete-li se odhlásit, uvědomte si, že tím také restartujete systém.
Systém se restartuje, znovu použije všechna označení SELinux a zobrazí se vám běžná výzva k přihlášení.