Ubuntu 修改/usr/bin/sudo权限导致无法使用sudo的问题解决

问题描述:

由于误操作更改了/usr/bin/目录下所有文件的权限为777,导致sudo命令无法使用。su root命令验证失败。提示错误如下:

        sudo:/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位

解决方法:

因为su root也无法使用,而修改sudo为原始权限需要使用root账户,导致进入死循环。查阅多篇博客并总结解决方法如下:【Recovery 模式下直接免密进入root用户执行命令以修改】

1- 首先保证本机上有如下两个命令:chown 、chmod 如果没有需要安装。

我遇到的情况:chmod存在,chown没有,但是使用apt install chown需要使用sudo命令。然而sudo命令使用不了,再次陷入死循环。

解决方法:本机上有dpkg命令,可以离线安装软件包deb文件,然后通过命令dpkg -i xxx.deb进行安装。离线软线包下载地址:

Ubuntu – Ubuntu Packages Searchicon-default.png?t=M85Bhttps://packages.ubuntu.com/

示意图如下:输入关键词查找相应deb文件,同时如果提示有依赖包,也需要下载所依赖的deb文件。

例如下载chown依赖nodejs,所以下载了两个deb文件。分别是node-pegjs_0.10.0-1_all.deb、node-chownr_1.1.3-3_all.deb

下载完成保存在ubuntu机器上

2-进入recovery模式,安装chwod并且修改权限。

step1:启动或者重启ubuntu,在开机时按ESC键,出现如下界面:

step2:按下箭头键,选中Advanced options项,并且回车。将出现带有recovery的选项。下键选中并且回车。进入recovery 界面,如下:

step3:下箭头选中 root Drop to root shell prompt 然后回车,页面底部会出现:

 回车后将进入root用户。

step4:root用户下一次执行命令:

1)dpkg -i node-pegjs_0.10.0-1_all.deb

2)dpkg -i node-chownr_1.1.3-3_all.deb //可以验证chown命令是否有效

3)chown root:root /usr/bin/sudo //修改所有权用户为root

4)   chmod 4755 /usr/bin/sudo

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

6)   reboot //重启

-----------------------------------------------完成--------------------------------------------------------------------

仍存在的问题:

虽然sudo命令可以使用,密码仍为原密码。但是su root还是不行,而且通过sudo passwd root命令修改root密码成功并且重启电脑后,仍然验证失败。但是sudo可以用了,反正也不影响啥,先用着

 

 

 

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值