![sudo:必须是 setuid root (Mac OS X)](https://linux22.com/image/563110/sudo%EF%BC%9A%E5%BF%85%E9%A1%BB%E6%98%AF%20setuid%20root%20(Mac%20OS%20X).png)
我跑了
$ 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
。