錯誤:/etc/sudoers 不工作 - 所有權錯誤

錯誤:/etc/sudoers 不工作 - 所有權錯誤

我的客戶端系統上有 Ubuntu 12.10。我有一個錯誤/etc/sudoers is owned by uid 1000 should be 0。我嘗試從 Ubuntu Live CD 啟動並嘗試:

sudo chown root:root /etc/sudoers

sudo chmod 440 /etc/sudoers 

sudo chown 0.0 /etc/

但它不起作用。一直報錯:

sudo : /etc/sudoers is owned by uid 1000 should be 0.

我該如何解決這個問題?

答案1

您應該已經是 live CD 的 root 權限並且可以省略該sudo部分。運行chown root:root /etc/sudoers修復。或啟動復原以取得 root shell。

答案2

我猜你是chown在實時系統上複製的。您需要在已安裝的系統上執行此操作,路徑可能是.至少如果您使用 GUI 來安裝驅動器。/media/something/etc/sudoers

或者,您可以將系統引導到救援模式(應該是 GRUB 提示符下的一個選項),這有望為您提供 root shell,此時您可以執行chown root:root /etc/sudoers.

答案3

如果這個問題不是運行 Live CD 的一個微妙問題,正如其他答案已經討論過的那樣,那麼您的 root 帳戶可能有問題。

檢查 /etc/passwd 中的 root 條目。第三個和第四個欄位(用冒號分隔)都應該為 0;像這樣的東西:

root:x:0:0:root:/root:/bin/bash

如果 root 以某種方式獲得了 UID 1000,那麼為什麼將所有權設為 1000 就有意義了chown root:root /etc/sudoers

答案4

首先執行以下命令

$ su -root

它會要求輸入密碼,然後一一執行以下命令

chown root:root /etc/sudoers 
chmod 440 /etc/sudoers
chown -R root:root /etc/sudoers.d
chmod  755 /etc/sudoers.d 
chmod  440 /etc/sudoers.d/*

相關內容