У меня есть сервер под управлением RHEL 6 с Python 2.6.6. У меня возникли проблемы с использованием pip с Python в качестве пользователя без полномочий root.
Я могу установить pip-пакеты и использовать их как root. Однако, когда я пытаюсь запустить pip от имени пользователя без полномочий root, я получаю эту ошибку:
[~]$ pip install requests
Traceback (most recent call last):
File "/usr/bin/pip", line 7, in <module>
from pip import main
ImportError: No module named pip
Аналогично, пока я могу использовать requests
например, после установки от имени пользователя root я не могу использовать его как пользователь без полномочий root.
[~]$ python
Python 2.6.6 (r266:84292, May 22 2015, 08:34:51)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-15)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named requests
>>>
Я использую pip 8.1.1:
[~]# pip --version
pip 8.1.1 from /usr/lib/python2.6/site-packages (python 2.6)
Я проверил, что папка site-packages имеет разрешение на чтение от пользователя, и это так.
—
Jake
У вас должна быть какая-то нестандартная версия pip. На RHEL 6 вы должны использовать python-pip из EPEL, который в настоящее время имеет версию 7.1.0-1. Также кажется, что ваш пользователь и root не видят одни и те же пакеты сайтов, что может указывать на скомпилированную версию Python. Каков выход
—
carlwgeorge
rpm -qf $(which python)
как ваш пользователь и рут?