linux sudo命令失败 提示sudo:/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位

Posted chxwkx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux sudo命令失败 提示sudo:/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位相关的知识,希望对你有一定的参考价值。

这是一个神奇的错误,缘由是因为有人将/usr/bin/sudo的权限改为777或其他。

解决办法:

1.如果知道root密码。

su登录root用户,执行命令chmod 4755     /usr/bin/sudo    执行命令chmod 755 /usr

2.不知道root密码。

重启机器,ubuntu下按esc或shift,进入recovery模式,进入后选择root选项,有的会提示输入root密码,有的不会。

(1).不需要输入root密码的情况下,执行chmod 4755     /usr/bin/sudo 

执行命令chmod 755 /usr

(2)需要输入root密码的难兄难弟们,请往下看。

重启的时候,进入ubuntu高级选项(有的系统是英文的,自己翻译,大概是Advanced options for ubuntu这样),之后能看到recovery 啥啥啥的,按e进入,找到linux /boot/vmlinuz-----*** ro recovery nomodestset 

这句话,然后将ro recovery nomodestset啥啥啥一大串修改为rw single init=/bin/bash,然后ctrl+x进入单人模式。

此时,想要更改root密码的输入passwd 密码,之后再确认一次就更改成功了。

执行chmod 755 /usr  执行chmod 4755     /usr/bin/sudo 

重启(reboot),世界都安静了。

3.题外,如果重启之后,提示sudo:在加载插件“sudoers_policy”时在 /etc/sudo.conf 第 0 行出错的难兄难弟们。

必须用单人模式(即第2点第2条)进行重置root密码(如果不知道的话),重启进入系统,然后卸载sudo,然后重装就可以了。ubuntu命令如下:apt-get remove sudo

执行apt-get install sudo。然后世界都安静了。

加油变强,赚钱+15。

以上是关于linux sudo命令失败 提示sudo:/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位的主要内容,如果未能解决你的问题,请参考以下文章

sudo命令:解决使用Linux命令行时出现的错误提示

linux su和sudo命令的区别

升级到 1.9 后,使用 sudo 复制 Ansible 文件失败

sudo -i和sudo -s有啥区别

新创建的用户不能使用sudo 命令

linux命令 之 sudo命令详细介绍