2015-10-04 16 views
6

Próbuję uaktualnić pip na moim iMacu, ale wciąż otrzymuję błąd odmowy uprawnień. Jestem administratorem, więc nie wiem, co zrobiłem źle.Nie można uaktualnić Pip. Odmowa uprawnień. Czemu?

iMac:~ me$ pip install --upgrade pip 
    You are using pip version 6.0.8, however version 7.1.2 is available. 
    You should consider upgrading via the 'pip install --upgrade pip' command. 
    Collecting pip from https://pypi.python.org/packages/py2.py3/p/pip/pip-7.1.2-py2.py3-none-any.whl#md5=5ff9fec0be479e4e36df467556deed4d 
     Downloading pip-7.1.2-py2.py3-none-any.whl (1.1MB) 
     100% |################################| 1.1MB 181kB/s 
    Installing collected packages: pip 
     Found existing installation: pip 6.0.8 
     Uninstalling pip-6.0.8: 
      Exception: 
      Traceback (most recent call last): 
      File "/Library/Python/2.7/site-packages/pip-6.0.8-py2.7.egg/pip/basecommand.py", line 232, in main 
       status = self.run(options, args) 
      File "/Library/Python/2.7/site-packages/pip-6.0.8-py2.7.egg/pip/commands/install.py", line 347, in run 
       root=options.root_path, 
      File "/Library/Python/2.7/site-packages/pip-6.0.8-py2.7.egg/pip/req/req_set.py", line 543, in install 
       requirement.uninstall(auto_confirm=True) 
      File "/Library/Python/2.7/site-packages/pip-6.0.8-py2.7.egg/pip/req/req_install.py", line 667, in uninstall 
       paths_to_remove.remove(auto_confirm) 
      File "/Library/Python/2.7/site-packages/pip-6.0.8-py2.7.egg/pip/req/req_uninstall.py", line 126, in remove 
       renames(path, new_path) 
      File "/Library/Python/2.7/site-packages/pip-6.0.8-py2.7.egg/pip/utils/__init__.py", line 316, in renames 
       shutil.move(old, new) 
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 300, in move 
       rmtree(src) 
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 247, in rmtree 
       rmtree(fullname, ignore_errors, onerror) 
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 252, in rmtree 
       onerror(os.remove, fullname, sys.exc_info()) 
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 250, in rmtree 
       os.remove(fullname) 
      OSError: [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/pip-6.0.8-py2.7.egg/EGG-INFO/dependency_links.txt' 

Nie wiem, co zrobiłem źle tutaj, ponieważ uaktualnienie wydaje się dość proste.

Dzięki,

+1

Co powiesz na to, żeby uruchomić go z "sudo" z przodu ?! – Cleb

Odpowiedz

14

pip instalacji wymaga elewacja

sudo pip install --upgrade pip 

Tylko dlatego, że obecnie przy użyciu konta administratora, nie oznacza polecenie będzie działać z wysokości, chyba że podasz sudo

+0

FWIW powinieneś wspomnieć, że nie jest dobrą praktyką używanie sudo z pip, ale środowiskiem wirtualnym – styvane

1

Ty może wykonać jeden z dwóch sposobów:

  1. chown -R user /path/to/file bardziej szczegółowe informacje można znaleźć w tym SO post, a nie dotyczy dokładnie problemu, który zajmuje ten sam problem
  2. Szybki i brudny sposób po prostu zrobić pip install --upgrade pip, jak już wspomniano. Jednak wielu użytkowników zasugeruje przeciwko temu.
2

Musisz użyć sudo, ponieważ aktualizujesz pip "globalnie". Wolę zainstalować Homebrew i pozwolić Homebrewowi zarządzać wszystkim.

  1. zainstalować Xcode z App Store
  2. zainstalować Homebrew - ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  3. zainstalować python - brew install python, który również instaluje pip.

Dzięki tej konfiguracji wszystko jest instalowane lokalnie, co nie wymaga uruchomienia sudo.

Mam nadzieję, że to pomoże.

+0

Możesz również zainstalować Python 3 z 'brew install python3'. – joshlsullivan

Powiązane problemy