我试图为多个用户修复我的家用设备,并找到了一个strug.de指南,它的目的正是为了解决这个问题。
我创建了一个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,并尝试通过木桶安装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(如前所述)。然而,这种解决办法并不是真正值得赞赏的,因为每当我在用户帐户之间来回切换时,我都不想“随机”运行所有命令。
有什么是我遗漏的或者是我根据指南做错的吗?
我不知道指南的作者是怎么解决这个问题的。
发布于 2019-06-20 13:02:58
我从几个帖子中拼凑出以下内容,因为我无法在一个地方找到所需的一切,比如创建组的命令。
为我工作的macOS莫哈韦10.14.4 (18E226)。
brew-multiuser.sh
#!/bin/bash
# Create a new group, brew
sudo dseditgroup -o create brew
# Change owner to brew group on brew assets
sudo chgrp -R brew $(brew --prefix)/*
# Change permissions to brew group
sudo chmod -R g+w $(brew --prefix)/*
# Add a user to the brew group
sudo dseditgroup -o edit -a userOne -t user brew
# Add another user to the brew group
sudo dseditgroup -o edit -a userTwo -t user brew
# Validate links, etc.
brew doctor
# Make any corrections from the `brew doctor` warnings, such as relinking.
# Run brew doctor to validate fixes
brew doctor
# Make sure it's working without error, with an update
brew update发布于 2019-11-12 05:49:19
我在Catalina 10.15.2上安装时必须这样做,并遵循以下步骤:
备注 我使用系统首选项中的用户和组设置使brew组(在创建新帐户时选择组)。我将执行权限添加到组中,以便以非管理用户的身份访问dart2native可执行文件。 在配置运行后,我还使用咖啡酿造来管理所有的公式。我确实注意到了一个警告,如果用户A锁定了一个文件,他们将需要运行brew清理,以便为用户B获得一个干净的brew。 使用
brew cask install <appname>时,如果其中一个用户不是管理员,您可能会遇到问题,在这种情况下,管理员用户可能需要安装。 除了这些警告外,一切似乎都很顺利。
设置
(假设Allen是管理员,而Stan不是)
(资料来源:https://medium.com/@leifhanack/homebrew-multi-user-setup-e10cb5849d59)
发布于 2015-11-25 23:44:43
我知道这个问题有点老,但我的回答可以帮助到这里寻求帮助的其他人。
帮助我克服这个问题的是为多个用户准备的自制木桶,它还设置了Caskroom文件夹的权限:
sudo chgrp -R brew /opt/homebrew-cask/Caskroom
sudo chmod -R g+w /opt/homebrew-cask/Caskroom然后brew cask install dropbox工作得很好。
https://stackoverflow.com/questions/28556776
复制相似问题