Перейти к содержимому

Debian — Швейцарский нож в мире Linux

Debian — это не самый яркий дистрибутив, но самый надёжный фундамент в мире Linux. За ним стоит крупнейшее сообщество волонтёров-разработчиков, а за его плечами — десятилетия безотказной работы серверов, встраиваемых систем и облачной инфраструктуры. Если ты управляешь Linux-машинами в продакшене, Debian (или его производные) уже присутствует в твоём стеке — осознанно или нет.

Управление пакетами: apt и dpkg

Два инструмента формируют ядро пакетной системы Debian. apt — высокоуровневый интерфейс для работы с репозиториями, разрешения зависимостей и обновления системы. dpkg — низкоуровневый движок, который устанавливает, удаляет и анализирует отдельные .deb-файлы без обращения к репозиториям.

# Обновление индекса и апгрейд системы
apt update
apt upgrade -y
apt full-upgrade -y

# Установка и удаление
apt install -y nginx
apt remove --purge nginx
apt autoremove -y

# Поиск и информация
apt search nginx
apt show nginx
apt list --installed | grep nginx

# dpkg для прямой работы с .deb
dpkg -i package.deb
dpkg -l | grep nginx
dpkg -L nginx
dpkg -S /usr/bin/nginx
Предупреждение

dpkg -i не разрешает зависимости. Если пакет тянет другие библиотеки, используй apt install ./package.deb — apt подтянет недостающие зависимости из репозитория.

Типичная ошибка — смешивание apt и dpkg при частичных установках. Если dpkg -i завершился с ошибкой зависимости, запусти apt --fix-broken install и заверши операцию через apt.

Модель стабильности и ветви релизов

Debian строится на трёх ветвях, определяющих агрессивность обновлений и уровень тестирования.

ВетвьКодовое имяСтабильностьКогда использовать
stablebookworm (12) / trixie (13)Высокая, только безопасность и критические фиксыПродакшен-серверы, базовая инфраструктура
testingbookworm-progressСредняя, пакеты проходят период стабилизацииРазработчественные машины, контейнеры
unstablesidНизкая, ежедневные снапшотыЭксперименты, бинарный сбор пакетов

В sources.list это выглядит так:

# Stable — рекомендуется для прода
deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb http://deb.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
Примечание

Секции non-free и non-free-firmware были введены начиная с Debian 12. Без них некоторые проприетарные драйверы (Wi-Fi, GPU) не установятся.

Переход между ветвями — apt dist-upgrade с подменой sources.list. Делай это только на тестовых стендах: бинарная совместимость между testing и stable не гарантирована для всех пакетов.

Поддержка архитектур

Debian официально поддерживает больше аппаратных платформ, чем любой другой дистрибутив. Это критично для embedded и IoT-проектов.

АрхитектураПортТипичное применение
amd64amd64Серверы, десктопы, облако
arm64arm64ARM-серверы (AWS Graviton, Raspberry Pi 4/5)
armhfarmhfВстраиваемые устройства с FPU
i386i386Legacy-системы
ppc64elppc64elIBM Power Systems
s390xs390xIBM Z mainframes
riscv64riscv64Открытые RISC-V платформы

Мультиархитектурная поддержка позволяет ставить пакеты для чужих платформ:

dpkg --add-architecture arm64
apt update
apt install -y package:arm64

Debian как основа других дистрибутивов

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

  • Ubuntu — берёт testing-ветвь, добавляет свои PPA и проприетарные драйверы.
  • Linux Mint — основан на Ubuntu, следовательно, на Debian-пакетах.
  • Proxmox VE — модифицированный Debian 12 с добавлением корпоративных репозиториев.
  • Kali Linux — Debian unstable с набором инструментов пентеста.
  • Raspberry Pi OS (бывший Raspbian) — Debian armhf/arm64 с патчами для Pi.
  • MX Linux, antiX — Debian stable с облегчёнными DE.
Подсказка

Если тебе нужен стабильный бэкленд с более свежим софтом — берёшь Debian stable и добавляшь backports-репозиторий. Это даёт обновлённые версии ядра, nginx, PostgreSQL без перехода на testing.

echo "deb http://deb.debian.org/debian bookworm-backports main" >> /etc/apt/sources.list
apt update
apt install -t bookworm-backports linux-image-amd64

Практические сценарии в DevOps

В повседневной работе Debian-подход проявляется в нескольких ключевых паттернах.

Базовые образы для контейнеров. Официальные Docker-образы debian:bookworm, debian:slim — это отправная точка для сотен минималистичных контейнеров. Вес debian:slim — около 70 МБ против 200+ МБ у ubuntu:latest.

FROM debian:slim
RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/*

VM-шаблоны. Proxmox, который работает на Debian, использует debootstrap для создания шаблонов контейнеров (LXC). Это тот же инструмент, что лежит в основе установки системы с нуля.

Конфигурационное управление. Ansible, Puppet, Chef — все три работают с Debian-пакетами напрямую. Модуль apt в Ansible — один из самых используемых в любом плейбуке.

CI/CD пайплайны. Сборка .deb-пакетов в GitLab CI или GitHub Actions — стандартный паттерн. debhelper, dh_make, pbuilder или sbuild обеспечивают воспроизводимый билд в чистом chroot.

Ключевые команды для повседневной работы

Сведи эту таблицу в закладки — она покрывает 90% задач на Debian-сервере.

ЗадачаКоманда
Обновить список пакетовapt update
Обновить все пакетыapt upgrade -y
Полный апгрейд с разрешением зависимостейapt full-upgrade -y
Установить пакетapt install -y <pkg>
Удалить пакет с конфигамиapt purge -y <pkg>
Найти пакетapt search <query>
Информация о пакетеapt show <pkg>
Список установленныхapt list --installed
Найти файл принадлежащий пакетуdpkg -S <path>
Список файлов пакетаdpkg -L <pkg>
Проверить статус пакетаdpkg -l <pkg>
Починить сломанные зависимостиapt --fix-broken install
Очистить кэш aptapt clean && apt autoclean
Добавить архитектуруdpkg --add-architecture <arch>
Создать .deb из исходниковdebuild -us -uc

Debian не самый быстрый на первый взгляд — нет rolling-релизов и свежих версий софта из коробки. Но именно эта предсказуемость делает его базой для продакшена, на котором работают миллионы серверов. Если ты хочешь надёжность, а не трендовые версии — Debian не подведёт.