Pip сломан, переустановка не работает. EC2

Теперь я использую pip на EC2, версия python - 2.7. "sudo pip" внезапно больше не работает.

[[email protected] ~]$ sudo pip install validate_email
Traceback (most recent call last):
  File "/usr/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3138, in <module>
    @_call_aside
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3124, in _call_aside
    f(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3151, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 663, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 676, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 849, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'pip==6.1.1' distribution was not found and is required by the application
[[email protected] ~]$ which pip
/usr/local/bin/pip

Ответы

Ответ 1

во-первых, which pip не вернет тот же результат, что и sudo which pip, поэтому вы должны сначала проверить это.

вы также можете рассмотреть возможность не запускать pip как sudo. Допустимо ли и безопасно запускать установку pip в sudo?

второй, вы можете попробовать следующее:

easy_install --upgrade pip

если вы получили здесь ошибку (относительно поддержки колесика колеса), попробуйте это, затем запустите приведенную выше команду еще раз:

easy_install -U setuptools

Ответ 2

Я исправил ту же ошибку ( "Распределение" pip == 6.1.1 "не было найдено" ), используя кончик Wesm:

$> which pip && sudo which pip
/usr/local/bin/pip
/usr/bin/pip

Итак, это означает, что "пип" среднего пользователя и корень не совпадают. Позаботимся позже.

Затем я запустил "sudo easy_install --upprade pip" = > success

Затем я использовал "sudo/usr/local/bin/pip install", и он работает.