Гид по технологиям

Установка Python 3.9 на Rocky Linux 8

• 5 min read • Руководство • Обновлено 25 Nov 2025
Установка Python 3.9 на Rocky Linux 8
Установка Python 3.9 на Rocky Linux 8

Обложка: логотип Python на фоне терминала с Rocky Linux

Почему это важно

Python остаётся одним из самых популярных языков для скриптов, веб-приложений и научных вычислений. На Rocky Linux 8 по умолчанию могут быть установлены старые версии Python (3.7), поэтому установка Python 3.9 нужна, если вам требуются новые возможности языка или совместимость с пакетами.

Требования заранее

  • Система Rocky Linux 8 с подключённым интернетом.
  • Непривилегированный пользователь с sudo.
  • Немного свободного времени и места на диске (сборка из исходников занимает ресурсы).

Обновление системы

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

sudo dnf -y update

Важно: выполняйте обновление в подходящее окно обслуживания, если это сервер в продакшне.

Установка Python 3.9 из официального репозитория

AppStream Rocky Linux 8 содержит пакеты python39, поэтому это самый простой и надёжный способ.

sudo dnf install python39

Нажмите Y и Enter при запросе. После окончания проверьте версию:

python3.9 --version

Окно терминала: установка python39 через dnf показывающая прогресс

Если команда вывела Python 3.9.x, установка прошла успешно.

Установка Python 3.9 вручную (из исходников)

Когда нет доступа к репозиторию или требуется специфичная версия/опции компиляции, соберите Python из исходников.

  1. Установите инструменты разработки:
sudo dnf groupinstall "Development Tools" -y
  1. Установите зависимости (OpenSSL, libffi, bzip2 и др.):
sudo dnf install openssl-devel libffi-devel bzip2-devel -y
  1. Скачайте исходники и распакуйте:
sudo dnf install wget -y
wget https://www.python.org/ftp/python/3.9.7/Python-3.9.7.tar.xz
tar xvf Python-3.9.7.tar.xz
cd Python-3.9.7/
  1. Конфигурация и сборка. Опция –enable-optimizations включает профильную оптимизацию (дольше собирается, но быстрее работает):
./configure --enable-optimizations
  1. Установите с altinstall, чтобы не перезаписать системный python:
sudo make altinstall

Мы используем altinstall, потому что make install перезаписывает /usr/bin/python3 и может нарушить системные зависимости. С altinstall бинарник устанавливается как python3.9.

Процесс компиляции может занять продолжительное время. По окончании проверьте:

python3.9 --version

Скриншот успешной установки python3.9 через altinstall в терминале

Установка модулей для Python 3.9

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

python3.9 -m pip install 

Где — имя пакета. Пример установки requests:

python3.9 -m pip install requests

Просмотр установленных модулей:

python3.9 -m pip list

Скриншот вывода pip list для python3.9

Тестирование установки

Создайте небольшой тестовый скрипт и запустите его:

cd ~
sudo nano hello.py

Вставьте:

print("Howtoforge, HelloWorld!")

Запустите:

python3.9 hello.py

Ожидаемый вывод — приветствие в консоли.

Рекомендации по безопасной и устойчивой работе

  • Не устанавливайте пакеты pip глобально от root — используйте виртуальные окружения (venv) или pipx для инструментов.
  • Для проектов используйте venv:
python3.9 -m venv .venv
source .venv/bin/activate
python -m pip install -U pip
  • Используйте requirements.txt для фиксации зависимостей.
  • Для CI/CD и контейнеров предпочтительнее запускать конкретную версию Python внутри контейнера (Docker/Podman).

Альтернативные подходы

  • pyenv — удобен для локального управления множеством версий Python без вмешательства в систему; хорошо для разработчиков.
  • Контейнеры (Docker/Podman) — лучший вариант для изоляции среды и воспроизводимости.
  • Сборка из исходников — если нужна специфическая конфигурация или патчи.

Мини-инструкция по pyenv (быстрый обзор):

# установить зависимости
sudo dnf install -y make gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel libffi-devel
# затем следуйте инструкциям pyenv (клонировать репозиторий и собрать версии)

Когда установка может не подойти (примеры)

  • Если вы разворачиваете критические системные службы, перезапись системного /usr/bin/python приведёт к поломке зависимостей.
  • На серверах с политиками безопасности, запрещающими сборку из исходников, используйте репозитории или контейнеры.

Критерии приёмки

  • Команда python3.9 –version возвращает версию Python 3.9.x.
  • Скрипт hello.py корректно выполняется через python3.9.
  • Необходимые модули устанавливаются и импортируются без ошибок в venv.

Тесты и контроль качества (acceptance)

  • Установить пакет requests: python3.9 -m pip install requests и импортировать в интерпретатор: import requests.
  • Выполнить базовый набор unit-тестов приложения в venv.
  • Проверить, что системный python3 (если нужен) не затронут (для altinstall).

Чек-листы (роль: системный администратор / разработчик)

Системный админ:

  • Сделать резервную копию конфигураций и пакетных списков.
  • Обновить систему перед установкой.
  • Использовать altinstall при сборке из исходников.
  • Проверить SELinux и политики доступа.

Разработчик:

  • Использовать venv или pyenv.
  • Зафиксировать зависимости в requirements.txt.
  • Тестировать локально в той же версии, что и продакшен.

Совместимость и миграция

  • Rocky Linux 8 обычно имеет системный Python 3.7; Python 3.9 доступен как python39 пакет.
  • Для пакетной совместимости проверьте требования библиотек (pyproject.toml / setup.py) на поддержку Python 3.9.
  • При обновлении крупной версии Python проведите тесты, чтобы убедиться в отсутствии регресса.

Отладка частых ошибок

  • Ошибка сборки: проверьте наличие dev-пакетов (openssl-devel, libffi-devel и т.д.).
  • Permission denied при установке pip: не используйте sudo pip install; вместо этого активируйте venv или используйте –user.
  • Конфликт версий: проверьте, какая версия связана с /usr/bin/python3 и не перезаписывайте её.

Мини-методология выбора способа установки

  1. Нужна быстрая и безопасная установка на сервере — используйте dnf install python39.
  2. Нужна конкретная патч-версия или опции компиляции — собирайте из исходников с altinstall.
  3. Для локальной разработки с множеством версий — используйте pyenv.
  4. Для продакшен-развёртывания приложений — используйте контейнеры с фиксированной версией.
flowchart TD
  A[Требуется Python 3.9?] --> B{Развёртывание}
  B -->|Локальная разработка| C[pyenv или venv]
  B -->|Сервер| D{Можно ли использовать дистрибутивный пакет?}
  D -->|Да| E[dnf install python39]
  D -->|Нет| F[Сборка из исходников с altinstall]
  B -->|Изоляция/CI| G[Docker/Podman с образами python:3.9]

Безопасность и лучшие практики

  • Не устанавливайте пакет глобально от root в продакшене.
  • Подписывайте и проверяйте исходники, если собираете в доверённой среде.
  • Ограничьте доступ к серверам сборки.

Заключение

В этой инструкции показаны два основных способа установки Python 3.9 на Rocky Linux 8: быстрый и безопасный через dnf и гибкий — сборка из исходников с altinstall. Для разработки и продакшена рекомендуется использовать виртуальные окружения или контейнеры, чтобы избежать конфликтов с системным Python.

Важно: если остались вопросы или нужна помощь с конкретной конфигурацией (pyenv, Dockerfile, сборка с определёнными опциями), оставьте комментарий с описанием окружения.

Краткое резюме:

  • Установка через dnf — проще и надёжнее для большинства случаев.
  • altinstall позволяет иметь несколько версий Python параллельно.
  • Используйте venv/pyenv/контейнеры для изоляции зависимостей.

Проверка списка установленных модулей python3.9 в терминале

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро