重置 root 密碼 - Arch Linux 中文维基

跳至內容

# 重置 root 密碼

出自 Arch Linux 中文维基
翻譯狀態：

- 本文（或部分內容）譯自 Reset lost root password，最近一次同步於 2025-01-09，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

本指南介紹了在遺忘 root 密碼後，重置密碼的幾種方法。

警告：攻擊者可以使用以下部分方法攻入系統。除非使用靜態數據加密，否則無論系統和密碼有多安全可靠，只要攻擊者可以物理接觸設備，就能啟動到其它系統並導出數據。

## 使用 sudo

如果你安裝了 sudo，並對 `wheel` 用戶組或其它你記得密碼的用戶授予了權限，那可以使用 `sudo passwd root` 命令修改 root 密碼。

## 使用 debug shell

1. 將 `systemd.debug_shell` 附加到內核參數。
2. 系統將會正常啟動，但同時會啟動 `debug-shell.service` 服務，並在 `tty9` 開啟一個 root shell（`/bin/sh`），按下 `Ctrl+Alt+F9` 可以進行訪問。
3. 使用 passwd 命令為 root 用戶創建新密碼。
4. 完成後，停止 `debug-shell.service`。

## 用 Bash 作為 Init

1. 將 `init=/bin/bash` 內核參數附加到啟動加載器的啟動項。
2. 根文件系統應該是只讀掛載，需要以可讀寫模式重新掛載：`mount -n -o remount,rw /`
3. 用 passwd 創建新的管理員密碼。
4. 通過 `reboot -f` 重啟，不要再次忘記你的密碼。

注意：使用此法時有的鍵盤不能被初始系統正確加載，可能無法在 bash 提示符後進行輸入。如果出現這種情況，你只能使用其他方法。

## 使用 LiveCD

通過 LiveCD 可以使用好幾種方法：chroot 並使用 `passwd` 命令，或者編輯密碼文件直接刪掉密碼項。除使用 chroot 時架構必須與已安裝的系統匹配外，可以使用任何 Linux 的 LiveCD。這裡僅介紹 chroot 方式，因為這個方法更不容易出錯。

### Change Root

1. 啟動 LiveCD, 掛載主系統的根文件系統。
2. 然後通過下列命令重置密碼（不會出現要求輸入舊密碼的提示）：

    passwd --root 根文件系統掛載點 用戶名

1. 卸載根文件系統。
2. 重啟並輸入你的新密碼。

## 參閱

- 如何用 Knoppix 重置忘記的密碼
- 啟動早期 Debug Shell

分類：​

- 系統恢復
- 安全

重置 root 密碼
新增話題