Centos sudo 权限问题
问题
不小心使用了 chmod -R 777 /usr
将Centos的usr目录下所有的文件所有权限都改为可执行,可读写
然后难受的事情来了
执行 sudu su 命令获取root权限的时候发现问题
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
如果你现在在其它窗口还登录着root用户的话,那恭喜有直接的办法解决问题
执行下面的命令
chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo
然后再次执行 sudo su发现如下报错
sudo: error in /etc/sudo.conf, line 19 while loading plugin "sudoers_policy"
sudo: /usr/libexec/sudo/sudoers.so must be only be writable by owner
sudo: fatal error, unable to load plugins
发现还是无法解决问题,在找了很多办法都无法解决的时候,发现有人执行pkexec chmod go-w /usr/lib/sudo/sudoers.so
说可以解决问题,如果还在root用户下,根据上面报错的目录修改指令,我的是pkexec chmod go-w /usr/libexec/sudo/sudoers.so
但是现在问题是我不在root用户下,并且现在无法获得root权限,进入了一个死循环
还好有最后的解决办法
无法登录root用户的解决办法
centos7 进入安全模式
- 1、重启系统
按E
编辑
- 2、进入后,找到linux16 开头的一行!按向右的方向键,定位到ro 然后修改ro为rw,并添加如下红框内的命令行!
- 3、使用下面的提示使用
Ctrl
+X
进入系统,其实只是进入了一个安全模式下的内存系统,并不是真正的咱们正常使用的linux系统,然后输入chroot /sysroot/
进入我们正常的系统里面的文件
然后执行刚刚说的命令
目录根据自己的报错修改
pkexec chmod go-w /usr/libexec/sudo/sudoers.so
然后按Ctrl
+Alt
+Delete
重启系统
进入后输入sudo su
发现可以获取root用户权限了。
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: