Sudo 权限混淆

Mir*_*run 7 permissions root sudo

我在试图让 autogen.sh 工作时弄乱了 ubuntu 并做了一件愚蠢的事情。我输入:

sudo chown -R emilia /usr/bin/
Run Code Online (Sandbox Code Playgroud)

之后我就不能再使用 sudo 了。

我到目前为止尝试过:

以 root 身份登录并输入:

chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
Run Code Online (Sandbox Code Playgroud)

没有帮助。

我进行了一些测试,结果如下:

emilia@emilia:~$ ls -la /usr/bin | grep -v "root *root"
total 147656
drwxr-xr-x  2 emilia root      65536 Aug 14 16:06 .
-rwxr-xr-x  1 emilia root      51920 Feb 18 14:37 [
lrwxrwxrwx  1 emilia root          8 Aug  7 16:04 2to3 -> 2to3-2.7
-rwxr-xr-x  1 emilia root         96 Jul  2 21:02 2to3-2.7

emilia@tenshi:~$ ls -la /usr/bin | grep -v "rwxr-xr-x\|^l"
total 147656
-rwxrwxr-x  1 emilia emilia       22 Aug 14 16:06 autogen.sh

emilia@emilia:~$ ls -l /usr/bin/sudo
-rwxr-xr-x 1 emilia root 136808 Maj  4 19:25 /usr/bin/sudo
Run Code Online (Sandbox Code Playgroud)

Sto*_*ord 14

既然你不能再使用sudo了,你可以做两件事:

  1. 如果您设置了 root 密码(不是您的用户密码),请su在终端上使用,您将能够通过使用该密码使用 root 帐户。

  2. 如果您还没有设置 root 密码,您可以重新启动系统并进入恢复模式,然后打开一个root会话。由于您尚未设置 root 密码,因此不会要求您输入密码。之后,键入:mount -o rw,remount /并按Enter以启用对系统的读/写访问。

通过上述任一方法获得 root 访问权限后,发出问题chown -R root:root /usr/bin,您应该可以恢复正常工作了。


ins*_*ere 10

您的命令不起作用,因为恢复模式将文件系统挂载为 read-only。要使其可写,请运行以下命令:

mount -o rw,remount /
Run Code Online (Sandbox Code Playgroud)

现在,执行:

chmod 4755 /usr/bin/sudo
chown -R root:root /usr/bin
Run Code Online (Sandbox Code Playgroud)

修复权限。