sudo出现sudo:must be setuid root问题的解决方法

无意之间,使用sudo chmod -R 777 /usr命令修改了usr文件的所有者,导致sudo:must be setuid root问题的出现,即sudo命令无法使用。网上介绍的方法差不多都相同,就是通过下面两条命令:

chown root:root /usr/bin/sudo

chmod 4755 /usr/bin/sudo

但是实际上在出现问题的当前用户系统中上述两条命令是无法起到想要的目的的,应用上述两条命令必需在root用户下执行才有效。那么,怎样进入root用户呢,网上介绍的使用sudo passwd root 的方法肯定是行不通的,因为此时sudo命令已经发生错误了,只能使用另外的方法登录root客户端,这里使用ubuntu 的recovery模式。

首先,进入recovery模式。有的说是启动时按ESC键,有的是启动时按shift键,说法不一,都可以试试,我是使用shift键进入recovery模式的。注意,可以一次不能成功进入recovery模式,可以多尝试几次;

按照上图按enter键后,在出现的界面中选择root有关的那一列(记住:是root,不是newroot),enter后进入root用户系统;

此时,已经成功的进入root用户系统,在该系统中执行

chown root:root /usr/bin/sudo

chmod 4755 usr/bin/sudo

chmod 4755 /usr/lib/sudo/sudoers.so

关机重启,此时问题解决。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值