Если вы недавно столкнулись с ошибкой «внешне управляемой среды» при установке пакетов pip в Linux, вот как ее исправить.

Если вы часто работаете с Python и недавно перешли на Ubuntu 23.04 или Fedora версии 38, скорее всего, вы столкнулся с ошибкой «внешне-управляемой среды» при установке пакетов с помощью менеджера пакетов Python, пип.

Это может расстраивать и весьма удивлять, поскольку эта ошибка никогда не возникала в старых версиях Ubuntu, Fedora и других дистрибутивах. Давайте узнаем, что именно вызывает эту ошибку и как ее быстро исправить.

Почему возникает ошибка «внешне управляемой среды»

Последние версии всех дистрибутивов Linux принимают стандарты, определенные в PEP-668. Эти изменения гарантируют, что пакеты pip по умолчанию не будут устанавливаться в глобальном контексте.

Это было реализовано в попытке избежать конфликта между менеджером пакетов дистрибутива и инструментами управления пакетами Python. Подробности вы можете узнать в официальная документация PEP-668. Если вы хотите отменить или отменить этот механизм, вы можете использовать три подхода.

instagram viewer

1. Удалите файл «ВНЕШНЕЕ УПРАВЛЕНИЕ».

Это самое простое исправление ошибки pip, «управляемой извне». Все, что вам нужно сделать, это перейти к /usr/lib/python3.xx и удалите ВНЕШНЕЕ УПРАВЛЕНИЕ файл в каталоге. Вот команды для этого:

cd /usr/lib/python3.11
sudo rm EXTERNALLY-MANAGED

Это все, что вам нужно сделать, чтобы исправить ошибку. Если вы решите восстановить этот механизм, создайте тот же файл снова с помощью сенсорная команда:

sudo touch EXTERNALLY-MANAGED

Теперь вы сможете легко устанавливать пакеты с помощью pip или pip3.

2. Используйте виртуальные среды для установки пакетов pip

Другой подход, который вы можете использовать, — использовать виртуальные среды для вашего проекта Python. Виртуальные среды — отличный способ изолировать пакеты конкретных программ от операционной системы, а также позволяют аккуратно организовать проект.

Вот как создать виртуальную среду и установить пакеты с помощью pip:

  1. Сначала создайте виртуальную среду с помощью:
    python3 -m venv venv
  2. Создайте файл активации внутри каталога bin, используя команду source:
    source venv/bin/activate

В приглашении оболочки должно быть указано имя виртуальной среды. Теперь вы сможете установить любые пакеты Python по вашему желанию.

Как вы можете видеть, опенай Пакет Python сначала не удалось установить, но после создания и переключения на виртуальную среду он устанавливается без проблем.

3. Используйте pipx для установки пакетов Python

pipx — это утилита для установки пакетов Python в виртуальных и изолированных средах. Он автоматизирует такие шаги, как создание виртуальных сред для каждого пакета и создание символических ссылок на пакеты в .local/bin папку, чтобы вы могли в любое время вызывать каждый пакет из оболочки.

Использование pipx для установки пакетов помогает избежать ошибки «среды с внешним управлением» при установке пакетов в виртуальных средах. Чтобы использовать pipx, сначала установите его с помощью менеджера пакетов по умолчанию вашего дистрибутива.

В производных Ubuntu/Debian:

sudo apt-get install pipx

В системах на базе Arch:

sudo pacman -S pipx

В Fedora/CentOS/RHEL:

sudo dnf install pipx

После установки pipx используйте его так же, как и pip для установки пакетов. Вот пример команды:

pipx install openai

Чтобы узнать больше о pipx, вы можете обратиться к его man-странице с помощью команды man.

Теперь вы знаете, как исправить ошибку «управляемого извне»

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