Ubuntu 20.04是 Ubuntu 的第 8 個 LTS 版本, 代號爲"Focal Fossa",安裝教程教程查看Ubuntu 20.04 LTS發佈及安裝教程。
本教程的目的是在 Ubuntu 20.04 Focal Fossa Linux 上重置丟失的 root 或用戶密碼。其實以下Root密碼重置方法適用於Ubuntu 12.04以上任意版本的Ubuntu。
在本文中你將學會:
- 如何在沒有密碼的情況下獲得root shell
- 如何掛載根(/)目錄讀/寫
- 如何重置root密碼
- 如何重置用戶密碼
Root密碼修改過程
重啓Ubuntu20.04操作系統,然後快速的按下shift
按鍵,並保持,進入grub菜單。直到出現如下界面,選擇【Advanced options for Ubuntu】回車繼續。
接下來,當您的選擇Ubuntu 啓動菜單第二項【ubuntu,with Linux 5.11.0-40-generic (recovery mode)】突出顯示時,按e
編輯Grub的啓動提示符。
進入編輯界面後, 使用導航箭頭找到包含以下字符串的行ro recovery nomodeset
。
將ro recovery nomodeset
至locale=en_US
起後面所有內容替換成rw init=/bin/bash
。
進行更改後,按 ctrl+x
或者F10
繼續引導。
成功啓動後,您應該直接就是root用戶身份在執行命令了,而不需要輸入root密碼。
執行以下命令確認根目錄是否已被掛載爲rw可讀寫權限。
mount | grep -w /
確認根目錄狀態
確認根目錄正處於rw狀態後,那就可以直接重置或破解Ubuntu 20.04任何用戶的密碼了。
重置root密碼:
passwd root
或者
passwd
不加用戶名錶示重置root密碼。
重置其它用戶的密碼,比如bspserver。
passwd bspserver
完成重置密碼或者破解密碼的工作後,重啓Ubuntu 20.04,執行以下命令重啓服務器:
exec /sbin/init
你可以使用重置的密碼登錄bspserver用戶。
錯誤提示
如果執行passwd時,提示以下錯誤:
Enter new UNIX password:
Retype new UNIX password:
passwd: Authentication token manipulation error
passwd: password unchanged
原因:根目錄掛載了只讀狀態。
解決方法如下:
mount -o remount,rw /
如果提示錯誤[ end Kernel panic - not syncing: Attempted to kill init! exit code=0x0007f00
確保在前面修改grub參數時,刪除splash啓動選項。
如果執行reboot命令時被提示:
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
Failed to talk to init daemon.
忽略這樣的錯誤,改爲以下命令重啓服務器:
exec /sbin/init