就其他方面而言,其他答案都是正确的,但它们并未回答可能会出现此问题的原因以及如何解决该根本原因。
原因
有两个可能的原因导致此问题:
- 自家安装是由您当前使用的用户以外的其他用户执行的。Homebrew希望只有最初安装它的用户才想使用它。
- 您安装了一些不使用brew即可写入/ usr / local的软件。
brew doctor
如果您运行它,这就是原因提示。
解
多用户自制软件
如果您有多个用户帐户,并且希望多个用户帐户可以使用brew,则需要执行几个步骤,否则,每次切换用户时,您都将不得不不断更改Homebrew文件结构的所有权,那不是一个好主意。
详细说明可以在网上找到,但是快速的答案是这样的:
创建一个名为brew 的组:
- 开放系统偏好设置
- 点击帐户
- 点击“ +”(必要时先解锁)
- 在新帐户下,选择组
- 进入冲泡
- 单击创建组
- 选择酿造组,然后向其中添加要使用酿造的用户帐户。
- 更改/ usr / local文件夹组的所有权:
sudo chgrp -R brew /usr/local
- 更改权限以将写操作添加到/ usr / local作为组:
sudo chmod -R g+w /usr/local
- 更改自制缓存目录组:
sudo chgrp -R brew /Library/Caches/Homebrew
- 更改自制缓存目录权限:
sudo chmod -R g+w /Library/Caches/Homebrew
单用户自制
如果您不打算对Homebrew使用多个用户,则基于的建议,其他答案提供的解决方案brew doctor
可能就足够了:
sudo chown -R $(whoami) /usr/local
sudo chown -R $(whoami) /Library/Caches/Homebrew
验证
完成这些步骤后,假设您已经注销并重新登录以应用新的组成员身份(如果您使用多用户路线),则brew doctor
应该报告brew组中的任何用户成功。如果您只是针对单用户自制程序进行了更正,则无需注销并重新登录,因为您的组成员身份均未更改。