2016-01-19 4 views
11

Пожалуйста, помогите мне.не удалось выполнить «sudo pip»

  • сервер: AWS EC2
  • ОС: амазонка Linux
  • версия питона: 2.7.10
 
$ pip --version 
pip 7.1.2 from /usr/local/lib/python2.7/site-packages (python 2.7) 

Это нормально.
Но ...

 
$ sudo pip --version 
Traceback (most recent call last): 
    File "/usr/bin/pip", line 5, in 
    from pkg_resources import load_entry_point 
    File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 3020, in 
    working_set = WorkingSet._build_master() 
    File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 616, in _build_master 
    return cls._build_from_requirements(__requires__) 
    File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 629, in _build_from_requirements 
    dists = ws.resolve(reqs, Environment()) 
    File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 807, in resolve 
    raise DistributionNotFound(req) 
pkg_resources.DistributionNotFound: pip==6.1.1 

ответ

15

Попробуйте это:

sudo easy_install --upgrade pip

При выполнении этого необходимо обновить версию пип, что sudoer использует.

0

Как вы можете видеть с sudo, вы запускаете еще один скрипт pip.

С sudo: /usr/bin/pip, который является более ранней версией;

Без sudo: /usr/local/lib/python2.7/site-packages/pip, который является последней версией.

Ошибка вы столкнулись иногда вызывается с помощью различных менеджеров пакетов, общий способ решить это один уже предложенный @Ali:

sudo easy_install --upgrade pip

23

У меня была такая же проблема.

  1. sudo which pip

  2. sudo vim /usr/bin/pip

  3. изменять любые pip==6.1.1 к pip==8.1.2 или версию вы просто обновление.

Это работает для меня.

+0

Вы, возможно, придется 'Судо VIM/USR/BIN/пип-2.7' или' пип -3.5' – herve

1

Если у вас есть две версии pip, например/user/lib/pip и/user/local/lib/pip, относится к python 2.6 и 2.7. вы можете удалить/user/lib/pip и сделать ссылку pip =>/user/local/lib/pip.
вы можете видеть, что команды пипсов, вызываемые из «pip» и «sudo», отличаются друг от друга. сделать их консистенцию можно исправить.

0

Предполагая, что две версии исполнения находятся в/usr/bin/pip &/usr/local/bin/pip, где первый присутствует для пользователя sudo & второй для обычного пользователя. От пользователя sudo вы можете запустить команду ниже, чтобы она использовала более высокую версию pip для установки.

/USR/местные/бен/PIP установить jupyter

0
  1. pip --version. Помните версию pip. Будет полезно позже.
  2. sudo which pip. Место должно быть что-то вроде /usr/bin/pip-2.7
  3. sudo nano /usr/bin/pip-2.7
  4. В нано модифицировать любой pip==6.1.1 к pip==9.0.1 или версию вы нашли с --version. Там не так много текста.
  5. sudo cp /usr/bin/pip-2.7 /usr/bin/pip. Скопируйте эти файлы, чтобы сделать то же самое.

Мне нужно делать эти шаги каждый раз, когда я обновляю пип. :(

Для модернизации пип вы можете использовать также следующий вызов, работал для меня:

sudo easy_install --upgrade pip.