參考文檔:https://www.cnblogs.com/ImJerryChan/p/6667819.htmlhtml
若是用普通用戶切換root 權限 :sudo: effective uid is not 0, is sudo installed setuid root?ui
用ls -l /usr/bin/sudo, 會發現該文件會顯示紅色,而且全部者是root,就是uid爲0的用戶。而且該全部的執行爲設置爲s(SUID),意思是執行該程序的用戶將暫時得到全部者即root帳戶的權限。
原理是:sudo會檢查/etc/sudoers裏面是否認義了當前用戶對某條命令的使用定義,例如若是你用了:sudo useradd user1,那麼sudo會檢查user1是否有useradd的使用權限定義。若是有,就會暫時提高user1的權限爲root權限來執行useradd操做。不然,就會拒絕執行。spa
解決辦法:htm
chown root.root /usr/bin/sudoblog
chmod u+s /usr/bin/sudo 若是還報錯則 文檔
chmod go-w /usr/libexec/sudoers.soget
主要是運用到一條命令 yum reinstall `rpm -qf /usr/bin/sudo`原理