
我的朋友在我的電腦上安裝了 Linux Mint 17.3 Cinnamon 64 位元。好吧,我忘記了用戶名,所以我在網上搜尋“忘記用戶名 linux”並來到這裡。
我收到了在 GRUB 中的第一項按“e”的建議,我照做了。該建議的下一部分說尋找以 KERNAL 開頭的行。現在事情變得有趣了。我沒有找到包含 KERNAL 的行。不過,我確實找到了以 LINUX 開頭的一行。
未編輯的完整行如下:
linux /vmlinuz-3.19.0-32-generic root=UUID=0c031f3a-81ae-4c33-06cc--c82a855736d1 ro quiet splash $vt_handoff
然後建議說查看並編輯splash quiet
到single
.現在,如果您注意到上面它說的是quiet splash
而不是splash quiet
。所以我想我應該將其編輯quiet splash
為single
.
現在它要求輸入 root 密碼。有人可以幫忙嗎?我想我需要一張 Live CD。
答案1
當您替換quiet splash
或splash quiet
(順序無關緊要)時到底會發生什麼single
取決於分佈。大多數發行版都會要求輸入 root 密碼。
如果您不記得 root 密碼,或者您只想以最簡單的方式啟動,則可以將quiet splash
(以及$vt_handoff
就此而言)替換為init=/bin/bash
。該行應該看起來像
linux /vmlinuz-… root=… ro init=/bin/bash
各部分之間的空白量並不重要,只要在之前有空格的地方至少留出一個空格即可。我上面替換的部分…
很重要,你必須保留之前的部分。刪除除前導詞linux
、其後的詞root=…
以及ro
和 添加 之外的所有內容init=/bin/bash
。
當你啟動時,你會看到一個 bash 命令列,以 root 身分執行。當您擁有實體存取權限時,唯一可以阻止您進入的安全措施是加密。 (如果您的系統有全碟加密,則需要輸入加密密碼。)
在此命令列中,執行以下命令:
mount -o remount,rw /
mount /proc
然後就可以檢視和修改用戶資料庫了。主要的使用者資料庫檔案是/etc/passwd
.它包含使用者名稱(實體使用者和系統帳戶),但密碼位於不同的檔案中/etc/shadow
。這兩個文件在某種程度上都是人類可讀的。但您無法恢復密碼;如果您忘記了密碼,您所能做的就是更改它。
以下命令列出具有密碼的帳戶:
grep -v ':[*!]:' /etc/shadow
(仔細輸入,它對精確的標點符號非常敏感。)每行的第一部分(在第一個:
符號之前)是使用者名稱。
如果您想更改帳戶的密碼,請執行
passwd rob
rob
用戶名在哪裡。
記下使用者名稱並根據需要更改密碼後,運行
mount -o remount,ro /
reboot
答案2
按著這些次序:
- 從 Live CD 啟動
- 在即時環境中開啟終端
- 運行命令
lsblk
,您將獲得磁碟機和分割區的清單。其中之一應該是安裝 linux mint 的根分區(sdxn,x 是字母,n 是數字?)。 - 將根分割區掛載到空目錄上
- 開啟
etc/passwd
已安裝分割區中的檔案。這應該在其中一行中包含您的用戶名,您應該能夠識別它。
答案3
http://www.microhowto.info/howto/reset_a_forgotten_root_password_using_a_live_distribution.html
那篇文章似乎很好地涵蓋了這一點。是的,您需要一張現場 CD。
在文章中,他為您提供了一種替代方法,他指出,這是一種非常危險的方法,即直接編輯密碼檔案。聽從他的建議,不要嘗試這樣做。
不值得逐字複製他的方法,因為它解釋得很好且完整,並且按照執行所有步驟所需的詳細程度,每個步驟都有程式碼範例。
這並不難,只要嚴格遵守說明即可。
基本上,您啟動到要更新的系統上的 live cd,然後在要更新的系統上安裝根檔案系統,chroot 到該安裝點,然後使用 passwd 變更密碼。這聽起來可能令人生畏,但實際上並非如此。請注意,有些系統有/mnt,而其他系統有/media,預設情況下,只需在建立掛載目錄時使用您的live cd 附帶的那個,這根本不重要,它只是您在建立掛載目錄時要使用的路徑您 chroot 進入您嘗試更新密碼的系統。
順便說一句,很多 live cd 都會用這個指令給你 root(我想就是這樣,已經有一段時間了,呵呵):
sudo su -
您需要成為 root 才能在 live cd 上執行這些操作,因此只需檢查 live cd 文檔,了解如何允許 root 使用者登入 live cd 上的 shell。