我意外地运行了sudo chown -R -v myuser:myuser /
,实际上是sudo
错误地转移到我自己的用户。我本想只获取当前目录。
我该如何恢复?我在几秒钟后停止了它,但sudo
现在运行任何程序都会给我:
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
答案1
没有比重新安装更简单的恢复方法了。并非所有系统文件都只需要由特定用户或 root 拥有,甚至它们也不一定遵循某种模式。整个系统中有许多文件和目录依赖于由特定的特殊用途帐户拥有。
理论上,你可以将系统上每个文件的所有权(用户和组)与全新安装的 Ubuntu 中的所有权进行比较,编写一个脚本来复制该所有权信息。但即使这样也很麻烦,而且容易出现极端情况。因为这无论如何都涉及安装 Ubuntu,所以你不妨重新安装。
答案2
我看到了重复的。
你有没有尝试过 https://askubuntu.com/a/471503/772996
- 退出当前用户身份,然后重新以 root 身份登录。
- 执行 chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
- 以 root 身份注销,然后以当前用户身份重新登录。
但也许为了进行全新安装,您应该正确地重新安装。