給普通用戶賦予sudo權限后報錯,提示/etc/sudoers文件權限拒絕


在Ubuntu 16.04系統里給普通用戶賦予sudo權限,編輯vi /etc/sudoers 文件內容后發現執行sudo命令報錯。

  當我運行命令檢查sudo權限的時候 sudo -i 輸出錯誤提示:

>>> /etc/sudoers: syntax error near line 24 <<<
sudo: unable to stat /etc/sudoers.d/README: Permission denied
sudo: parse error in /etc/sudoers near line 24
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

  仔細看這段提示是說運行sudo命令的時候遇到4個錯誤。分別是:

/etc/sudoers.d/README文件沒有權限

/etc/sudoers文件內容第24行有語法錯誤

找不到有效的sudoers源

無法初始化策略插件

 

  於是,切換到root用戶,執行 vi /etc/sudoers 編輯文件內容,將第24行的錯誤改正(注釋掉)之后保存退出。然后再出來切換到之前的普通用戶執行 sudo -i 輸出錯誤提示只剩下一個:

sudo: unable to stat /etc/sudoers.d/README: Permission denied

  明白了,是應為文件權限的問題。切換到root用戶修改用戶和權限就行了:

chown -R root:root /etc/sudoers.d
chmod u=rwx,g=rx,o=rx /etc/sudoers.d/
chmod u=r,g=r,o= /etc/sudoers.d/*

  將sudoers.d文件夾的權限設置成root用戶和root組,root組只有執行的權限,只有root用戶有寫入的權限。

至此,再次切換回普通用戶,執行 sudo -i 命令發現正常。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM