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

Обновление Debian с Wheezy до Jessie — пошаговое руководство

• 6 min read • DevOps • Обновлено 22 Nov 2025
Обновление Debian Wheezy → Jessie
Обновление Debian Wheezy → Jessie

Перед началом сделайте полный бэкап конфигурации, данных пользователей и баз данных. Проверьте, что в /etc/apt/sources.list указано «wheezy», установите все обновления Wheezy, затем замените репозитории на «jessie» и выполните поочерёдно apt-get upgrade и apt-get dist-upgrade. После успешного обновления перезагрузите сервер и проверьте /etc/os-release и работу ключевых сервисов.

Важно: обновление ядра и init-системы может изменить поведение служб (Jessie использует systemd). Планируйте окно обслуживания и откатную стратегию.

Оглавление

  • Введение
  • Подготовка и бэкап
  • Проверка состояния пакетов
  • Обновление репозиториев и сам апгрейд
  • После обновления: проверки и тесты
  • Частые проблемы и когда обновление не пройдёт
  • Альтернативные подходы
  • План отката и восстановление
  • Роли и чек-листы
  • Риски и меры снижения
  • Мини-методология и критерии приёмки
  • Полезные команды и сниппеты
  • Ссылки

Введение

Этот документ описывает последовательность действий для обновления Debian с релиза Wheezy до релиза Jessie. Описанные шаги просты, но требуют тщательной подготовки. Обновление меняет версии библиотек, ядро и init-систему — это критичная операция для продакшен-серверов.

Определение: init-система — программа, запускающая и управляющая сервисами на этапе загрузки (в Jessie по умолчанию — systemd).

Подготовка и бэкап

Сделайте полный бэкап перед началом. Сюда входят:

  • /etc — конфигурация системы
  • /home — данные пользователей
  • /var/www (или каталог веб-приложений)
  • /var/vmail или другие директории почтового сервера
  • Базы данных (MySQL, PostgreSQL и т.д.)

Рекомендуемые места хранения бэкапа: внешний диск, удалённый сервер по FTP/SFTP/rsync или облачный диск.

Примеры архивирования с сохранением прав и символьных ссылок:

tar -pczf etc.tar.gz /etc
tar -pczf www.tar.gz /var/www
tar -pczf home.tar.gz /home

Для ISPConfig 3 — файлы почтового сервера:

tar -pczf vmail.tar.gz /var/vmail

Дамп всех баз MySQL (без пароля в команде, используется файл конфигурации дебиа):

mysqldump --defaults-file=/etc/mysql/debian.cnf -cCeQ --hex-blob --quote-names --routines --events --triggers --all-databases -r all_databases.sql

Переместите архивы и .sql файлы на безопасное хранилище.

Важно: протестируйте восстановление (в тестовой среде) до выполнения обновления в продакшене.

Проверка файла /etc/apt/sources.list

Перед установкой любых обновлений убедитесь, что в /etc/apt/sources.list не используется метка “stable”. Если там указано “stable”, apt может перейти на новую стабильную версию раньше, чем вы готовы.

Откройте файл в редакторе, например:

nano /etc/apt/sources.list

Пример строк для Wheezy (замените код страны на свой):

deb http://ftp.de.debian.org/debian wheezy main contrib non-free
deb-src http://ftp.de.debian.org/debian wheezy main contrib non-free
deb http://ftp.de.debian.org/debian wheezy-updates main contrib non-free
deb http://ftp.de.debian.org/debian-security wheezy/updates main contrib non-free

Примечание: использование зеркала вашей страны ускорит загрузку пакетов.

Установка всех обновлений для Wheezy

Установите все ожидающие обновления Wheezy. Это уменьшит риск конфликтов при переходе на Jessie.

apt-get update
apt-get upgrade
apt-get dist-upgrade

Остановите ненужные сервисы (например, приложения, базы), если это возможно. Это снизит вероятность проблем с блокировкой файлов.

Проверка состояния пакетов

Перед обновлением убедитесь, что нет пакетов в состоянии hold или полурезультате установки. Исправьте все «сломанные» пакеты.

Проверки:

dpkg --audit
dpkg --get-selections | grep hold

Если какие-то пакеты отмечены как hold, разблокируйте или завершите их установку, например:

echo "package install" | dpkg --set-selections
apt-get -f install

(Замените package на имя пакета.)

Обновление /etc/apt/sources.list для Jessie

Отредактируйте /etc/apt/sources.list и замените все упоминания wheezy на jessie. Пример:

deb http://ftp.de.debian.org/debian/ jessie main contrib non-free
deb-src http://ftp.de.debian.org/debian/ jessie main contrib non-free

deb http://httpredir.debian.org/debian jessie-updates main contrib non-free
deb-src http://httpredir.debian.org/debian jessie-updates main contrib non-free

deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free

Снова выберите ближайшее зеркало, заменив код страны по необходимости. Сохраните файл и обновите список пакетов:

apt-get update

Обновление в два этапа

Рекомендуется разделить обновление на два шага. Сначала установите обновления базовых пакетов, затем выполните полную дистрибутивную замену.

Шаг 1 — обновление пакетов:

apt-get upgrade

Шаг 2 — дистрибутивное обновление:

apt-get dist-upgrade

Во время apt-get dist-upgrade могут появиться запросы по перезаписи конфигурационных файлов. Внимательно читайте подсказки. Если вы не уверены, сохраняйте текущие конфигурации и анализируйте изменения в тестовой среде.

После завершения перезагрузите систему, чтобы загрузить новое ядро и init-систему:

reboot

Проверка результатов обновления

Проверьте текущую версию системы:

cat /etc/os-release

Ожидаемый вывод на Jessie должен содержать информацию о Debian GNU/Linux и релиз jessie.

Скриншот вывода файла /etc/os-release на Debian Jessie

Также проверьте состояние ключевых сервисов (SSH, веб, БД, почта):

systemctl status ssh
systemctl status apache2
systemctl status mysql

Если systemctl недоступен на вашей системе, используйте service:

service ssh status

Частые проблемы и когда обновление не пройдёт

Когда обновление может провалиться:

  • Нехватка свободного места на /, /var или /boot. Очистите место до начала.
  • Сторонние репозитории с неподдерживаемыми пакетами (ppa/third-party) — они могут вызвать конфликты. Отключите их перед обновлением.
  • Пакеты, помеченные как hold или полуставленные.
  • Модифицированные конфигурации, которые требуют ручного слияния.
  • Сильно кастомизированные ядра или проприетарные модули, несовместимые с новым ядром.

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

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

  • Пошаговая миграция сервисов: поднять новую систему (Jessie) на отдельном хосте и перенести службы по очереди.
  • Контейнеризация: переместить приложения в контейнеры (Docker) и обновить хост отдельно.
  • Минимальный образ: установить чистую Jessie и восстановить конфигурации и данные из бэкапа.

Каждый подход имеет свои плюсы: миграция на новый хост даёт более чистую систему и меньше зависимостей, но требует дополнительного времени и ресурсов.

План отката и восстановление

Если обновление прошло некорректно — выполните откат:

  1. Немедленно переведите сервисы в режим обслуживания (maintenance).
  2. Восстановите файлы из архива (например, /etc, /var/www) на прежнюю систему или в тестовую среду.
  3. Восстановите дамп баз данных:
mysql < all_databases.sql
  1. Если вы создавали снимок диска (LVM snapshot или snapshot виртуальной машины), откатите его.
  2. Восстановите конфигурацию загрузчика, если нужно.

Критерии успеха отката: система загружается в предыдущее состояние, сервисы работают как до обновления, данные целы.

Роли и чек-листы

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

  • Сделан полный бэкап и протестировано восстановление
  • Проверено свободное место на дисках
  • Отключены сторонние репозитории
  • Устранены held / broken пакеты
  • Оповещены пользователи и назначено окно обслуживания
  • Подготовлен план отката

Чек-лист для разработчика приложения:

  • Протестирована совместимость с новой версией библиотек
  • Вынесены внешние зависимости (например, отдельные сервисы)
  • Обновлены конфигурации и скрипты запуска

Руководство для оператора хостинга:

  • Наблюдение за логами после обновления
  • Мониторинг использования CPU, памяти и дисков
  • Готовность к быстрому восстановлению контейнеров/VM

Риски и меры снижения

Матрица рисков (упрощённо):

  • Неполадки при загрузке — риск высокий; мерирование: иметь доступ к консоли, live-образ или snapshot.
  • Потеря данных — риск высокий; мерирование: проверенные бэкапы и тест восстановления.
  • Снижение совместимости приложений — риск средний; мерирование: тестирование на стейджинге.

Мини-методология (быстрая инструкция)

  1. Сделать бэкап (данные + БД + конфиги).
  2. Проверить состояние пакетов и диск.
  3. Убедиться, что sources.list указывает wheezy.
  4. apt-get update && apt-get upgrade && apt-get dist-upgrade (Wheezy).
  5. Заменить wheezy на jessie в sources.list.
  6. apt-get update && apt-get upgrade && apt-get dist-upgrade (Jessie).
  7. Перезагрузить и проверить систему.

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

  • Система загружается и в /etc/os-release указан jessie.
  • Критические сервисы (SSH, веб, БД, почта) работают.
  • Нет «сломанных» или помеченных hold пакетов.
  • Логи не содержат фатальных ошибок в течение окна наблюдения.

Полезные команды и сниппеты

Проверка свободного места:

df -h

Список активных зеркал и приоритеты apt:

cat /etc/apt/sources.list
ls /etc/apt/sources.list.d/

Удаление пакетов, оставшихся от старых версий:

apt-get autoremove
apt-get autoclean

Простая схема принятия решения

flowchart TD
  A[Готов ли бэкап и тест восстановления?] -->|нет| B[Сделать бэкап и протестировать восстановление]
  A -->|да| C[Есть held/broken пакеты?]
  C -->|да| D[Исправить состояния пакетов]
  C -->|нет| E[Обновить wheezy и заменить на jessie]
  E --> F[Выполнить upgrade и dist-upgrade]
  F --> G[Перезагрузить]
  G --> H[Проверить сервисы и /etc/os-release]

Когда обновление не подходит

  • Если у вас критичное окружение без окна обслуживания и без резерва — лучше сначала поднять новую систему параллельно и мигрировать сервисы.
  • Если приложение зависит от очень старых библиотек, которые не поддерживаются в Jessie — рассмотрите контейнеризацию с сохранением старого окружения.

Ссылки

Поделиться: 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 быстро