如何使用 Linux Live CD 恢復 sudo 權限?

如何使用 Linux Live CD 恢復 sudo 權限?

我正在運行 Linux Mint 11,但我失去了使用權限sudo,顯然是由於不小心將自己從管理群組中刪除了。

當我使用該groups命令列出我所在的群組時,它僅顯示我的使用者 ID 和 vboxusers。我想我錯誤地使用了 usermod 而不是 useradd 將我的 ID 放入 vboxusers 群組中,因此我被從所有其他群組中刪除。

我在網路上找到的解決方案(如下:http://www.psychocats.net/ubuntu/fixsudo)描述在 GRUB 選單中選擇恢復模式、取得 root 提示並使用它將我的使用者新增回群組。但是當我這樣做時,它會要求輸入 root 密碼,我不知道密碼,因為 Linux Mint 和其他基於 Ubuntu 的發行版不允許您在安裝過程中查看或設定 root 密碼。

我有 Linux live CD,所以我可以透過這種方式獲得 root 權限,但這並不能讓我透過命令列操作 Mint 安裝中的使用者。但是,我可以使用它來編輯任何文件,那麼我應該編輯哪個文件以及如何編輯它以便我可以重新獲得管理員(以及因此的 sudo)權限?

我的 ID 仍在 sudoers 檔案中,如cat /media/mint/etc/sudoers執行 Live CD 時所示。

答案1

您必須啟動到復原模式才能獲得根(系統範圍)存取權限才能進行修復

如果您有單啟動(Ubuntu 是您電腦上唯一的作業系統),要顯示啟動選單,您必須在啟動過程中按住 Shift 鍵。

從啟動選單中選擇恢復模式

選擇恢復模式並等待所有啟動過程完成後,您將看到幾個選項。在這種情況下,您需要該Drop to root shell prompt選項。

/etc/group是定義系統上的群組的文件

然後,您可以使用adduser username admin將您的使用者重新新增至管理員群組。

或者,您可以使用該命令安全地vigr編輯文件/etc/group

格式範例;

group-name:x:group-number:user1,user2
admin:x:110:username

答案2

我最近在 Ubuntu 16.04 上遇到了完全相同的問題。我將我的用戶添加到一個沒有該-a選項的群組中,並從包括 在內的所有其他群組中刪除sudo,因此失去了將其添加回來的 root 權限。

我找到的解決此問題的解決方案需要我啟動到恢復模式。我無法執行此操作,因為我只有一個藍牙鍵盤,只有登入後才能使用。

我在另一個問題的答案中找到了解決這個問題的過程: https://askubuntu.com/a/435347/841719。對上下文進行輕微編輯後重新措辭

  1. 啟動至即時媒體。您可以使用 Ubuntu USB。
  2. 打開終端
  3. 使用以下命令找出主磁碟(根分割區“/”)的裝置名稱

    sudo fdisk -l
    
  4. 使用讀取/寫入模式將其安裝在某處,以便我們可以使用它(*將磁碟變更為sda1您的磁碟機名稱):

    sudo mount -o rw /dev/sda1 /mnt
    
  5. 使用 CD 插入已安裝的驅動器cd /mnt
  6. 使用編輯群組文件

    sudo gedit /etc/group 
    

    將您的使用者名稱新增至重要群組,例如 sudo、admin 等。
    格式範例:

    group-name:x:group-number:user1,user2
    admin:x:110:username
    
  7. 儲存檔案並退出

  8. 停止/mnt使用cd /
  9. 使用卸載驅動器umount /mnt(它給我帶來了一個錯誤,所以我忽略了這一步)
  10. 關閉 PC,移除可啟動的 Live USB 並啟動至本機 Ubuntu。
  11. 現在您應該已恢復 sudo 權限。透過輸入檢查

    sudo df
    

答案3

類似或可能相同的問題:出於某種原因,創建 USB live mint(在我的例子中是 mate+cinnamon)不允許您使用 sudo(因此您無法安裝)。

瘋狂的是你可以在非圖形控制台中su!

為了解決這個問題:

  • 打開終端機並輸入passwd
  • 給薄荷糖一個密碼
  • Ctrl+ Alt+F1前往非圖形控制台
  • 使用您的密碼以 mint 登入
  • 輸入su成為root
  • 型式echo "mint ALL=(ALL:ALL) ALL" >> /etc/sudoers(附引號)

相關內容