1. 程式人生 > >因修改/etc/sudoers許可權導致sudo和su不能使用問題

因修改/etc/sudoers許可權導致sudo和su不能使用問題

現象描述及問題解決

真是閒來無事手賤,作死的節奏,請不要問我為什麼,我也想知道為什麼。為了給一個賬戶新增能使用sudo的許可權,修改了/exc/sudoers檔案許可權。修改完之後發現所有的賬戶都無法使用sudosu命令了。

起因:
因執行 $ sudo chmod 777  /etc/sudoers而引起。
注意: 此操作一定不要執行。
修改後的/etc/sudoers許可權變成了777.但是改變了這個,目錄的許可權sodusu就不能用了,當你再使用sodu命令就會爆如下問題:
sudo: /etc/sudoers is world writable
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

這個是

linux為保證系統安全所做的限制,

解決方法1 

這個方法是在網路上找的,使用的命令是可行的命令,但是其修改的許可權為555,讓我有限不理解。

但是出於對原作者的尊重,此處採用他的原文中描述的方法。

terminal視窗下,依次執行如下兩條命令:

pkexec chmod 555 /etc/sudoers
會彈出一個輸入框,輸入root使用者的密碼
pkexec chmod 555 /etc/sudoers.d/README
會彈出一個輸入框,輸入root使用者的密碼
如圖所示:

 

經驗證貌似無效,顯示檔案或路徑可能不存在(可能是密碼搞錯了)

解決方法2

pkexec chmod 0440 /etc/sudoers

如圖所示:


執行完之後未有報錯。

測試:輸入sudo su
如果顯示要輸入密碼,則成功!

pkexec[命令]

 

說明:允許一個授權使用者賬號使用另一個使用者賬號去執行PROGRAM如果沒有指定使用者名稱,那麼程式將管理超級使用者root的許可權來執行