做爲站在系統頂端的那我的,偶爾也會發生忘記root密碼這樣的狀況,對於老司機來講,這根本不用慌,有不少種辦法搞定!固然,我在此所說的狀況僅限於能看到啓動界面可以編輯grub配置的狀況或者可以掛載系統光盤進行修復的狀況。其餘場景並非適用。想經過閱讀本文,而後破解其餘遠程主機的小夥伴們在此能夠繞道了,此文並不適用。spa
(一)方案一思路(只介紹思路及重點命令,不詳細截圖演示操做步驟)code
1.把系統盤放入光驅,設置光驅引導啓動。blog
2.進入救急模式,把原系統根目錄所在的分區掛載到當前系統的某一目錄下或者直接選1的continue就行,自動掛載。awk
3.按照如下步驟進行操做。登錄
在已知密碼的主機上執行:基礎
[root@ChatDevOps ~]# awk -F ":" 'NR==1{print $2}' /etc/shadow
將已知密碼主機終端輸出內容粘貼到忘記密碼的主機上,關鍵命令以下(將變量$2內容替換成已知密碼主機屏幕顯示內容):變量
[root@ChatDevOps ~]# awk -F ":" '{if(NR==1){$2="$6$0gOE0PHa$FO.D";}print $0}' /etc/shadow>shadow [root@ChatDevOps ~]# sed -i '1s/ /:/g' shadow [root@ChatDevOps ~]# chmod 000 shadow [root@ChatDevOps ~]# mv shadow /etc/shadow mv:是否覆蓋"/etc/shadow"? y
此種狀況只適用於已經開啓密碼投射的狀況,開啓和關閉密碼投射的命令分別以下:sed
[root@ChatDevOps ~]# pwconv [root@ChatDevOps ~]# pwunconv
若是沒有開啓密碼投射也不用驚慌,一樣的思路,只不過密碼存放的文件變成了/etc/passwd而已。你們都看懂了嗎?配置
(二)方案二思路終端
1.在方案一的基礎上進行操做,原本想和方案一合併的,考慮到合併以後顯得很混亂,就單獨寫了。
2.分區掛載以後,直接把/mnt/sysimage/etc/shadow文件裏面的第一個「:」後面的內容直接刪除。
在這一步須要注意的是:shadow的權限,在刪除文字內容以前須要對該文件加讀寫權限,編輯完shadow文件以後保存之後去掉新加的權限。完成以後正常啓動便可,系統啓動以後無需輸入密碼,直接登陸,登陸進去以後passwd命令修改密碼便可。很是方便!重點命令可參考方案四。