Brew install R:权限被拒绝

Brew install R:权限被拒绝

尝试通过 Brew 安装 R 时,我收到以下输出和错误:

==> Pouring pcre-8.43.mojave.bottle.tar.gz 
cp: /usr/local/Cellar/pcre/./8.43: 
cp: /var/folders/3l/zsdg6x9x61g8nhnb8f6pxzvw0000gn/T/d20190415-7574-1t8em0n/pcre/./8.43: unable to copy extended attributes to /usr/local/Cellar/pcre/./8.43: Permission denied
cp: /usr/local/Cellar/pcre/./8.43/INSTALL_RECEIPT.json: No such file or directory
cp: /usr/local/Cellar/pcre/./8.43/bin: No such file or directory

....

cp: utimes: /usr/local/Cellar/pcre/.: Operation not permitted
Error: Failure while executing; `cp -pR /var/folders/3l/zsdg6x9x61g8nhnb8f6pxzvw0000gn/T/d20190415-7574-1t8em0n/pcre/. /usr/local/Cellar/pcre` exited with 1. Here's the output:
cp: /usr/local/Cellar/pcre/./8.43: Permission denied
cp: /var/folders/3l/zsdg6x9x61g8nhnb8f6pxzvw0000gn/T/d20190415-7574-1t8em0n/pcre/./8.43: unable to copy extended attributes to /usr/local/Cellar/pcre/./8.43: Permission denied

....

Warning: Bottle installation failed: building from source.
Error: An exception occurred within a child process:
  Errno::EACCES: Permission denied @ dir_s_mkdir - /usr/local/Cellar/pcre/8.43

我正在使用管理员帐户安装它。通过我的普通非管理员帐户,我遇到了更多麻烦,然后不得不更改许多 /usr/local 文件夹,我不认为这是个好主意。也许对于 brew 文件夹来说这没问题,但对于其他东西则不行。

我如何安装 R 并使其运行?

答案1

可能是权限问题。根据上面给出的日志,我认为关键点是/usr/local/Cellar/子目录/父目录的权限。检查权限可能会有帮助。

要更新权限(如果需要),请使用命令:

sudo chown -R ${USER}:staff /usr/local/Cellar/

答案2

正如 Edenshaw 所评论的:

sudo chown -R ${USER}:staff /usr/local/Cellar/

这也帮我解决了错误安装后的问题。

答案3

我在与另一个已经安装了 brew 的用户共享的系统上遇到了同样的问题。

看起来 brew 为所有用户使用一个共享目录,并且第一个用户拥有 brew 目录。

因此,您实际上不需要更改权限,因为您只需将自己添加到组中即可。(请记住在将自己添加到组后注销/登录)。

在我的系统上,该组是‘brew’。

您可以通过运行以下命令检查系统上的组:

ls -la /usr/local/Cellar/
ls -la /usr/local/Homebrew/Library/Taps/homebrew

这两个目录都应该属于同一组。

如果由于当前组不合适而必须更改路径,则运行以下命令将“brew”更改为首选组。

sudo chown -R ${USER}:brew /usr/local/Homebrew/Library/Taps/homebrew
sudo chown -R ${USER}:brew  /usr/local/Cellar/

系统的所有用户都需要成为“brew”组的成员。

相关内容