出问题原因:
在ubuntu建立用户后需要sudo权限,于是修改/etc/sudoers下的内容,一开始不让加东西,后来干脆加了777的权限,再然后出现sudo不能用的现象
sudo: /etc/sudoers is world writable
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
运行sudo ls出现以上的现象
解决方法1
sudo chmod 440 /etc/sudoers
出这种解决方案的是不是脑子有泡,sudo都不能用了还用sudo
解决方法2
进入root账户直接运行chmod 440 /etc/sudoers
当然我是进不去root账户的,谁没事设置的root账户啊
解决方法3
pkexec chmod 0440 /etc/sudoers
这种解决方法与运行程序后还是让输入一个莫名奇妙的密码,输入当前账户的密码后又不可以出现了一下错误
polkit-agent-helper-1: error response to PolicyKit daemon: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for cookie
==== AUTHENTICATION FAILED ===
Error executing command as another user: Not authorized
终极解决方法(亲测有效,适合不知道root密码,忘记root密码的)
该方法本质是解决方法3的报错问题,参考其他csdn博主
开两个putty 窗口,都使用 ssh 链接到这台机器
窗口1:输入 echo $$ 会返回一个pid
窗口2:输入 pkttyagent --process yourPid, 输入之后窗口2会卡住不动
窗口1:输入 pkexec chmod 0440 /etc/sudoers,输入后窗口2会走下一步,输入密码
窗口2:输入密码
窗口1:显示修改成功
原文链接:https://blog.csdn.net/weitao_11/article/details/122358956