首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自制多用户设置

自制多用户设置
EN

Stack Overflow用户
提问于 2015-02-17 07:29:19
回答 4查看 10.8K关注 0票数 18

我试图为多个用户修复我的家用设备,并找到了一个strug.de指南,它的目的正是为了解决这个问题。

我创建了一个brew用户组,在该组中添加了两个用户,然后运行以下命令来调整权限:

代码语言:javascript
复制
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。我运行以下命令,但仍然存在权限错误:

代码语言:javascript
复制
$ 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修复这个问题,我必须再次运行chgrpchmod(如前所述)。然而,这种解决办法并不是真正值得赞赏的,因为每当我在用户帐户之间来回切换时,我都不想“随机”运行所有命令。

有什么是我遗漏的或者是我根据指南做错的吗?

我不知道指南的作者是怎么解决这个问题的。

EN

回答 4

Stack Overflow用户

发布于 2019-06-20 13:02:58

我从几个帖子中拼凑出以下内容,因为我无法在一个地方找到所需的一切,比如创建组的命令。

为我工作的macOS莫哈韦10.14.4 (18E226)。

brew-multiuser.sh

代码语言:javascript
复制
#!/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
票数 16
EN

Stack Overflow用户

发布于 2019-11-12 05:49:19

我在Catalina 10.15.2上安装时必须这样做,并遵循以下步骤:

备注 我使用系统首选项中的用户和组设置使brew组(在创建新帐户时选择组)。我将执行权限添加到组中,以便以非管理用户的身份访问dart2native可执行文件。 在配置运行后,我还使用咖啡酿造来管理所有的公式。我确实注意到了一个警告,如果用户A锁定了一个文件,他们将需要运行brew清理,以便为用户B获得一个干净的brew。 使用brew cask install <appname>时,如果其中一个用户不是管理员,您可能会遇到问题,在这种情况下,管理员用户可能需要安装。 除了这些警告外,一切似乎都很顺利。

设置

(假设Allen是管理员,而Stan不是)

  • 创建一个组brew并同时添加Allen & Stan
  • brew医生(Allen检查他是否正确安装brew )
  • sudo brew $(brew --前缀)/*(更改homebrew安装目录组)
  • sudo chmod -R g+w+x $(brew -前缀)/*(允许组成员在此目录中读取、写入和执行)
  • brew医生(斯坦检查他是否会使用自制)

(资料来源:https://medium.com/@leifhanack/homebrew-multi-user-setup-e10cb5849d59)

票数 6
EN

Stack Overflow用户

发布于 2015-11-25 23:44:43

我知道这个问题有点老,但我的回答可以帮助到这里寻求帮助的其他人。

帮助我克服这个问题的是为多个用户准备的自制木桶,它还设置了Caskroom文件夹的权限:

代码语言:javascript
复制
sudo chgrp -R brew /opt/homebrew-cask/Caskroom
sudo chmod -R g+w /opt/homebrew-cask/Caskroom

然后brew cask install dropbox工作得很好。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28556776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档