---
title: 'Установка Python 3.14 на Ubuntu 24.04 | Zomro'
description: ''
image: 'https://zomro.com/static/site/images/logo/logo-white.png?v=1792139607'
---

![opened image]()

  * [Zomro](https://zomro.com/rus/)
  * [FAQ](https://zomro.com/rus/blog/faq/)
  * Установка Python 3.14 на Ubuntu 24.04 



# Установка Python 3.14 на Ubuntu 24.04

24-11-2025

Иногда Python 3.14 нужен не «когда‑нибудь потом», а **прямо сейчас** : разработчики уже обновили зависимости, CI ругается, а на серверах всё ещё живёт стандартный Python из Ubuntu 24.04.

Собирать Python из исходников на каждом сервере? Долго, неудобно и плохо масштабируется. В продовой инфраструктуре гораздо удобнее подход:

> **Один раз подключили репозиторий — дальше ставим и обновляем Python как обычный пакет через`apt`.**

В этой статье разберём установку **Python 3.14 на Ubuntu 24.04 через репозиторий (PPA)** без ручной сборки, с учётом подводных камней и потребностей сисадмина/девопса.

## 

## Общая идея: Python как обычный пакет

Почему репозиторий — это удобно для админа:

  * **масштабируемость** : те же команды `apt install` можно использовать в Ansible, bash‑скриптах, cloud‑init;

  * **обновления** : исправления безопасности и минорные версии прилетают через привычный `apt upgrade`;

  * **прозрачность** : видно, откуда пришёл пакет, его версию, зависимости;

  * **возможность отката** : можно зафиксировать версию или удалить пакет стандартными средствами.




При этом системный Python в Ubuntu 24.04 мы не трогаем — он нужен самой системе. Python 3.14 будет жить **рядом** , как отдельная версия.

## Подготовка системы

Начнём с базового обслуживания:
    
    
    sudo apt update && sudo apt upgrade -y
    

Это приведёт систему в актуальное состояние и уменьшит вероятность конфликтов при установке новых пакетов.

Поставим утилиты для работы с дополнительными репозиториями:
    
    
    sudo apt install -y software-properties-common
    

Заодно можно посмотреть, что сейчас стоит как системный Python:
    
    
    python3 --version
    

С большой вероятностью это будет версия из стандартного репозитория Ubuntu (например, 3.12). Это **ок** , мы её не меняем.

## Подключаем репозиторий с Python 3.14

Для установки свежих версий Python на Ubuntu традиционно используют отдельный репозиторий (PPA), который поставляет пакеты вида `python3.13`, `python3.14` и т.д.

Подключим этот репозиторий и обновим список пакетов:
    
    
    sudo add-apt-repository ppa:deadsnakes/ppa
    sudo apt update
    

> 💡 Рекомендация для продакшна: использование стороннего PPA лучше согласовать с ответственными за безопасность. Зато взамен вы получаете удобный, предсказуемый способ обновлять Python.

После этого в системе появятся дополнительные версии Python, доступные через `apt`.

## 

## 

## Устанавливаем Python 3.14

Теперь можно поставить нужную версию из репозитория одной командой:
    
    
    sudo apt install -y python3.14 python3.14-venv python3.14-dev
    

  * `python3.14` — сам интерпретатор;

  * `python3.14-venv` — модуль для создания виртуальных окружений;

  * `python3.14-dev` — заголовочные файлы и зависимости для сборки модулей с C‑расширениями.




Проверим, что всё встало:
    
    
    python3.14 --version
    

Если видим `Python 3.14.x` — всё хорошо.

Заодно можно посмотреть, какие версии Python есть в системе:
    
    
    ls /usr/bin/python3.*
    

Чаще всего там будут и системный `python3.12`, и наш свежий `python3.14`.

> Важно: мы **не** делаем симлинки вида `sudo ln -sf /usr/bin/python3.14 /usr/bin/python3`. Это может сломать системные утилиты и `apt`. Для Python 3.14 всегда используем явную команду `python3.14`.

## Настраиваем pip для Python 3.14

На серверах лучше чётко разделять `pip` для разных версий Python. Надёжный способ — использовать модуль `ensurepip`, который встроен в сам Python.

### 

### Установка pip через ensurepip

Запускаем команду:
    
    
    python3.14 -m ensurepip --upgrade
    

После этого проверяем:
    
    
    python3.14 -m pip --version
    

Если версия отобразилась без ошибок, можно пользоваться.

> Почему так, а не просто `pip`? Потому что команда `pip` может быть привязана к другой версии Python. Конструкция `python3.14 -m pip` всегда однозначно привязана к нужному интерпретатору.

Небольшой алиас для удобства

Для интерактивной работы можно добавить себе в `~/.bashrc` или `~/.zshrc`:
    
    
    alias pip314='python3.14 -m pip'
    

Тогда установка пакетов будет выглядеть так:
    
    
    pip314 install requests
    

На серверах и в скриптах всё же лучше писать полную форму `python3.14 -m pip` — так меньше поводов для путаницы.

## Виртуальные окружения на базе Python 3.14

Дальше — важнейшая часть: изоляция зависимостей проектов.

Создадим каталог проекта:
    
    
    mkdir -p ~/projects/api314
    cd ~/projects/api314
    

Создаём виртуальное окружение с нужной версией Python:
    
    
    python3.14 -m venv venv
    

Активируем его:
    
    
    source venv/bin/activate
    

Проверяем, что внутри окружения используется именно Python 3.14:
    
    
    python --version
    

Должно быть `Python 3.14.x`.

Теперь устанавливаем зависимости, но уже **внутри** окружения:
    
    
    pip install fastapi uvicorn[standard]
    

Фиксируем их список в `requirements.txt`:
    
    
    pip freeze > requirements.txt
    

> Подводный камень: если забыть активировать `venv` и запустить просто `pip install`, пакеты могут установиться глобально для другой версии Python. Это ведёт к хаосу, особенно на серверах с несколькими проектами.

Чтобы выйти из виртуального окружения, используем:
    
    
    deactivate
    

## 

## 

## Репозитории + автоматизация: как раскатать Python 3.14 на парк серверов

Главное преимущество подхода через репозиторий — простая автоматизация.

### Пример простого bash‑скрипта

Можно сделать небольшой скрипт, который вы будете запускать на новых серверах:
    
    
    #!/usr/bin/env bash
    set -e
    
    sudo apt update
    sudo apt install -y software-properties-common
    
    sudo add-apt-repository -y ppa:deadsnakes/ppa
    sudo apt update
    
    sudo apt install -y python3.14 python3.14-venv python3.14-dev
    python3.14 -m ensurepip --upgrade
    
    echo "Python 3.14 installed: $(python3.14 --version)"
    

Такой скрипт можно использовать вручную или встроить в cloud-init, Ansible, Terraform‑provisioner и т.п.

### 

### Пример Ansible‑задачи (общая идея)

Логика через Ansible будет примерно такой:

  * задача на добавление PPA;

  * задача на установку `python3.14` и сопутствующих пакетов;

  * задача на запуск `python3.14 -m ensurepip --upgrade`.




В итоге вы получаете **одинаковую версию Python** на всех серверах и можете уверенно запускать один и тот же код.

## Фиксация версии и обновления

Иногда на продакшн‑серверах хочется зафиксировать версию Python 3.14 и не получать неожиданных обновлений.

Есть два типичных подхода:

### 

### Заморозить пакет через apt-mark
    
    
    sudo apt-mark hold python3.14
    

Теперь `apt upgrade` не будет обновлять этот пакет.

Чтобы снова разрешить обновления:
    
    
    sudo apt-mark unhold python3.14
    

### 

### Управление через репозиторий

В более продвинутых сценариях можно:

  * поднять свой зеркальный репозиторий;

  * ограничить, какие версии пакета в нём доступны.




Но это уже история про внутренние репозитории и DevOps‑практики.

## Итоги

Мы установили Python 3.14 на Ubuntu 24.04 **через репозиторий, без сборки из исходников** , и при этом:

  * не тронули системный Python, от которого зависит сама Ubuntu;

  * получили возможность ставить и обновлять Python стандартным `apt install/upgrade`;

  * настроили `pip` именно под Python 3.14;

  * организовали изолированные виртуальные окружения для проектов;

  * обсудили, как масштабировать этот подход на парк серверов;




Такой способ хорошо вписывается в жизнь занятого администратора: один раз настроил репозиторий и дальше Python 3.14 становится таким же «обычным» пакетом инфраструктуры, как nginx или openssh-server.

Похожие статьи

[Как найти инструкцию с данными доступа к услуге](https://zomro.com/rus/blog/faq/243-kak-najti-instrukciju-s-dannymi-dostupa-k-usluge) [Как сделать 301 редирект с www на без www (и наоборот)](https://zomro.com/rus/blog/faq/613-how-to-make-301-redirect-from-www-to-non-www-and-vice-versa) [Установка игрового сервера Minecraft: Java Edition на Ubuntu 20.04](https://zomro.com/rus/blog/faq/225-ustanovka-servera-igry-minecraft-java-edition-na-ubuntu-2004) [Системный сборщик мусора PHP на Linux](https://zomro.com/rus/blog/faq/372-php-system-garbage-collector-on-linux) [Как подключаться к разным серверам Windows через один IP адрес](https://zomro.com/rus/blog/faq/341-kak-podklyuchatsya-k-raznym-serveram-windows-cherez-odin-ip-adres)

[ Выделенный сервер с GPU от €174.80/мес ](/dedicated-servers/type=gpu)
