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

Как обновить Debian Etch до Lenny

• 6 min read • Linux • Обновлено 23 Nov 2025
Обновление Debian Etch до Lenny
Обновление Debian Etch до Lenny

Введение

Debian Etch скоро перестанет получать поддержку от команды Debian, поэтому многие сервера нужно обновить до Debian Lenny. Этот материал собран на основе практического опыта администратора, который проводил несколько таких обновлений. Руководство фокусируется на минимизации рисков и на том, чтобы у вас была возможность восстановиться, если что-то пойдёт не так.

Важно: перед началом обновления убедитесь, что у вас есть работающая резервная копия и план отката.

Необходимые понятия (коротко)

  • apt/aptitude — менеджеры пакетов Debian; aptitude предоставляет удобный интерфейс и автоматизацию зависимостей.
  • dpkg — низкоуровневый инструмент управления пакетами .deb.
  • sources.list — файл /etc/apt/sources.list, в котором указаны репозитории.

Подготовка и резервное копирование

  1. Сделайте полную резервную копию диска или виртуального образа и храните её вне целевого сервера. Это может быть полная резервная копия LVM, snapshot VM или внешний бэкап.
  2. Сделайте локальную копию конфигураций:
mkdir -p /root/backup-etc-before-lenny
cp -a /etc /root/backup-etc-before-lenny

Примечание: хранение /etc локально ускорит восстановление отдельных конфигов, если они будут перезаписаны.

Важно: резервная копия должна быть проверяема — выполните выборочное восстановление файлов в тестовой среде.

Удалённый доступ: SSH и screen

При удалённом обновлении всегда выполняйте апгрейд в screen или tmux, чтобы не потерять прогресс при разрыве соединения.

Запустить screen:

screen

Переподключиться к сессии:

screen -rd

Если screen отсутствует:

aptitude install screen

Обновите текущую Etch-систему перед сменой репозиториев

Перед переключением на Lenny убедитесь, что ваша Etch-система полностью обновлена:

aptitude update && aptitude dist-upgrade

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

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

Убедитесь, что на корневом разделе и в /var достаточно места для загрузки и распаковки пакетов. При необходимости очистите кеш:

aptitude clean

Редактирование sources.list для Lenny

Отредактируйте /etc/apt/sources.list: замените etch на lenny. Закомментируйте сторонние репозитории и бэкапорты на время обновления.

Пример набора репозиториев (используемые зеркала):

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

После правки выполните:

aptitude update

Сначала обновите apt и aptitude

Обновление apt и aptitude важно, поскольку они влияют на обработку зависимостей и конвертацию списков автоматически установленных пакетов.

aptitude update && aptitude install apt && aptitude install aptitude

Первая команда apt/aptitude версии Lenny прочитает список автоматически установленных пакетов и конвертирует его. Если у вас установлен aptitude, выполните хотя бы одну команду для конвертации, например:

aptitude search "?false"

Если команда в примере не возвращает ошибок — конвертация прошла.

Минимальное системное обновление

Выполните минимальный апгрейд, который обновит пакеты без удаления/установки дополнительных зависимостей:

aptitude safe-upgrade

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

Совет: перед массовой заменой конфигов сохраняйте старые файлы с расширением .dpkg-old или .local для быстрой проверки.

Полный апгрейд системы

После safe-upgrade выполните полный апгрейд:

aptitude dist-upgrade

Опять же — ожидайте диалогов по конфигурациям и перезапусков сервисов. Некоторые службы (ssh, apache, mysql и т.д.) могут запросить перезапуск — соглашайтесь аккуратно, если вы подключены по SSH, убедитесь, что вы в screen.

Проверка и обновление ядра

Проверьте, обновилось ли ядро автоматически:

dpkg -l "linux-image*" | grep ^ii

Если вывода нет, придется установить пакет ядра вручную. Узнайте текущее ядро:

uname -r

Пример вывода:

cartman:~# uname -r  
2.6.26-2-686

Подберите доступный пакет ядра:

apt-cache search linux-image-2.6- | grep -v transition

Пример вывода:

cartman:~# apt-cache search linux-image-2.6- | grep -v transition  
linux-image-2.6-486 - Linux 2.6 image on x86  
linux-image-2.6-686 - Linux 2.6 image on PPro/Celeron/PII/PIII/P4  
linux-image-2.6-686-bigmem - Linux 2.6 image on PPro/Celeron/PII/PIII/P4  
linux-image-2.6-amd64 - Linux 2.6 image on AMD64  
linux-image-2.6-openvz-686 - Linux 2.6 image on PPro/Celeron/PII/PIII/P4, OpenVZ support  
linux-image-2.6-vserver-686 - Linux 2.6 image on PPro/Celeron/PII/PIII/P4, Linux-VServer support  
linux-image-2.6-vserver-686-bigmem - Linux 2.6 image on PPro/Celeron/PII/PIII/P4, Linux-VServer support  
linux-image-2.6-xen-686 - Linux 2.6 image on i686, oldstyle Xen support

Установите подходящий пакет (в примере — linux-image-2.6-686):

aptitude install linux-image-2.6-686

Перезагрузите сервер. Держите под рукой консоль KVM/IPMI для восстановления, на случай, если загрузчик или конфигурация завалит запуск.

В официальных заметках Debian рекомендуют повторно запустить /sbin/lilo (если вы используете lilo) и проверить /etc/kernel-img.conf: убедитесь, что do_bootloader = Yes, чтобы загрузчик автоматически обновлялся после установки нового ядра.

Тестирование после обновления

  • Проверьте загрузку и версию ядра: uname -r
  • Проверьте статус основных служб: systemctl (если применимо) или /etc/init.d/* status
  • Просмотрите логи: /var/log/syslog, /var/log/kern.log, /var/log/dpkg.log

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

Если система не загружается или критичные сервисы упали:

  1. Восстановите конфиг из /root/backup-etc-before-lenny.
  2. Если используется снимок VM/LVM — выполните rollback снимка.
  3. В крайнем случае восстановите из полной резервной копии.

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

Чек-лист перед началом (SOP)

  • Сделана полная, проверяемая резервная копия.
  • Локально сохранён /etc.
  • Есть доступ к консоли KVM/IPMI.
  • Система обновлена до последнего Etch-патча.
  • Комментарии в sources.list для сторонних репозиториев.
  • Достаточно дискового пространства.

Роли и обязанности

  • Системный администратор: запуск обновления, контроль логов, принятие решений по конфигам.
  • Оператор резервного копирования: проверка и подтверждение валидности бэкапов.
  • Ответственный за мониторинг: наблюдение за сервисами после апгрейда.

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

  • Система успешно загрузилась на Lenny-ядре.
  • Все критические сервисы (SSH, веб, БД) работают и проходят smoke-тесты.
  • Логи не содержат критических ошибок за 24 часа после обновления.
  • Бекапы и экспорт данных доступны и проверяемы.

Типичные проблемы и как их решать

  • Проблема: Дефолтные конфиги были перезаписаны. Решение: восстановите /root/backup-etc-before-lenny или вручную объедините отличия.

  • Проблема: Пакет ядра не установлен автоматически. Решение: вручную установите linux-image-* соответствующей архитектуры и перезагрузите.

  • Проблема: Сторонние репозитории несовместимы с Lenny. Решение: закомментируйте их, завершите обновление, затем обновите сторонние репозитории под Lenny.

Советы и эвристики

  • Обновляйте сначала пакеты управления пакетами (apt/aptitude).
  • Включите screen/tmux — потеря SSH не прервет работу.
  • Всегда проверяйте свободное место в /boot и /var.

Таблица совместимости ядра (упрощённая)

  • i386 (классификация 486/686) — используйте linux-image-2.6-486 или linux-image-2.6-686.
  • amd64 — linux-image-2.6-amd64.
  • Контейнеры/виртуализация — используйте соответствующие flavor пакеты (openvz, xen, vserver).

Миграционные альтернативы и когда это не сработает

  • Альтернатива: развернуть новую VM с Lenny и мигрировать приложения — безопаснее для критичных производств.
  • Когда не сработает: если у вас сильно изменённое окружение с нестандартными проприетарными пакетами, апгрейд in-place может сломать зависимости.

Тест-кейсы и проверка приёмки

  • SSH-подключение стабильно на протяжении 10 минут после загрузки.
  • Веб-приложение проходит базовый набор тестов (GET /health, логин, выборка данных).
  • Резервное копирование проходит, и тестовое восстановление одного файла успешно.

Краткий глоссарий (1 строка для каждого термина)

  • aptitude — высокоуровневый менеджер пакетов для Debian с автоматическим решением зависимостей.
  • apt — основной набор инструментов для работы с репозиториями и пакетами.
  • dpkg — низкоуровневый менеджер пакетов для установки/удаления .deb.

Частые вопросы

Q: Нужно ли отключать сторонние репозитории? A: Да — временно закомментируйте их, чтобы избежать конфликтов зависимостей.

Q: Можно ли откатываться без полного бэкапа? A: Откат без полного бэкапа рискован; используйте снимки или проверяемые бэкапы.

Заключение

Обновление Debian Etch до Lenny возможно безопасно при соблюдении ряда правил: сделайте полную и проверяемую резервную копию, обновите apt/aptitude, выполните поэтапный апгрейд (safe-upgrade, затем dist-upgrade), проверьте и при необходимости вручную установите ядро. Всегда держите консольный доступ через KVM/IPMI и помните про план отката.

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

Анимированный GIF улыбающегося лица

Список полезных команд (шпаргалка)

screen
screen -rd
aptitude update && aptitude dist-upgrade
aptitude update && aptitude install apt && aptitude install aptitude
aptitude search "?false"
aptitude safe-upgrade
aptitude dist-upgrade
dpkg -l "linux-image*" | grep ^ii
uname -r
apt-cache search linux-image-2.6- | grep -v transition
aptitude install linux-image-2.6-686

Ключевые контакты и роли должны быть заранее определены перед апгрейдом.

Примечание по лицензии и ответственности

Автор выкладывает инструкции в ознакомительных целях. Используйте материал на свой страх и риск — заранее протестируйте на стенде.

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