sudo:必须是 setuid root (Mac OS X)

sudo:必须是 setuid root (Mac OS X)

我跑了

$ sudo chown -R $USER /usr/bin 

现在,当我尝试以 sudo 身份运行 /usr/bin 路径下的程序时,我得到了

sudo:must be setuid root

如果我想恢复 chown,该怎么办?

答案1

运行磁盘实用程序,选择启动卷,然后使用“修复权限”。由于 /usr/bin 中的文件(包括 sudo)是作为操作系统的一部分安装的,因此它知道它们的所有权和权限应该是什么,并且会正确地将它们设置回去。

答案2

xattr /usr/bin
com.apple.FinderInfo
com.apple.rootless

xattr -d <extended_attribute> /usr/bin

这将删除该属性,以便您可以执行命令,然后确保在完成后重新启用该属性:

xattr -w <extended_attribute> /usr/bin

这将重新启用该属性。

澳兹

答案3

您需要将chown文件返回到root所有chmod u+x应设置为 root 的程序。

答案4

我不熟悉 OSX,但在 Linux 中,您可以通过运行su -以 root 身份登录来完成此操作chown -R root /usr/bin

相关内容