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

Обновление Ubuntu 12.04 до 14.04 LTS

4 min read Linux Обновлено 19 Oct 2025
Обновление Ubuntu 12.04 до 14.04 LTS
Обновление Ubuntu 12.04 до 14.04 LTS

Коротко: сделайте полную резервную копию, убедитесь в статическом IP и работоспособности сервисов, затем выполните apt-get update, установите update-manager-core, проверьте /etc/update-manager/release-upgrades с Prompt=lts и запустите do-release-upgrade. После обновления проверьте версию через cat /etc/lsb-release и перезагрузите сервер.

Предварительное примечание

Этот материал описывает последовательность действий для обновления сервера с Ubuntu 12.04 на Ubuntu 14.04 LTS. Выполняйте операции с правами root или через sudo. Перед началом убедитесь, что у вас есть базовая установка Ubuntu 12.04 Server и статический IP-адрес. В примерах используется IP 192.168.0.100 и hostname server1.example.com — замените их на ваши значения.

Важно: LTS-релизы Ubuntu (например, 12.04, 14.04) выходят примерно каждые 2 года и получают обновления безопасности и исправления в течение 5 лет.

Что будет сделано (кратко)

  • Полный бэкап данных
  • Обновление списка пакетов и установка менеджера обновлений
  • Настройка механизма обновлений на LTS-обновления
  • Запуск do-release-upgrade
  • Проверка и перезагрузка

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

  1. Создайте полную резервную копию данных и конфигураций на внешний носитель или сетевой ресурс (например, rsync на другой хост или копия на USB-диск). Пример:
rsync -avz /etc /var /home backup-host:/backups/server1/
  1. Зафиксируйте список установленных пакетов:
dpkg --get-selections > /root/package-list-12.04.txt
  1. Снимите копию важных конфигурационных файлов (nginx, apache, mysql/postgres и т.д.).

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

1. Обновление менеджера и подготовка к релизу

Обновите индекс пакетов и установите update-manager-core:

apt-get update
apt-get install update-manager-core

Отредактируйте файл /etc/update-manager/release-upgrades и убедитесь, что Prompt установлен в lts:

vi /etc/update-manager/release-upgrades

В файле должно быть примерно так:

# Default behavior for the release upgrader.

[DEFAULT]
# Default prompting behavior, valid options:
#
#  never  - Never check for a new release.
#  normal - Check to see if a new release is available.  If more than one new
#           release is found, the release upgrader will attempt to upgrade to
#           the release that immediately succeeds the currently-running
#           release.
#  lts    - Check to see if a new LTS release is available.  The upgrader
#           will attempt to upgrade to the first LTS release available after
#           the currently-running one.  Note that this option should not be
#           used if the currently-running release is not itself an LTS
#           release, since in that case the upgrader won't be able to
#           determine if a newer release is available.
Prompt=lts

Если вы хотите перейти на обычный (non-LTS) релиз — используйте Prompt=normal. Для нашей задачи оставьте Prompt=lts.

2. Запуск обновления релиза

Запустите процесс обновления:

do-release-upgrade -d

Примечание: опция -d в некоторых случаях требуется для обнаружения следующего релиза, особенно если репозитории или зеркала обновлены с задержкой. Во время выполнения обновления вам будут заданы вопросы о перезаписи конфигурационных файлов и остановке сервисов — выбирайте опции осознанно. Если не уверены, сохраняйте текущие конфигурации (обычно ответ «n» для автоматической перезаписи) и разберитесь после обновления.

Время обновления зависит от объёма пакетов и скоростей каналов — на примере автора это заняло около 20 минут, но у вас может занять от десятков минут до нескольких часов.

После завершения обновления система предложит перезагрузку. Перезагрузите сервер.

3. Проверка успешности обновления

После перезагрузки проверьте версию:

cat /etc/lsb-release

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

root@server1:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.1 LTS"
root@server1:~$

Если видите DISTRIB_RELEASE=14.04 — обновление успешно.

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

  • Система грузится и выдает DISTRIB_RELEASE=14.04
  • Все критичные сервисы (веб, БД, SSH) стартуют и работают
  • Конфигурационные файлы проверены и, при необходимости, восстановлены
  • Резервные копии успешно созданы и доступны

Откат и аварийный план (runbook)

  1. Если сервер не загружается — загрузитесь в single-user или recovery mode и восстановите /etc/fstab или другие критичные файлы из резервной копии.
  2. При серьёзных проблемах откатитесь к полному образу диска из бэкапа (raw-образ или снимок LVM/VM).
  3. В крайнем случае — разверните новую систему 12.04 из образа, восстановите данные и попробуйте миграцию снова после анализа ошибок.

Совет: перед окончательной перезагрузкой сохраните список пакетов и конфигураций — это упростит откат.

Частые проблемы и способ их решения

  • Проблема: do-release-upgrade не находит релиз. Решение: проверьте файл /etc/update-manager/release-upgrades, зеркала в /etc/apt/sources.list и наличие подключения к интернету.

  • Проблема: конфликт конфигураций при установке пакетов. Решение: временно сохраните старую конфигурацию (имя.conf.old) и примите новую по умолчанию, затем вручную объедините отличия.

  • Проблема: сервис не запускается после обновления. Решение: проверьте журналы systemd (journalctl -u ) и сравните версии зависимостей (lib*, python, php, etc.). Иногда требуется пересобрать модуль или переконфигурировать сервис.

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

  • Чистая установка: разверните сервер с Ubuntu 14.04 и восстановите данные и конфигурации. Это часто чище, но требует больше времени на настройку.
  • Переход через промежуточный релиз: для некоторых сценариев целесообразно тестировать на staging-сервере перед production.

Контроль совместимости и советы по миграции

  • Проверьте версии приложений и модулей (PHP, Python, MySQL/Postgres). Некоторые пакеты могли изменить названия или иметь несовместимые версии.
  • Пересмотрите init-скрипты: между 12.04 и 14.04 растет распространение systemd/Upstart — убедитесь, что сервисы корректно запускаются.
  • Тестируйте конфигурации на тестовом сервере с теми же пакетами.

Чек-лист для администратора перед обновлением

  • Полная резервная копия данных
  • Сохранён список пакетов (dpkg –get-selections)
  • Копии конфигураций (nginx/apache, БД)
  • Проверено свободное место на / и /boot
  • Обновлены все текущие пакеты (apt-get update && apt-get upgrade)
  • План отката и доступ к бэкапам

Краткий словарь

  • LTS: Long Term Support — длительная поддержка (обычно 5 лет для Ubuntu LTS).
  • do-release-upgrade: утилита для обновления дистрибутива Ubuntu.

Итог

Обновление с Ubuntu 12.04 на 14.04 LTS — прямой и поддерживаемый путь: подготовьте резервные копии, настройте Prompt=lts, выполните do-release-upgrade и проверьте систему. При проблемах используйте созданные бэкапы и runbook для отката.

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

Ссылки

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Установка macOS на Ubuntu через QEMU‑KVM
Виртуализация

Установка macOS на Ubuntu через QEMU‑KVM

Пробел не работает в Windows 11 — быстрое решение
Windows

Пробел не работает в Windows 11 — быстрое решение

Экспорт истории чатов Telegram
Руководство

Экспорт истории чатов Telegram

TypeError: object is not subscriptable — как исправить
Python

TypeError: object is not subscriptable — как исправить

Закреплённые колонки Threads на десктопе
Социальные сети

Закреплённые колонки Threads на десктопе

Реализация графа в Go: структуры и примеры
Разработка

Реализация графа в Go: структуры и примеры