Bug | Linux无法切换root用户权限

问题描述

Linux系统sudo su无法切换成root超级用户权限

具体报错:
sudo:/usr/lib/sudo必须属于用户id 0的用户并设置setuid位
sudo:在加载插件“sudoers_policy”时在/etc/sudo.conf第0行出错
sudo:/usr/lib/sudo/sudoers.so必须只对其所有者可写
sudo:致命错误,无法加载插件

原因分析:

原因是给/usr赋予了全部权限

突然系统进不去root用户,网上查找原因发现是本人手贱不小心给/usr解开了所有权限,导致终端切换root权限不成功。在网上找了很多帖子不成功,一度以为要重装系统了。

解决方案:

从恢复模式将相关文件手动修复权限

  1. 重启系统,进入GRUB恢复模式(启动时按住Shift or Esc or Delete,不同操作系统按键不同),选择e进入编辑模式;
  2. 找到linux或者Linuxefi开头的那一行,删除ro quiet splash,在结尾输入rw init=/bin/bash,如果不成功,则改为输入systemd.unit=rescue.target,按Ctrl+X或者F10启动;
  3. 系统会直接进入root终端,在终端中输入:
chmod 755 /usr
chmod 4755 /usr/bin/sudo

或者

chmod 644 /usr/lib/sudo/sudoers.so
chown -R root /usr/lib/sudo
  1. Ctrl+Alt+Delete重启
  2. 如果开机后切换root权限报错一些lib依赖库不是root权限,重复以上操作,修改这些依赖文件的权限即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值