如何清理新手 ubuntu 命令造成的后果

如何清理新手 ubuntu 命令造成的后果

以下是我遗憾地运行的命令:

sudo chgrp root /usr/bin sudo chgrp root /usr/local

我最近将一个用户添加到根组,由于我的用户仍然没有写权限,所以我认为我必须将组设置重新应用到这些目录(最初是root组)。

这导致了sudo指挥问题,即:

sudo must be setuid root

我已经修复了这个问题。然后 xubuntu 就无法启动了,这个问题我以某种方式修复了。现在 zsh 发出了抱怨:

zsh compinit: insecure directories, run compaudit for list.

我的问题是,我是否彻底毁掉了这个安装?如果没有,有没有办法修复权限?

答案1

要恢复 sudo 可执行文件的权限,您需要启动到恢复模式并从那里进行更改。具体来说:

  • 重启电脑
  • 选择“Ubuntu 恢复”选项 - 这将为你提供 root shell,而无需 sudo
  • 运行命令:

    chmod 755 /usr/bin/sudo

    chmod + s /usr/bin/sudo

  • 使用 ls 确认权限现在没问题:

    ls -l /usr/bin/sudo

  • 输出应该以以下内容开头:

    -rwsr-xr-x 2 根 根

此时,您可以测试 sudo 以查看它是否可以以 root 用户身份运行:

sudo echo "it works"

如果有效,那么您可以重新启动到普通的 ubuntu 会话并使用 sudo 修复其他需要修复的问题。

相关内容