Terminal /usr/bin/sudo必须由uid 0拥有并设置了setuid位

Terminal /usr/bin/sudo必须由uid 0拥有并设置了setuid位,terminal,root,sudo,chown,Terminal,Root,Sudo,Chown,我的Mac电脑(El Capitan)有usr/bin/sudo问题 当我从NPM安装时遇到权限问题,并按照他们的指示进行操作时,问题就开始了: 我发现我在这里做了一件非常愚蠢的事: 我打开终端,得到: malloc:*对象0x7fff38418900的错误:未分配要释放的指针*在malloc\u error\u break中设置断点以进行调试[进程被信号6终止] 这基本上扼杀了我的终端,因此也扼杀了我的工作 在单用户模式下重新启动时输入命令-S。我跑 fsck -fy 我的硬盘看起来还不

我的Mac电脑(El Capitan)有usr/bin/sudo问题

当我从NPM安装时遇到权限问题,并按照他们的指示进行操作时,问题就开始了:

我发现我在这里做了一件非常愚蠢的事:

我打开终端,得到:

malloc:*对象0x7fff38418900的错误:未分配要释放的指针*在malloc\u error\u break中设置断点以进行调试[进程被信号6终止]

这基本上扼杀了我的终端,因此也扼杀了我的工作

在单用户模式下重新启动时输入命令-S。我跑

fsck -fy
我的硬盘看起来还不错。然后我开始: 它告诉我修复权限,因为我有El Capitan,因此无法使用Disk Utility进行此操作。我运行:

sudo /usr/linexec/repair_packages --verify -standard-pkgs /
终端吐回:

sudo: effective uid is not 0, is sudo installed setuid root?
我更深入地挖掘:

我那么

$ /usr/bin/sudo mv /usr/local/bin/sudo /usr/local/bin/sudo-strange
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
我在这里找到了一个真正令人沮丧的答案:。但我是一个乐观主义者,所以我忽略了第一个答案,按照第二个答案告诉我的去做:

$ chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
chown: root: illegal group name
这说明root不存在。但是当我

$ whoami
root
所以我已经走到了死胡同,我真的不想花两天的时间重新安装所有的东西


有什么建议吗?

问题是您可能会将权限更改为directoty/usr/bin。为解决这一问题:

首先,请确保root是此目录/usr/bin的所有者:

Chown root:root /usr/bin
并更改此目录/usr/bin/sudo的权限:

chmod u+s /usr/bin/sudo

我和macOS sierra面临同样的问题。
在尝试了一些其他的事情,但每次都失败后,我注意到我的操作系统有一个挂起的更新,安装了更新,一切都恢复了正常。

这是因为权限问题

$ su
Password: <type your root password>
然后通过从用户输入来检查它

$sudo -l

这对我来说很好。

当我们搞乱了sudo文件的权限时,就会发生这种情况

启用根用户:

切换到根用户:

$ su
Password: <type the root password set while enabling root user>
(如果您记得更改权限的文件,请使用该文件而不是usr/local/bin/sudo)

这应该可以解决问题。
如果这仍然没有帮助,请尝试从根用户中删除/usr/local/bin/sudo。

使用
/usr/bin/sudo
执行命令

/usr/bin/sudo chmod 511 /usr/local/bin/sudo
/usr/bin/sudo chown root:wheel /usr/local/bin/sudo

/usr/bin/sudo chown -R root:wheel /usr/local/libexec/sudo/
/usr/bin/sudo chmod -R 511 /usr/local/libexec/sudo/

我和你有同样的问题,但不知道我是怎么得到的。我也有malloc错误,我通过更新到最新版本的macOS解决了这个问题,现在声音和终端都不工作了。要修复磁盘权限,请重试。这对我不管用,但对你可能管用。
$ su
Password: <type the root password set while enabling root user>
chmod root:root /usr/local/bin/sudo
/usr/bin/sudo chmod 511 /usr/local/bin/sudo
/usr/bin/sudo chown root:wheel /usr/local/bin/sudo

/usr/bin/sudo chown -R root:wheel /usr/local/libexec/sudo/
/usr/bin/sudo chmod -R 511 /usr/local/libexec/sudo/