总结:问题原因主要是修改了sudo相关的权限,要进入ubuntu的Recovry模式以root身份对sudo做权限修改
问题产生:执行了如下命令后
sudo chmod -R 777 /
再次执行sudo会报错
sudo:/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位
环境为Ubuntu18,安装时没有更改root密码,root初始密码不知道,按照网上的说法是进入recovery模式,修改sudo的权限,我的解决流程如下
1,重开机,连续按shift键(不是每次都能进入,多试几次),会进入"GNU GRUB 2.02版"界面(即grub引导界面),选择"ubuntu高级选项",如下图
2,上步之后进入如下界面,选择recovery mode
3,上步之后进入如下界面,选择"root"
底下会提示"Press Enter for maintenance 。。。"
按Enter键,即可输入命令
4,依次输入如下命令后,再执行reboot即可
chmod 4755 /usr/bin/sudo
chmod 755 /usr
pkexec chmod 555 /etc/sudoers
pkexec chmod 555 /etc/sudoers.d
pkexec chmod 555 /etc/sudoers.d/README