自制软件安装权限问题

我有一个标准的自制软件安装在usr / local /

当我尝试:

Larson-2:~ larson$ brew install postgresql Error: Cannot write to /usr/local/Cellar 

而当我使用sudo:

 Larson-2:~ larson$ sudo brew install postgresql Cowardly refusing to `sudo brew install' 

我究竟做错了什么?

你以某种方式有限的权限/usr/local/Cellar 。 Brew不喜欢用sudo安装,这也是它拒绝的原因。

检查权限:

ls -ld /usr/local/Cellar

打开他们写作:

sudo chmod a+w /usr/local/Cellar

使用brew时不要使用sudo (出于安全原因)。

你必须简单地设置你的权限。

所以我会更进一步,并将权限更改为:

 sudo chgrp -R admin /usr/local /Library/Caches/Homebrew sudo chmod -R g+w /usr/local /Library/Caches/Homebrew 

然后将特定组( adminstaff )应用于应该被允许使用brew命令的用户。 通过以下方式检查用户的组: id -Gn )。

如果还有其他问题,请运行: brew doctor ,看看有什么不对。

我会改变组权限:

 $ chgrp -R admin /usr/local/Cellar $ chmod g+w /usr/local/Cellar 

假设您的用户帐户在组pipe理员。

如果您的计算机上有多个用户,也会发生这种情况。 如果是这样,最好是你改变用户,因为每一个其他的方法会让你搞乱更多的文件和文件夹,而不仅仅是/ usr / local / Cellar

使用su userWhoInstalledBrew

问题可以通过将目录的所有者更改为当前用户来解决:

 sudo chown -R $USER /usr/local 

这个答案取自: https : //github.com/Homebrew/homebrew/issues/17884