修改了Ubuntu下的/usr目录权限,导致不能使用sudo命令的修复

刚开始运行sudo时,报了下面这个错误

sudo: must be setuid root,于是上网找解决方法,搜索出来的都是这样解决的    

ls -l  /usr/bin/sudo
chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo

reboot

我测试后的结论是,这个方法是可行的,但没有说清楚,需要有root的执行权限,如果不能以root身份登陆,

则需要进入到recovery模式,进入方法为:在开机的过程中按shift或ESC键,我ubuntu12.04系统是shift键。

然后在grub菜单中选择第二个启动项,进入到下一个选择列表界面后,再选中有root字样的一项,按回车,

此时,已经进入到具有root权限的字符界面。输入上述命令,如果问题已解决,那大功告成,可以跳过下面内容


我又遇到一个新问题,在此字条界面输入上面的

chown root:root /usr/bin/sudo

chmod 4755 /usr/bin/sudo时,执行失败,

提示read-only file system,然后又上网找,找了N久,测了很多方法,最后找到一个重新挂载/目录以及指定其读写权限命令命令如下:

mount -o remount,rw /

网址:http://www.linuxquestions.org/questions/linux-general-1/cannot-edit-fstab-in-recovery-mode-filesystem-is-read-only-540195/

然后再输入上述命令

chown root:root /usr/bin/sudo

chmod 4755 /usr/bin/sudo

可以了,执行成功。输入ls -l  /usr/bin/sudo验证修改是否成功,结果显示已经修改了。

以为问题解决了,高兴的输入reboot命令重启。

悲吹的一幕出现了,输入sudo还是有问题,

提示“sudo: /usr/lib/sudo/sudoers.so must be only be writable by owner”,又得开始google了,

找到一个方法是说输入命令:(当然要进入recovery模式)

pkexec chmod go-w /usr/lib/sudo/sudoers.so 网址如下:http://blog.csdn.net/huangmou37/article/details/8259724

但我输入该命令时,执行失败,忘了提示什么错误信息了。

该问题的原因为自己错误的修改了/usr目录下的所有权限,那上述命令是不是更改回来的权限不够呢

于是想到了修改 /usr/lib/sudo/sudoers.so文件的权限,输入命令

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

然后reboot,输入sudo命令可以了。。。。。。。

### Ubuntu 中 `sudo apt update` 命令未找到的解决方案 在某些情况下,用户可能会遇到 `sudo apt update` 命令未找到的情况。这通常是由于系统缺少必要的包管理工具或者环境变量配置错误引起的。以下是详细的解决办法: #### 方法一:检查并安装 `apt` 工具 如果系统中确实缺失了 `apt` 软件包,则可以通过以下方式重新安装它: ```bash sudo dpkg --configure -a sudo apt install -f ``` 上述命令用于修复可能损坏的依赖关系以及强制安装必要组件[^1]。 接着尝试手动安装 `apt`: ```bash sudo apt-get install apt ``` #### 方法二:验证 PATH 环境变量设置 有时路径问题也会导致找不到命令的现象发生。通过输入以下指令来查看当前用户的 `$PATH` 是否正常包含 `/usr/bin/` 或其他标准可执行文件位置: ```bash echo $PATH ``` 如果没有看到预期目录,请编辑 `.bashrc` 文件并将默认路径恢复为常规状态: ```bash export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin source ~/.bashrc ``` #### 方法三:切换至根账户操作 对于部分特殊场景下的权限不足情况,建议临时切换到超级管理员模式再执行更新动作: ```bash su - apt update ``` 完成以上步骤之后再次测试原生调用效果是否恢复正常。 #### 方法四:清理缓存列表后再同步数据源信息 当存在残留旧版索引记录干扰新请求处理流程时,先清除现有清单有助于排除潜在冲突因素影响最终结果呈现形式。 ```bash sudo rm -rf /var/lib/apt/lists/* sudo apt clean all sudo apt autoclean sudo apt autoremove sudo apt update && sudo apt full-upgrade -y ``` --- ### 注意事项 - 如果仍然存在问题,考虑更换国内稳定可靠的镜像站点地址作为替代选项之一[^4]。 - 对于特定 PPA 添加引发的安全警告消息,需单独评估其可信度后再决定接受与否[^3]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值