不能在 Mac OS X 10.13 High Sierra 中自制/usr/local

家酿需要在/usr/local 的权限,因为没有其他人使用我的笔记本电脑,我总是简单地这样做

sudo chown -R $(whoami) $(brew --prefix)

但是在 High Sierra

chown: /usr/local: Operation not permitted

解决办法是什么?

94627 次浏览

不幸的是,你不能再咀嚼高山脉 /usr/local。如果 sudo mkdir /usr/local/include/usr/local/Frameworks不存在,则对它们进行变通,并且

sudo chown -R $(whoami) $(brew --prefix)/*

感谢 ilovezfs 为这个简单的解决方案和惊人的自制!

我遵循 这个,但问题仍然存在。
所以,我重新安装了 自酿的而没有卸载之前的一个。它现在正在工作!
(我不知道怎么做)

您不能更改 /usr/local本身的权限,但是您可以更改下面文件夹的正确权限,因此这修复了
sudo chown -R $(whoami) /usr/local/*

这个问题一直在发生... 在深入研究之后,我发现只有卸载 Homebrew 然后重新安装它才能解决这个问题。

卸载将删除所有的酿造包,您可以保存在一个文件中的 brew list的输出首先,有什么包安装的记录。

卸载自制程序:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

然后重新安装:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

如果您正在使用 zsh 因为您来自 bash,所以可能需要更改 $PATH。 您应该添加 < code > export PATH = $HOME/bin:/usr/local/bin: $PATH 在

然后它应该工作,这个问题解决在我的 Mac 通过这种方式。

我只要负责这个,一切都会在 High Sierra 搞定:

/usr/bin/ruby-e“ $(curl-fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

尝试禁用 系统完整性保护:

可以使用 csrutil (1)命令配置系统完整性保护。

通过在终端中运行以下命令,您可以检查系统完整性保护当前是否在您的系统上启用:

$ csrutil status
System Integrity Protection status: enabled.

要启用或禁用系统完整性保护,必须从终端启动恢复操作系统并运行 csrutil (1)命令。

通过重新启动计算机并在启动时按住 Command 和 R 键来启动恢复操作系统。 从“实用程序”菜单启动终端。 输入以下命令: $ csrutil enable

启用或禁用计算机上的系统完整性保护后,需要重新启动。

确保主文件夹或安装需要访问的任何文件夹上没有锁定设置。

即使权限和所有权设置正确,并且当前使用正确的用户/根用户登录,也不允许创建新的文件夹或目录。

我没有/user/local/Framework 文件夹,所以这个文件夹为我修复了它

sudo mkdir -p /usr/local/Frameworks
sudo chown -R $(whoami) /usr/local/Frameworks

我有 OSX 高塞拉利昂

我也在10.13 High Sierra 上。我尝试了以前的建议,没有一个奏效。最后我试着先安装 命令行工具命令行工具:

xcode-select --install

然后(重新)运行 brewinstall 命令:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

终于成功了。

我正在使用 MacBook Pro MacOS Catalina 10.15.4

我创建了一个 new admin account,但酿造抛出了一个错误。

因此,我从这篇文章中学到了一个步骤,有效的方法是:

sudo chown -R $(whoami) $(brew --prefix)/*