CentOS 7 忘記/不知道 root 密碼之解決方法

有沒有曾經遇過要登入Server處理一些事情,但發現 root 密碼登不進去,原因可能會是前人的密碼是錯誤的,或是根本沒有任何紀錄,這時該怎麼辦呢?
別擔心,這邊會教你如何解決,不論是忘記或根本沒有密碼都沒關係,在此分享解決的經驗,因為我曾經遇到過……
作法如下
Step 1. 首先reboot 重新開機
Step 2.進入開機 GRUB2 選單後, 按鍵盤”e” 進入編輯模式
Step 3.找到 linux16 核心項目,並在最後加上參數”rd.break”(記得加上空白喔)
Step 4. 修改完之後按下 ctrl+x
Step 5. 輸入以下指令,使掛載檔案系統為可讀寫
mount -o remount,rw /sysroot
Step 6.切換根目錄
chroot /sysroot
Step 7.執行指令修改 root 密碼:
echo "your_root_new_password" | passwd --stdin root
或是執行passwd指令也可以
passwd root
Step 8.執行以下指令,將 SELinux 變回安全本文
touch /.autorelabel
Step 9.離開/sysroot
exit
Step 10.重新啟動系統
reboot
全部步驟完成,就可以使用新的密碼登入囉
出現「黑屏」,表示有步驟做錯,請再試一次即可,不用重裝系統
以下網站為參考網站,都能夠提供很有用的資訊,分享給大家
鳥哥:http://linux.vbird.org/linux_basic/0510osloader.php#solution_root
Linux 技術手札:https://www.phpini.com/linux/rhel-centos-7-reset-root-password