我在尝试修复多用户的Homebrew安装问题,并在strug.de上找到了一篇指南,旨在解决这个问题。
我创建了一个名为
假设我在用户账户A登录时执行了这个操作。几天后,我登录到用户账户B并尝试通过Cask安装Dropbox。这很容易实现,因为我们之前修复了权限,使得brew组也可以在这些文件夹中写入。
再过几天,我回到用户账户A并想要摆脱Dropbox。我运行以下命令,但遇到了权限错误:
为了修复用户B的问题,我必须再次运行
是否有任何我遗漏或按照指南做错的地方?
我不确定指南的作者是如何解决这个问题的。
我创建了一个名为
brew
的用户组,将我的两个用户添加到该组中,并运行此命令以调整权限:sudo chgrp -R brew /usr/local
sudo chmod -R g+w /usr/local
sudo chgrp -R brew /Library/Caches/Homebrew
sudo chmod -R g+w /Library/Caches/Homebrew
sudo chgrp -R brew /opt/homebrew-cask
sudo chmod -R g+w /opt/homebrew-cask
假设我在用户账户A登录时执行了这个操作。几天后,我登录到用户账户B并尝试通过Cask安装Dropbox。这很容易实现,因为我们之前修复了权限,使得brew组也可以在这些文件夹中写入。
再过几天,我回到用户账户A并想要摆脱Dropbox。我运行以下命令,但遇到了权限错误:
$ brew cask install dropbox --force
==> Downloading https://www.dropbox.com/download?plat=mac&full=1
Already downloaded: /Library/Caches/Homebrew/dropbox-latest
==> Symlinking App 'Dropbox.app' to '/Users/friedmann/Applications/Dropbox.app'
Error: Permission denied - /opt/homebrew-cask/Caskroom/dropbox/.metadata/latest/20150217070443.598
Most likely, this means you have an outdated version of homebrew-cask. Please run:
brew update && brew upgrade brew-cask && brew cleanup && brew cask cleanup
If this doesn’t fix the problem, please report this bug:
https://github.com/caskroom/homebrew-cask/issues
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:245:in `mkdir'
[...]
为了修复用户B的问题,我必须再次运行
chgrp
和chmod
(如上所述)。但是,这种解决方法并不被真正欣赏,因为我不想在我的用户账户之间来回切换时“随机”运行所有命令。是否有任何我遗漏或按照指南做错的地方?
我不确定指南的作者是如何解决这个问题的。