CentOS 7 root 忘記密碼重設辦法

2015-10-29 CentOS

在 CentOS 7 因為將系統管理的 init 改為 systemd,systemd 預設的 rescue mode 是無法直接取得 root 權限,所以之後就無法在使用 single user mode 的方式切換 root 了

 

在 CentOS 7 還是可以透過 rd.break (RamDisk 作業系統狀態) 來解決

 

在本篇就只用文字敘述了

 

Step.1 進到 GRUB選單,選定你目前的 kernel 並且按 e 編輯

 

Step.2 找到 linux16 在最後加入 rd.break

linux16 /vmlinuz-3.10.0-123.9.3.el7.x86_64 root=/dev/mapper/centos-root rw init=/sysroot/bin/_rd.lvm   .... rd.break

 

Step.3 按下 Ctrl-x 重開機

 

Step.4 進到 Terminal 介面修改密碼

$ mount -o rw,remount /sysroot/
$ chroot /sysroot
$ echo "root_password" | passwd --stdin root

恢復 SELinux 的安全文本
$ touch /.autorelabel
$ exit
$ reboot

如果系統有啟用 SELinux 會等待一段時間讓 SELinux 重設所有檔案 context,開機後使用新密碼登入。

 

註* 若是沒有 touch /.autorelabel,如果你的 SELinux = enforcing 的狀態下將會無法登入

 

參考資料:

鳥哥的 Linux 私房菜 – 忘記 root 密碼的解決之道

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱