brew postinstall python(2.7.13):[Errno 13]权限被拒绝

[英]brew postinstall python (2.7.13): [Errno 13] Permission denied


I am on OS X 10.11.6. I updated and upgraded brew today. After that, pip did not work. It looked as if it was not installed during the upgrade. When I finished the upgrade I saw the warning:

我在OS X 10.11.6上。我今天更新并升级了brew。在那之后,pip没有用。在升级过程中看起来好像没有安装。当我完成升级后,我看到了警告:

Warning: The post-install step did not complete successfully You can try again using brew postinstall python

So I ran brew postinstall python and I then encountered the error:

所以我运行了brew postinstall python然后我遇到了错误:

error: [Errno 13] Permission denied: '/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py'

In this post they say:

在这篇文章中他们说:

The post-install step did not complete successfully due to error: could not delete '/usr/local/lib/python2.7/site-packages/pip/__init__.py': Permission denied. Manually deleting that file and then running brew postinstall python again fixed it.

由于错误,安装后步骤未成功完成:无法删除'/usr/local/lib/python2.7/site-packages/pip/__init__.py':权限被拒绝。手动删除该文件,然后再次运行brew postinstall python修复它。

So I thought the fix would be the same and I manually deleted /usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py' so that

所以我认为修复将是相同的,我手动删除/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py',以便

$ ls /usr/local/lib/python2.7/site-packages/pkg_resources/
_vendor extern

I ran brew postinstall python again but now I obtain:

我再次运行brew postinstall python,但现在我获得了:

...
copying build/lib/easy_install.py -> /usr/local/lib/python2.7/site-packages
copying build/lib/pkg_resources/__init__.py -> /usr/local/lib/python2.7/site-packages/pkg_resources
error: [Errno 13] Permission denied: '/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py'` 

I found "a fix" by installing pip using easy_install:

我通过使用easy_install安装pip找到了“修复”:

sudo easy_install pip

And now everything seems to work fine. However, I have two questions:

现在一切似乎都很好。但是,我有两个问题:

  1. Have I messed up by manually removing '/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py'?

    我是否通过手动删除'/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py'搞砸了?

  2. What would be the fix for the [Errno 13] Permission denied when brew postinstall python?

    brew postinstall python时,[Errno 13] Permission被拒绝的修复方法是什么?


In case it is of any use, here is my brew config and brew doctor outputs after all that happened today:

如果它有任何用途,这是我今天发生的所有事情之后的brew配置和brew医生输出:

$ brew config
HOMEBREW_VERSION: 1.1.6
ORIGIN: https://github.com/Homebrew/brew
HEAD: 619791e83d2781dca1b675e20249a8aebe085c7c
Last commit: 6 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 5ce01ec9c8b9958e2d9a7791e4d4e2aa0bf4fd8f
Core tap last commit: 89 minutes ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_REPOSITORY: /usr/local/Homebrew
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_BOTTLE_DOMAIN: https://homebrew.bintray.com
CPU: octa-core 64-bit haswell
Homebrew Ruby: 2.0.0-p648
Clang: 8.0 build 800
Git: 2.10.1 => /Applications/Xcode.app/Contents/Developer/usr/bin/git
Perl: /usr/bin/perl
Python: /usr/local/bin/python => /usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/bin/python2.7
Ruby: /usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
Java: 1.8.0_91
macOS: 10.11.6-x86_64
Xcode: 8.2.1
CLT: 8.2.0.0.1.1480973914
X11: 2.7.11 => /opt/X11

$ brew doctor
Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
  /usr/local/lib/libtcl8.6.dylib
  /usr/local/lib/libtk8.6.dylib

Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected header files:
  /usr/local/include/fakemysql.h
  /usr/local/include/fakepq.h
  /usr/local/include/fakesql.h
  /usr/local/include/itcl.h
  /usr/local/include/itcl2TclOO.h
  /usr/local/include/itclDecls.h
  /usr/local/include/itclInt.h
  /usr/local/include/itclIntDecls.h
  /usr/local/include/itclMigrate2TclCore.h
  /usr/local/include/itclTclIntStubsFcn.h
  /usr/local/include/mysqlStubs.h
  /usr/local/include/odbcStubs.h
  /usr/local/include/pqStubs.h
  /usr/local/include/tcl.h
  /usr/local/include/tclDecls.h
  /usr/local/include/tclOO.h
  /usr/local/include/tclOODecls.h
  /usr/local/include/tclPlatDecls.h
  /usr/local/include/tclThread.h
  /usr/local/include/tclTomMath.h
  /usr/local/include/tclTomMathDecls.h
  /usr/local/include/tdbc.h
  /usr/local/include/tdbcDecls.h
  /usr/local/include/tdbcInt.h
  /usr/local/include/tk.h
  /usr/local/include/tkDecls.h
  /usr/local/include/tkPlatDecls.h

Warning: Unbrewed .pc files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected .pc files:
  /usr/local/lib/pkgconfig/tcl.pc
  /usr/local/lib/pkgconfig/tk.pc

Warning: Unbrewed static libraries were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected static libraries:
  /usr/local/lib/libtclstub8.6.a
  /usr/local/lib/libtkstub8.6.a

1 个解决方案

#1


14  

The easiest method I've found to fix this is to simply set the ownership of the folder to your username:

我发现解决此问题的最简单方法是将文件夹的所有权设置为您的用户名:

chown -R `whoami` /usr/local/lib/python2.7/site-packages/

Edit: On occasion, I also run this:

编辑:有时,我也运行:

sudo -H python3 -m pip install ... 

or

sudo -H pip install
智能推荐

注意!

本站翻译的文章,版权归属于本站,未经许可禁止转摘,转摘请注明本文地址:http://www.itdaan.com/blog/2017/01/09/7dc1bd820eea0386801209f581041d6f.html



 
© 2014-2019 ITdaan.com 粤ICP备14056181号  

赞助商广告