允许多个用户使用自制软件安装软件


13

我使用其他用户帐户(在工作期间使用该帐户)安装了自制软件,但是无法通过新创建的个人帐户安装软件:

$ brew install unrar
Error: Cannot write to /usr/local/Cellar

A ls -dl /usr/local/Cellar/显示该目录归我的其他用户帐户所有。

如何配置自制程序以允许多个用户安装软件?


您可以这样做来从其他用户那里获得控制权sudo chown -R $(whoami) /usr/local
Nathan Lloyd

Answers:


13

umask首先为每个用户设置。(.basrc或.profile或.bash_profile)

umask 0002 # group write permission

然后通过/usr/local递归方式为组授予写权限:

sudo chmod -R g+w /usr/local/

然后将所有者更改为 staff

sudo chgrp -R staff /usr/local

现在,组中的每个用户staff都可以使用brew install和其他与冲泡相关的操作...大多数情况下,每个用户都在该组中。


1
我必须对/ Library / Caches / Homebrew做同样的事情才能使其真正起作用。而且由于我所有的用户都启用了管理员访问权限,所以我跳过了chgrp
Duvrai 2014年

1

在自制Wiki上,它提到您可以随意安装,请尝试为每个用户进行本地安装。


我真的不想要那个。我希望该软件能随处可见,无论安装它的人是谁。
2011年

我已经尝试过此操作,但愿您没有,因为您搞砸了用户权限
MatthewFord 2011年

1

如果您的帐户有根/ su/ sudo访问,则可以尝试以下解决方法:

su - myother_user_account -c "brew install ..."

sudo 替代方案:

sudo -u myother_user_account brew install ...

方便的shell别名(用于.bashrc/ .zshrc/ ...):

alias brew="sudo -u myother_user_account brew"

1
对于多用户问题,这不是推荐的解决方案。这就要求用户能够以root用户身份和/或直接访问权限来以另一个用户身份运行命令,这首先破坏了具有用户级别特权的目的。您可以为自己的用例破坏模型,前提是您拥有盒子和两个帐户,但是建议其他任何人使用该模型,并且使用自己的系统使用情况对于使用适当的权限分离会更安全。
Caleb 2015年

我不同意“不建议”。这是一种要求其他用户具有root / sudo访问权限的解决方案。如果在您的特定情况下确实发生这种情况,我将完全建议您这样做。我尝试了其他方法来管理Homebrew权限,这是一场噩梦。永无止境的许可拒绝了错误,尽管我发誓我做的一切都是“推荐”的。
cubuspl42
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.