Homebrew 无法链接 git

Homebrew 无法链接 git

当我通过 安装 git 或升级 git 时,brew我无法将其链接到brew link git。如果我尝试,sudo brew link git我会得到:

懦弱地拒绝 sudo brew link

它说我必须检查以下权限:

/usr/local/share/gitk/lib
/usr/local/share/git-gui/lib
/usr/local/share/git-core/templates
/usr/local/share/git-core/templates/hooks
/usr/local/share/git-core

chmod把所有内容都编辑成了 777,但我不确定这是否好。

我现在可以链接 git。我是否应该将权限更改为更宽松的权限?

答案1

777 权限在这里不一定是坏事 - 您可能永远不会遇到权限问题,而且我认为这不是一个很大的安全问题。

无论如何,Homebrew 所需的“正常”权限/usr/local/share应该是(递归)755,因此rwxr-xr-x

chmod -R 755 /usr/local/share

至少brew不需要 sudo 权限就可以在其中执行任何操作。只有/usr/local拥有,但您的用户所在的组才可以root写入。staff

如需修复现有的 Homebrew 安装,请查看这个要点,这是一个将尝试纠正您的/usr/local权限的脚本。


举个例子,下面是我的一个(合理的)Homebrew 安装的目录列表,其中ghostscript唯一需要的例外是sudo brew link

aeneas:local werner$ ls -la /usr/local/share/
total 40
drwxr-xr-x  11 werner  staff  374 Mar  5 14:53 .
drwxrwxr-x  14 werner  staff  476 Feb 28 12:51 ..
drwxr-xr-x   6 werner  staff  204 Mar  5 14:54 aclocal
drwxr-xr-x   8 werner  staff  272 Mar  5 14:53 doc
lrwxr-xr-x   1 werner  staff   34 Feb  8 12:26 ffmpeg -> ../Cellar/ffmpeg/0.10/share/ffmpeg
drwxr-xr-x   4 werner  wheel  136 Apr 16  2010 ghostscript
lrwxr-xr-x   1 werner  staff   36 Mar  5 14:53 git-core -> ../Cellar/git/1.7.9.2/share/git-core
lrwxr-xr-x   1 werner  staff   35 Mar  5 14:53 git-gui -> ../Cellar/git/1.7.9.2/share/git-gui
lrwxr-xr-x   1 werner  staff   32 Mar  5 14:53 gitk -> ../Cellar/git/1.7.9.2/share/gitk
lrwxr-xr-x   1 werner  staff   34 Mar  5 14:53 gitweb -> ../Cellar/git/1.7.9.2/share/gitweb
drwxr-xr-x   9 werner  staff  306 Mar  5 14:53 man

答案2

我还没有尝试过 Gist,但尝试过chmod 775在文件夹上尝试。由于文件夹的所有者是root:wheel它,因此无法更改。我参考了一个日本网站。

sudo chown yourusername:admin -R /usr/local/share/ghostscript
brew link ghostscript
brew doctor

那么它对我来说就起作用了。

相关内容