CentOS 6 版
出現問題原因:太久沒動,忘記密碼了
環境:VMWare上安裝的虛擬機CentOS 6.5
無法登錄下修改root密碼
方法:
- 在開機啓動的時候快速按鍵盤上的“E”鍵 或者“ESC”鍵(如果做不到精準快速可以在啓動前一直按着或者不停的按),會進入如下界面。如果你的有多個操作系統就會出現多個內核,就會出現多個選項
- 選擇你忘記密碼的內核,再次按“E”,出現下圖,選擇第二項,再次按“E”鍵,第二項的名稱會根據個人的設置有些小差異,但是以kernel開頭,一般選擇第二項就是了
- 經過第二步,這個畫面可以編輯,在信息的最後加“空格”,直接輸入數字的“1”(如圖)或者 鍵入“single”也行,回車確定進入下一步。
這裏會根據個人的配置不同顯示的信息不同,但是沒關係,直接在quiet後面加就行
- 操作完第三步,會出現下圖,是不是感覺又回到第二步了呢?並不是,這裏按鍵盤的”B”鍵,進入引導系統。
- 在下面這個畫面中的“#”後輸入“passwd root”,重新設置root的密碼,密碼輸入一遍,確認輸入一遍,共2遍,然後輸入reboot重啓系統,root密碼重置就完成了。
如下:輸入新密碼時,可能會提示新密碼太簡單,忽略即可,只是提醒,不影響什麼
登錄狀態下修改非root賬號密碼
這時候我想,我普通賬戶的密碼也忘記了能不能改呢,可以的!畢竟root是掌控一切的存在~如果想改其他賬號的密碼,用root登陸後輸入命令:passwd accountName 即可更改,accountName 是你想改密碼的賬戶名,比如我的賬戶名hadoop:
CentOS 7 版
無法登錄下修改root密碼
步驟:
- 在開機啓動的時候快速按鍵盤上的“ESC”鍵(如果做不到精準快速可以在啓動前一直按着或者不停的按),會進入如下界面。
- 一般選擇第一個,直接按
e
鍵 ,編輯引導項,進入新界面後,刪除linux16
這一行最後的rhgb
和quit
參數(在UEFI系統中是linuxefi),刪除rhgb和quiet
這兩個參數是爲了顯示系統信息;
PS1:用方向鍵移動光標
PS2:在64位IBM Power Series是 linux 這一行尾;在x86-64 BIOS引導的系統中是 linux16 這一行尾;在UEFI引導的系統中是linuxefi這一行尾 (反正找關鍵詞是哪個就改哪一行)
- 在這一行末尾添加以下參數:
rd.break enforcing=0
- 修改完畢後,按
CTRL+X
用改變的參數引導系統;
- 這時候會進入一個可輸入命令界面
由於在/sysroot/文件系統被掛載爲只讀時,你不能改變密碼,因爲文件系統爲不可寫入。所以需要重新掛載文件系統爲可寫入。
mount \-o remount,rw /sysroot
輸入以上命令,回車
- 文件系統被重新掛載爲可寫
chroot /sysroot
輸入以上命令,進入新界面,接下來所有命令都是在這個界面裏操作 - 新界面裏輸入
passwd
命令,接下來按命令提示行改變 root 密碼,輸入2次密碼 - 由於更新password文件會導致SELinux安全上下文文件錯誤。
鍵入以下命令在下次系統引導前重新標記所有文件:
touch /.autorelabel
PS:/和.之間沒有空格 - 重新掛載系統爲只讀:
mount \-o remount,ro /
- 鍵入 exit 命令退出 chroot 環境:
exit
- 再次鍵入 exit 命令完成初始化,完成系統引導。
exit
- 至此,密碼修改成功,完成最後一步 exit 後等待時間會長一點,然後會進入啓動頁面,輸入新的 root 用戶的密碼後就可以成功登陸了。