在適用於 Linux 的 Windows 子系統中重置丟失的 Root 密碼

Jacki

在 Windows 10 上安裝 Ubuntu 或 Kali Linux 子系統後忘記了 root 密碼?我怎樣才能重置它?自 Fall Creators Update 以來,您可以使用名為“Windows Subsystem for Linux”的功能直接在 Windows 10 上運行不同的 Linux 發行版。在本教程中,我們將向您展示一種簡單的方法來重置 Windows 10 中任何 Linux 子系統丟失的 root 密碼。

如何在 Linux 的 Windows 子系統中重置丟失的 Root 密碼

  1. 要在 Windows 10 上打開 Linux 實例的終端,只需單擊任務欄中的 Cortana 搜索框,然後鍵入 Linux 發行版的名稱(例如“kali linux”、“ubuntu”)即可啟動它。

  2. 運行以下命令找出每個 Linux 帳戶的用戶 ID。
    cat /etc/passwd

    從上面的屏幕截圖中可以看到,root 帳戶的用戶 ID 為 0。我使用的帳戶名為“pcunlocker”,其用戶 ID 為 1000(或十六進制的 0x3e8)。

  3. 現在關閉終端並打開註冊表編輯器。導航到以下鍵:
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss

    您可能會看到一個或多個以每個 Linux 發行版的 GUID 命名的子項。瀏覽下面的每個 GUID 鍵,注意相應的發行版名稱在右側。

  4. 當您找到要為其重置 root 密碼的 Linux 實例的 GUID 密鑰時,雙擊默認UID右側的 DWORD 並將其更改為 0(root 的用戶 ID)。

  5. 關閉註冊表編輯器並重新啟動 Windows 10 計算機。
  6. 下次打開 Linux 應用程序時,它將以 root 用戶身份啟動終端。類型密碼然後按 Enter 鍵,它會讓你創建一個新的 root 密碼。

    使用“密碼 用戶名”命令,您可以重置任何其他 Linux 帳戶的忘記密碼。

  7. 至此,您已成功重置丟失的root密碼。現在打開註冊表編輯器並返回到之前的註冊表項,更改該值的數據默認UID返回到您默認帳戶的用戶 ID。

    在我的示例中,我設置了默認UID將值恢復為“1000”(或十六進制的 0x3e8),因為我希望 Windows 10 默認情況下以“pcunlocker”用戶身份打開 Linux 終端。

    另請閱讀:在 VMware ESXi 中重置 Root 密碼

就是這樣!