Mac上的Brew问题


6

在我的Mac OSX Yosemite上。

当我做一个 brew update

error: unable to unlink old 'bin/brew' (Permission denied)
error: unable to unlink old 'share/man/man1/brew.1' (Permission denied)

好。所以我做一个sudo brew update

MacBook-Pro:bin$ sudo brew update
Password:
Error: Cowardly refusing to `sudo brew update`
You can use brew with sudo, but only if the brew executable is owned by root.
However, this is both not recommended and completely unsupported so do so at
your own risk.

因此,它不允许我以任何方式运行更新。


用于澄清问题的评论-不能猜出答案:)我已将其移至聊天区域,以便我们可以在其他地方进行元对话。
bmike

Answers:


7

尝试这个:

sudo chown -R $USER /usr/local; brew update

4
也不要再与sudo一起使用brew。
D_4_ni 2015年

也适用于El Capitan
geotheory,2015年

阅读github上提交的这个问题是理解为什么如此设计以及自制软件推荐的好方法。理想情况下,您应该拥有自己的权限\usr\local
gideon

因此,与自制软件来说,很明显两种选择:(1)chownbrew执行到根,这意味着它运行的任何脚本可能是危险的,或(b)chown所有的/ usr /本地给自己,这意味着可能是危险的。像Windows一样:始终以管理员身份运行。或chown/ usr / local对我来说,然后再回到根目录。除了/ usr / local下我想拥有的东西。Urgh。(我之所以没有拥有我所有的东西,是因为我不能偶然搞定它。几年前,当我cat以root身份在硬盘驱动器的MBR中编辑一个文本文件时,才学到了很难的方法。)
Mars

3

自制软件具有Doctor命令,以帮助记录任何内部错误。我将从那里开始,而不是猜测正在发生什么。

brew doctor

接下来,如果您无法从医生那里获得可靠的输出,则可以重新安装最新的啤酒。它不会取代您从brew中下载的任何内容-它只会为您提供稳定的安装程序包,并有可能执行下一步(也许)。通常,发生的事情是某些其他程序或程序包认为它需要更改/ usr / local中的所有权限和所有权,这会损害brew工具所做的假设。

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.