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

Установка Python на Ubuntu: последняя версия

7 min read Руководство Обновлено 25 Dec 2025
Установка Python на Ubuntu: последняя версия
Установка Python на Ubuntu: последняя версия

Что в статье

  • Краткое руководство по трём подходам: deadsnakes PPA, сборка из исходников, pyenv/Docker.
  • Пошаговые команды, контрольные проверки и рекомендации по безопасности.
  • Чеклисты для разработчика и системного администратора, критерии приёмки, варианты устранения ошибок.

Введение

Ежегодно Python получает значительные обновления. Дистрибутивы Ubuntu часто поставляются с предустановленной версией, которая может отставать от официального релиза. Если вам нужна более новая версия Python (в примере — Python 3.12, выпущенный 2 октября 2023 года), этот материал объяснит варианты установки и риски каждого метода.

Кому что подходит

  • Если нужно быстро получить новую версию для разработки на рабочей станции — используйте deadsnakes PPA или pyenv.
  • Если вы управляете сервером с критичными системными скриптами — предпочтительнее pyenv для пользователей или сборка в /usr/local с altinstall; не меняйте системный /usr/bin/python.
  • Для изолированного запуска приложения используйте Docker-контейнер с нужной версией Python.

Шаг 1: Проверка текущей версии Python

Сначала убедитесь, какая версия Python уже установлена:

python3 --version

Версия Python, отображаемая в терминале Ubuntu

Команда выведет что-то вроде “Python 3.10.12”. Если это не та версия, которая вам нужна, переходите к способам установки ниже.

Шаг 2: Варианты установки последней версии Python на Ubuntu

Ниже — три основных подхода. Каждый имеет свои преимущества и ограничения.

Способ A — Быстро: deadsnakes PPA (рекомендуется для большинства пользователей)

PPA (Personal Package Archive) — сторонний репозиторий пакетов для Ubuntu. PPA deadsnakes содержит несколько версий Python, чаще обновляемых, чем стандартные репозитории Ubuntu.

  1. Добавьте репозиторий deadsnakes:
sudo add-apt-repository ppa:deadsnakes/ppa

Информация о PPA deadsnakes при добавлении репозитория

Когда будет предложено подтвердить добавление — нажмите Enter.

  1. Обновите индекс пакетов:
sudo apt update
  1. Установите нужную версию (пример для 3.12):
sudo apt install python3.12

Установка Python 3.12 из PPA deadsnakes в терминале

  1. Запустите установленную версию явно:
python3.12

Запуск python3.12 в терминале

Важно: при установке через deadsnakes пакет python3 (символическая ссылка /usr/bin/python3) обычно не меняется автоматически. Если вы хотите сделать новую версию системной по умолчанию, используйте update-alternatives (описано в следующем разделе). Не меняйте /usr/bin/python (без суффикса) — это может нарушить системные скрипты.

Преимущества deadsnakes:

  • Быстро и просто.
  • Пакеты собраны для Ubuntu и включают зависимости.

Ограничения:

  • PPA — сторонний репозиторий (доверяйте его содержимому).
  • Может не содержать экспериментальных опций сборки, которые нужны для специфичных задач.

Способ B — Полный контроль: сборка Python из исходников

Сборка из исходников даёт полный контроль над опциями компиляции, местом установки и оптимизациями.

  1. Установите зависимости для сборки (одноразово):
sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev liblzma-dev
  1. Скачайте исходники с официального сайта Python и распакуйте их в свою папку загрузок. На странице загрузок нажмите “Download Python <версия>”.

Кнопка загрузки исходников Python на официальном сайте

  1. Перейдите в каталог загрузок и распакуйте архив:
cd ~/Downloads
tar -xJf Python-3.12.0.tar.xz
cd Python-3.12.0

Команда tar распаковывает архив с исходниками Python

  1. Настройте сборку. Рекомендуется использовать –enable-optimizations и задать префикс, если вы не хотите заменять системный Python:
./configure --enable-optimizations --prefix=/usr/local

Скрипт configure подготавливает сборку Python

  1. Скомпилируйте и установите. Для ускорения используйте параллельную сборку и предпочитайте altinstall, чтобы не заменять /usr/bin/python3:
make -j$(nproc)
sudo make altinstall

Использование make altinstall создаст бинарник python3.12 в /usr/local/bin и не заменит системный python3.

Команда make install собирает Python из исходников

  1. Проверьте установку:
/usr/local/bin/python3.12 --version

Проверка версии Python после установки из исходников

Преимущества сборки из исходников:

  • Полный контроль над конфигурацией и оптимизациями.
  • Можно установить в произвольный префикс (/opt, /usr/local и т.д.).

Ограничения:

  • Длинный процесс сборки.
  • Необходимы зависимости и знания о возможных ошибках сборки.

Способ C — Изоляция: pyenv и Docker (для управления версиями без вмешательства в систему)

pyenv позволяет пользователю устанавливать и переключаться между версиями Python локально (в каталоге пользователя). Это безопасный способ для разработки.

Установка pyenv (кратко):

# зависимости (пример):
sudo apt update
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libffi-dev liblzma-dev

# быстрый установщик pyenv
curl https://pyenv.run | bash

После установки добавьте в ~/.bashrc / ~/.profile строки, которые предложит установщик, затем выполните:

exec $SHELL
pyenv install 3.12.0
pyenv global 3.12.0    # или pyenv local 3.12.0 для проекта

Docker — ещё один способ получить нужную версию Python в изолированном контейнере. Например, официальный образ Python:

docker run -it --rm python:3.12 bash

Преимущества pyenv/Docker:

  • Не ломают системный Python.
  • Легко переключаться между версиями.
  • Подходят для тестирования и CI.

Ограничения:

  • pyenv требует установки зависимостей и настройки окружения.
  • Docker добавляет слои и требует знания контейнеризации.

Шаг 3: Сделать новую версию Python системной по умолчанию (опционально)

Если вы устанавливали через deadsnakes и хотите, чтобы python3 запускал новую версию, используйте update-alternatives:

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.12 1

Если в группе уже несколько альтернатив, выберите нужную вручную:

sudo update-alternatives --config python3

Выберите номер версии и нажмите Enter.

Важно: не меняйте /usr/bin/python (без 3). Многие системные утилиты Ubuntu ожидают конкретную версию Python; изменение /usr/bin/python может привести к поломке APT и других инструментов.


Что может пойти не так и как исправить

Частые проблемы и решения:

  • Ошибка сборки из-за отсутствующих заголовочных файлов (например, “_ssl” не найден): установите соответствующие -dev пакеты (libssl-dev, libbz2-dev и т.д.).
  • После установки через apt новая версия не запускается по python3: проверьте /usr/bin и update-alternatives.
  • Конфликты между пакетами system и user: используйте virtualenv/venv или pyenv.
  • PPA не содержит нужной версии для вашей версии Ubuntu: используйте сборку из исходников или Docker.

Совет по отладке: изучите вывод configure и make; там обычно указаны отсутствующие зависимости или ошибки компоновки.


Чеклисты

Чеклист для разработчика (локальная машина):

  • Проверил текущую версию python3 –version
  • Сделал резервную копию критичных виртуальных окружений (если нужно)
  • Установил через deadsnakes или pyenv
  • Проверил версию python3.12 –version или python3 –version после переключения
  • Протестировал проекты в venv с новой версией

Чеклист для системного администратора (сервер):

  • Оценил совместимость сервисов с новой версией
  • Не менял /usr/bin/python
  • Использовал altinstall или pyenv для пользователей
  • Создал план отката (на случай ошибок)
  • Тестировал обновления в staging перед production

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

Чтобы считать установку успешной, выполните эти проверки:

  • Команда python3.12 –version возвращает ожидаемую версию.
  • При явном запуске python3.12 интерпретатор запускается без ошибок.
  • Системные утилиты работают (если вы не меняли /usr/bin/python).
  • Виртуальные окружения могут быть созданы и активированы для новой версии.

Решение: какой способ выбрать — быстрый поток принятия решения

flowchart TD
  A[Нужно Python для локальной разработки?] -->|Да| B{Хотите менять версии часто?}
  B -->|Да| C[pyenv]
  B -->|Нет| D{Требуется быстро и просто?}
  D -->|Да| E[deadsnakes PPA]
  D -->|Нет| F[Сборка из исходников с altinstall]
  A -->|Нет, сервер production| G{Можно тестировать в staging?}
  G -->|Да| F
  G -->|Нет| H[Использовать Docker или оставить системную версию]

Риски и способы минимизации

Риски:

  • Поломка системных пакетов при изменении /usr/bin/python.
  • Несовместимость зависимостей (C-расширения, бинарные wheels).
  • Непредвиденное поведение устаревшего кода в новой версии.

Митигаторы:

  • Использовать altinstall или pyenv вместо перезаписи системного python3.
  • Тестировать на staging и использовать виртуальные окружения.
  • Поддерживать список зависимостей (requirements.txt) и тесты для CI.

Короткие сценарии тестирования (Acceptance тесты)

  1. Установка через deadsnakes: после apt install python3.12 команда python3.12 –version должна вернуть 3.12.x.
  2. Сборка из исходников: /usr/local/bin/python3.12 запускается, а системный python3 не изменён.
  3. pyenv: pyenv local 3.12.0 задаёт версию для папки проекта; python –version в папке проекта показывает 3.12.0.
  4. Docker: docker run –rm python:3.12 python –version возвращает 3.12.x.

Короткий словарь терминов

  • PPA — сторонний репозиторий пакетов для Ubuntu.
  • altinstall — опция make install, которая устанавливает интерпретатор без замены системных ссылок python3.
  • pyenv — инструмент управления версиями Python для пользователей.
  • venv — встроенный в Python механизм создания виртуального окружения.

Часто задаваемые вопросы

Нужно ли удалять старые версии Python?

Нет, обычно старые версии можно оставить. Многие системы и проекты зависят от конкретной версии. Используйте виртуальные окружения и переключатели версий вместо удаления.

Безопасно ли использовать PPA deadsnakes?

Deadsnakes — широко используемый репозиторий, но это всё же сторонний источник. Используйте его на рабочей станции и проверяйте релизы; для серверов с повышенными требованиями предпочтительнее сборка из исходников или изолированные среды.

Как откатить установку, если что-то сломалось?

Если вы устанавливали из PPA, можно удалить пакет через apt и при необходимости удалить PPA. При сборке из исходников удалите файлы в префиксе (например, /usr/local) или используйте бэкап. Всегда имейте план отката и тестовый сервер.


Заключение

Установка последней версии Python на Ubuntu может быть простой (deadsnakes) или гибкой (сборка из исходников, pyenv). Выбор зависит от вашего сценария: удобство против полного контроля. В большинстве случаев для разработки достаточно deadsnakes или pyenv; для production — тестируйте и используйте изолированные окружения.

Важно: всегда тестируйте новую версию в отдельном окружении перед внедрением в критичные проекты.

Короткая шпаргалка: если нужно быстро — deadsnakes; для безопасного управления версиями — pyenv; для полного контроля — сборка и altinstall.


Если хотите — можно добавить инструкцию по установке pip-пакетов, настройке virtualenv и шаблон systemd unit для приложения под новой версией Python.

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

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

Как создать групповой чат iMessage на iPhone
Мобильные

Как создать групповой чат iMessage на iPhone

Как отключить авто‑улучшение фото на iPhone
Фото

Как отключить авто‑улучшение фото на iPhone

Как сделать изогнутый текст в Photoshop
Дизайн

Как сделать изогнутый текст в Photoshop

Блокируется шифрованный DNS на iPhone — что делать
Конфиденциальность

Блокируется шифрованный DNS на iPhone — что делать

Сброс виртуальной памяти в Windows 11
Windows

Сброс виртуальной памяти в Windows 11

Создать и настроить тему в Windows
Персонализация Windows

Создать и настроить тему в Windows