Установка Python 2 на Ubuntu 24.04

Вопрос или проблема

Ubuntu 24.04 поставляется только с Python 3, но мне также нужно работать с программами, использующими только Python 2. Я знаю, что лучший способ — через venv, но у меня должна быть установка Python 2, которой мне сейчас не хватает. Каков лучший способ установить Python 2, не испортив системную установку Python 3? Поскольку Python 2 больше не является частью apt, я предпочел бы установить его из наиболее надежного источника, а не из какого-либо случайного репозитория на github. Спасибо.

Существует несколько способов установить интерпретаторы Python, не нарушая работу системы. Если вы знакомы с Docker, лучшим вариантом, вероятно, будет использование контейнера Python2 Docker. Контейнер Docker чем-то похож на виртуальную машину, это изолированная среда на вашей системе, но гораздо более легковесная. При запуске контейнера вы можете подключить путь к вашему коду в контейнер и затем работать внутри него, не влияя на вашу систему. Пример (с использованием Docker-образа, предложенного Артуром Мейнлдом в комментариях):

docker run --rm -itd -v/path/to/code:/code -w /code --name my-python2-env esolang/python2
docker exec -it my-python2-env bash  # это запустит оболочку внутри контейнера
docker stop my-python2-env  # остановите контейнер, когда он вам больше не нужен

Другим методом будет использование anaconda или miniconda. Это программное обеспечение позволяет устанавливать и управлять несколькими средами Python, отличными от интерпретатора вашей системы. Это похоже на Pip, но гораздо более функционально, например, оно также может устанавливать интерпретаторы и даже библиотеки не на Python, такие как CUDA, с помощью простой команды conda install. Для получения инструкций по установке Conda, пожалуйста, обратитесь к официальной документации.

Вы также можете установить Python2 из исходного кода в свою домашнюю директорию (или в какую-либо другую недоступную для системы директорию). Но этот метод, вероятно, более сложный, чем два других решения, и потребует от вас также установки других зависимостей из исходного кода в недоступную для системы директорию.

Ответ или решение

Установка Python 2 на новую версию Ubuntu 24.04, которая по умолчанию поддерживает только Python 3, может вызвать сложности, особенно если вам необходимо параллельно работать с программами, требующими Python 2. Рассмотрим несколько подходов к решению этой задачи, обеспечивая минимальное вмешательство в системные настройки и выбрав наиболее надежные методы из доступных.

Теория

Ubuntu 24.04 действительно исключает поддержку Python 2 из своих предустановленных пакетов. Это связано с тем, что поддержка Python 2 официально завершилась в январе 2020 года. Несмотря на это, многие развитые окружения, такие как виртуальные машины и контейнеры, предлагают решения, которые позволяют изолировать старые версии Python от основной системы.

Использование Docker или Anaconda (miniconda) предоставляет отличную возможность для изоляции Python 2 и управления несколькими версиями интерпретатора, не влияя на основную систему. Замечательной особенностью этих инструментов является способность работать с различными версиями Python без конфликтов с системным Python 3.

Пример

1. Docker

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

Команда для запуска Docker-контейнера с Python 2:

docker run --rm -itd -v /путь/к/коду:/code -w /code --name мой-python2-окружение esolang/python2
docker exec -it мой-python2-окружение bash  # для входа в оболочку контейнера
docker stop мой-python2-окружение  # для остановки контейнера, когда он больше не нужен

Эти шаги позволят вам использовать необходимый Python 2 в вашем рабочем процессе, сохраняя при этом чистоту основной системы Ubuntu 24.04.

2. Anaconda/Miniconda

Anaconda и её облегченная версия Miniconda представляют собой пакеты для управления средами и пакетов Python. Это мощный инструмент, предоставляющий возможность установить различные версии Python и управлять ними. Установка Miniconda в вашем домашнем каталоге позволяет создать независимые среды Python и использовать Python 2 наряду с новее версиями Python.

Команды для установки Miniconda и создания среды Python 2:

# загрузите установочный скрипт для Miniconda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

# запустите скрипт
bash Miniconda3-latest-Linux-x86_64.sh

# после установки создайте и активируйте новую среду Python 2
conda create -n py2 python=2.7
conda activate py2

Применение

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

Anaconda/Miniconda отлично подойдут для локальной разработки, когда требуется часто переключаться между версиями Python или использовать различные наборы библиотек. Она также поддерживает управление зависимостями, что полезно при работе с проектами, требующими точного контроля версий пакетов.

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

Заключение

Рекомендую использовать Docker или Miniconda как наиболее безопасные и управляемые способы установки Python 2 на Ubuntu 24.04. Эти методы обеспечивают необходимую изоляцию, предотвращая случайные изменения системных библиотек и интерпретаторов, что важно для поддержания стабильности и безопасности вашей операционной системы.

Оцените материал
Добавить комментарий

Капча загружается...