Обновление архивных версий Debian
| Уровень сложности | Средний |
| Права root | Требуются |
| Требования | Терминал Linux, VNC/IPMI |
| Категория | Обновление/Миграция |
| Совместимость с ОС | Debian |
| Примерное время чтения | 1 час |
Введение
Работа с устаревшими версиями Debian - задача, с которой рано или поздно сталкиваются администраторы. Система может стабильно работать годами, но в какой-то момент обновление становится необходимым.
Если версия уже вышла из поддержки, стандартные репозитории перестают работать и тут начинается более «интересная» часть: обновление через архивы. Этот способ мы и разберем в данной статье.
Что такое архивные версии
После завершения поддержки релизы Debian переносятся в архив:
- Основной архив расположен: archive.debian.org
- пакеты остаются доступными, но не обновляются
- метаданные считаются устаревшими (это важно для APT)
Примеры архивных релизов:
- Debian 7
- Debian 8
- Debian 9
Общие принципы обновления
Обновление выполняется строго последовательно:
Нельзя перескочить через релиз. Нужно обновляться шаг за шагом.
Каждый этап включает:
- переключение репозиториев
- обновление пакетов
- проверку состояния системы
Подготовка системы
Перед началом рекомендуется:
- сделать резервную копию данных
- сохранить конфигурации (`/etc`)
- обеспечить доступ к системе через VNC/IPMI
При переходе между версиями Debian (особенно с архивных релизов вроде Debian 8 и выше) возможны серьёзные изменения зависимостей и конфигураций, из-за которых система может перестать загружаться или работать некорректно. Без резервной копии любое обновление становится рискованным и может привести к полной потере работоспособности системы и данных.
Также необходимо отключить проверку «срока годности» репозиториев:
echo 'Acquire::Check-Valid-Until "false";' > /etc/apt/apt.conf.d/99no-check-valid
Общий алгоритм
Для каждого шага обновления:
- Обновить /etc/apt/sources.list
- Выполнить команды: apt-get update, apt-get upgrade, apt-get dist-upgrade
- Перезагрузить систему
- Проверить работоспособность
Архивные репозитории Debian (по версиям)
Debian 7
deb http://archive.debian.org/debian wheezy main contrib non-free
deb http://archive.debian.org/debian-security wheezy/updates main contrib non-free
Debian 8
deb http://archive.debian.org/debian jessie main contrib non-free
deb http://archive.debian.org/debian-security jessie/updates main contrib non-free
Debian 9
deb http://archive.debian.org/debian stretch main contrib non-free
deb http://archive.debian.org/debian-security stretch/updates main contrib non-free
Debian 10
deb http://archive.debian.org/debian buster main contrib non-free
deb http://archive.debian.org/debian-security buster/updates main contrib non-free
Debian 11
deb http://archive.debian.org/debian bullseye main contrib non-free
deb http://archive.debian.org/debian-security bullseye-security main contrib non-free
Debian 12
Еще не архивный (текущий стабильный релиз на момент написания), используется обычный mirror:
deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
Пример обновления
Рассмотрим конкретный переход с Debian 8 до Debian 9.
1. Переключение на архив Jessie
Если система уже не обновляется, сначала убедитесь, что используются архивные репозитории:
nano /etc/apt/sources.list
deb http://archive.debian.org/debian jessie main contrib non-free
deb http://archive.debian.org/debian-security jessie/updates main contrib non-free
2. Полное обновление внутри Jessie
apt-get update
apt-get upgrade
apt-get dist-upgrade
Это важно: система должна быть полностью обновлена в рамках текущего релиза.
Во время обновления у Вас выйдет ошибка:
Она означает, что ключи подписи пакетов устарели. Обновляем их:
apt-get install debian-archive-keyring
Если и после этого ругается, то принудительно:
apt-get -o Acquire::AllowInsecureRepositories=true \
-o Acquire::AllowDowngradeToInsecureRepositories=true \
update
А потом еще раз:
apt-get install debian-archive-keyring
И возвращаемся к обновлению.
3. Переход на Stretch
Меняем sources.list:
deb http://archive.debian.org/debian stretch main contrib non-free
deb http://archive.debian.org/debian-security stretch/updates main contrib non-free
4. Запуск обновления
apt-get update
apt-get upgrade
apt-get dist-upgrade
Разница между командами
- apt-get update - Обновляет список доступных пакетов и версий.
- apt-get upgrade - Устанавливает обновления, не затрагивая зависимости (не удаляет пакеты и не добавляет новые).
- apt-get dist-upgrade - Выполняет полное обновление: может устанавливать новые зависимости, может удалять устаревшие пакеты, разрешает конфликты зависимостей.
Во время процесса могут появляться вопросы по конфигурациям. Рекомендуется сохранять текущие настройки, если нет уверенности. Возможны изменения в зависимостях пакетов
5. Перезагрузка и проверка
reboot
Проверка версии:
cat /etc/debian_version
Заключение
При последовательном выполнении всех шагов и внимательном подходе переход между версиями Debian обычно проходит без серьёзных проблем.




