Как я могу гарантировать, что Ubuntu 16.04.3 библиотеки Python, установленные с пипсом, остаются в виртуальной среде

Я использовал репозитории Ubuntu для установки python3-dev, python3-setuptools, python3-virtualenv, python3-venv и python3-pip. Затем я использовал pyvenv для создания виртуальной среды и источника [dir] для ее активации. Затем изнутри этой среды я использовал pip3 для установки модуля криптографии. После деактивации среды и перезапуска моего терминала я обнаружил, что модуль доступен вне среды. Это правда, даже когда я выхожу из системы и снова перезагружаю компьютер.

Я обеспокоен тем, что библиотеки связаны с корневой установкой Python и могут вызвать конфликты с другими библиотеками, установленными позже в других виртуальных

Я знаю, что не могу связать внешние обсуждения, но я нашел достоверные онлайн-материалы, что это ошибка в реализации Ubuntu в pip. Можете ли вы подтвердить или отклонить и предложить решение?

0
задан 24 January 2018 в 13:31

2 ответа

Вы можете устанавливать пакеты только в систему с правами администратора. Внутри вашей виртуальной среды вам не нужно использовать «sudo» при установке каких-либо пакетов, потому что вся среда принадлежит вашему пользователю. Если вы получаете какие-либо ошибки «отказали в доступе» при запуске pip в вашем virtualenv как не-root, тогда есть что-то сломано с установщиком пакетов и оно пытается установить в вашу систему.

0
ответ дан 17 July 2018 в 22:20

Вы можете устанавливать пакеты только в систему с правами администратора. Внутри вашей виртуальной среды вам не нужно использовать «sudo» при установке каких-либо пакетов, потому что вся среда принадлежит вашему пользователю. Если вы получаете какие-либо ошибки «отказали в доступе» при запуске pip в вашем virtualenv как не-root, тогда есть что-то сломано с установщиком пакетов и оно пытается установить в вашу систему.

0
ответ дан 23 July 2018 в 22:58
  • 1
    Я не использовал sudo или получал сообщения об ошибках, и оба Python3.x и pip3 были установлены в мой каталог виртуальной среды командой pyvenv. Я пренебрег использованием какой команды, чтобы увидеть, были ли они теми, которые вызываются командой установки pip3, когда я использовал ее в виртуальной среде, но я активирую виртуальную среду и добавлю еще один комментарий, сообщающий об этом. – MickeyLater 24 January 2018 в 21:53
  • 2
    У меня просто была возможность проверить и какая команда возвращает виртуальную окружение pip3 как из виртуальной среды, так и извне, как до, так и после того, как виртуальная среда была деактивирована. Это происходит даже в том случае, когда я выхожу из домашней папки в корневую папку, прежде чем запускать ее. Между тем, локальная версия Python3 вызывается изнутри виртуальной среды, но / usr / local вызывается вне нее как до, так и после ее деактивации, независимо от pwd. – MickeyLater 24 January 2018 в 22:00
  • 3
    Тогда должно быть какое-то смешное дело с вашей средой. Какова ваша переменная окружения $ PATH? – Kevin 25 January 2018 в 05:37

Другие вопросы по тегам:

Похожие вопросы: