Ubuntu 普通用户修改sudoers导致无法使用sudo的解决办法
问题描述
普通用户需要使用root权限,因此在普通用户中修改sudoers文件。修改过程中发现无法使用sudo命名。现象如下。
解决思路
使用pkexec命令
pkexec chmod 0440 /etc/sudoers
输入命令后,提示输入密码,但是如输入密码后,验证失败,并且提示如下错误。
解决用户认证失败问题
-
打开两个ssh终端,都是用ubuntu用户登录
-
在第一个终端输入以下命令,获取pid
echo $$
-
在第2个终端,输入:
pkttyagent --process 1634246
这里的1634246要替换成你的pid值。这时第2个终端会卡住,如下图。
- 回到第1个终端输入要执行命令
pkexec chmod 0440 /etc/sudoers
此时第1个命令端会卡住。
- 回到第2个命令端输入密码
等待输入密码,如下图。
输入密码即可。
输入密码后该窗口依然卡住。但是回到第1个端口,第一个端口已经恢复正常。
并且可以执行sudo命令。
问题解决。
参考
https://blog.youkuaiyun.com/yehe111/article/details/106691489#:~:text=sudo%3A%20%2F%20etc%20%2F%20sudoers.d%20%E5%8F%AF%E8%A2%AB%E4%BB%BB%E4%BD%95%E4%BA%BA%E5%86%99%20_lucky%20lures%E7%9A%84%E5%8D%9A%E5%AE%A2-优快云%E5%8D%9A%E5%AE%A2,%2Fusr%2Fbin%2Fsu%20%E8%A7%A3%E5%86%B3%20%3Asudo%3A%20%2F%20etc%20%2F%20sudoers%20%E5%8F%AF%E8%A2%AB%E4%BB%BB%E4%BD%95%E4%BA%BA%E5%86%99
https://blog.youkuaiyun.com/caijiapeng0102/article/details/84848473