Macos 在mac osx 10.10上通过自制安装git会导致:错误:权限被拒绝-/usr/local/lib/perl5/site_perl/5.18.2
嗨,我刚试着在我的mac电脑上通过自制程序安装git-出了点问题。我安装了github for mac应用程序,但我尝试将其删除。我的系统中当前的git版本是:Macos 在mac osx 10.10上通过自制安装git会导致:错误:权限被拒绝-/usr/local/lib/perl5/site_perl/5.18.2,macos,git,github,homebrew,Macos,Git,Github,Homebrew,嗨,我刚试着在我的mac电脑上通过自制程序安装git-出了点问题。我安装了github for mac应用程序,但我尝试将其删除。我的系统中当前的git版本是: Nielsk@~: $ git --version git version 1.9.3 (Apple Git-50) 如果我尝试通过自制程序安装git,就会出现这种情况: Nielsk@~: $ brew install git ==> Downloading https://downloads.sf.net/project/m
Nielsk@~: $ git --version
git version 1.9.3 (Apple Git-50)
如果我尝试通过自制程序安装git,就会出现这种情况:
Nielsk@~: $ brew install git
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/git-2.1.3.y
######################################################################## 100,0%
==> Pouring git-2.1.3.yosemite.bottle.tar.gz
==> Caveats
The OS X keychain credential helper has been installed to:
/usr/local/bin/git-credential-osxkeychain
The 'contrib' directory has been installed to:
/usr/local/share/git-core/contrib
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
zsh completion has been installed to:
/usr/local/share/zsh/site-functions
Error: An unexpected error occurred during the `brew link` step
The formula built, but is not symlinked into /usr/local
Permission denied - /usr/local/lib/perl5/site_perl/5.18.2
Error: Permission denied - /usr/local/lib/perl5/site_perl/5.18.2
我如何解决这个问题?我也遇到了同样的问题。我认为我们应该更改可读权限,以确保所有目录都是可读的。所以我尝试了命令:
sudochown-R$USER:admin/usr/local
然后:
brew链接——覆盖git
它对我有效,希望它也能对你有效。在安装git
之前,我有一个类似的权限被拒绝的错误,直到我清除了:
$brew doctor
..... << long output of issues, so you run:
$brew prune
$brew doctor
..... << less issues now, so manually clean up
$brew update
$brew install git
$brew医生
..... 对于使用新El Capitan操作系统的用户,您需要更新您的权限:
打开终端并键入以下命令:
$ sudo chown -R $(whoami):admin /usr/local
$ brew doctor
$ brew update
$ brew link --overwrite git
上述解决方案适用于其他brew安装,如node等。如果您开始安装,但在brew安装过程中遇到错误,请更换最后一行。High Sierra,不允许使用/usr/local
的chown
。但是,您仍然可以更改/usr/local
中的子目录的权限
在我的例子中,我必须在/usr/local
和sudo chown-R$(who)框架中创建框架。然后按照brew医生的话进行操作
更好的方法是创建所需的子目录并运行
sudo chown-R$(whoami)$(brew--前缀)/*
我做了brew doctor
推荐的事情,它有助于:
sudo mkdir -p /usr/local/sbin
sudo chown -R $(whoami) /usr/local/sbin
MacOS 10.14.4如果您使用sudo brew install git作为提升用户进行安装,会发生什么情况
我为什么要使用brew进行sudo,这不是真正的想法,是吗?当我评论这个问题时,我在想Macports,你使用自制软件是正确的,sudo
的用法甚至不正确supported@NielsKristian:您可能以前在/usr/local上安装了某些东西(非自制),或者在某个时候您使用sudo运行了写入/usr/local的命令。修改权限是您应该做的,也是自制安装程序应该做的。在您可以找到的自制issues
页面中有一条关于这一点的主要线索。Mike McQuaid是homebrew的维护者,他明确表示更改/usr/local priv是首选方式。您将看到他建议对权限进行与Jonyzfu类似的更改。@Jonyzfu虽然您的命令没有问题,但我认为您的推理是错误的。sudo chown-R$USER:admin/usr/local
并不能使/usr/local
中的所有内容都可读。'-R'表示递归
。此命令所做的是更改用户
和组
,以便所讨论的$user和组管理员
是所有者$USER
是一个变量,用于保存运行命令时登录的用户的名称。如果您不是admin
组的成员或与您一起运行命令的用户,您可能会发现自己的readw/rite权限受到限制,具体取决于实际的目录/文件权限。@MichaelPetch感谢您的详细解释。这很有帮助。下次我会提供更详细、更准确的答案,就像你的态度一样。@MichaelPetch我刚刚在全新的Macbook Pro(约塞米蒂10.10.2)上遇到了同样的许可问题。我根本没有在/usr/local
上安装任何其他东西。在全新安装El Capitan时也有同样的问题,我以前没有安装任何东西。但这似乎奏效了。