Решение проблемы

Обновление Debian 8 Jessie до 9 Stretch


17 июня 2017 года вышло очередное обновление популярного linux дистрибутива Debian. Это уже 9-й выпуск Debian под кодовым названием Stretch. Я подробно расскажу, как выполнить обновление с предыдущего выпуска Debian 8 Jessie до Debian 9 Stretch. Процесс обновления не сложный, выполняется штатными средствами с помощью apt.

Содержание:

  • 1 Введение
  • 2 Подготовка сервера к обновлению
  • 3 Обновление debian с 8 до 9
  • 4 Дополнительные материалы по Debian
Если вам нужна чистая установка новой версии, можете воспользоваться подробным руководством на эту тему — скачать и установить Debian 9 Stretch

Введение

Обновление Debian 8 Jessie до 9 Stretch

Подробную информацию о новой версии Debian можно узнать из официальной новости. Из наиболее значимых изменений можно отметить:

  • Замена пакета mysql на mariadb. Ранее этот шаг был сделан на centos. Теперь и debian решили использовать по-умолчанию mariadb.
  • Инсталлятор теперь по-умолчанию использует графический режим.
  • В состав системы включены инструменты по управлению nftables — новый firewall, который нацелен на замену iptables.
  • Появился новый репозиторий dbg-sym с пакетами для отладки.
  • В новый дистрибутив внедрена система предсказуемого именования сетевых интерфейсов. Вместо eth0, eth1 и т.д. будет использована информация в зависимости от возможностей биоса — enoN, ensN, enpNsM. Если параметры новой разметки интерфейсов будут недоступны, будут использоваться старые. В общем и целом это должно предотвратить ситуацию, когда после добавления нового сетевого интерфейса, изменяются имена в системе уже существующих адаптеров.

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

Подготовка сервера к обновлению

Будем обновлять следующую систему:

# lsb_release -a

No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 8.7 (jessie)
Release: 8.7
Codename: jessie

Для нее мы проведем обновление до 9-й версии Stretch.

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

Я рекомендую сделать резервную копию папок: /etc, /var/lib/dpkg, файла /var/lib/apt/extended_states. Сохраните вывод команды:

# dpkg --get-selections "*"

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

Теперь обновим текущую систему Jessie:

# apt update

# apt upgrade
# apt dist-upgrade

Заменяем репозитории в файле /etc/apt/sources.list. Я предпочитаю использовать репозиторий яндекса — http://mirror.yandex.ru. Комментируем или удаляем все содержимое файла и добавляем следующие строки:

deb http://mirror.yandex.ru/debian stretch main

deb-src http://mirror.yandex.ru/debian stretch main
deb http://mirror.yandex.ru/debian stretch-updates main
deb-src http://mirror.yandex.ru/debian stretch-updates main
deb http://security.debian.org/ stretch/updates main
deb-src http://security.debian.org/ stretch/updates main

Обновляем список доступных пакетов для нового выпуска:

# apt update

Обновление debian 8 до 9

Обновление debian с 8 до 9

Обновление Debian 8 Jessie до 9 Stretch

Обновление системы будем делать в 2 этапа. Сначала минимальное обновление, потом полное. Делаем минимальное обновление:

# apt upgrade

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

Во время обновления у вас спросят разрешение на перезапуск некоторых служб. Надо дать разрешение.

Разрешение на перезапуск служб во время установки

После завершения минимального обновления debian, запускаем полное:

# apt dist-upgrade

Эта команда произведёт полное обновление системы, установив последние доступные версии всех пакетов и разрешит все изменившиеся между выпусками Jessie и Stretch зависимости. При необходимости будут установлены новые пакеты и удалены все вызывающие конфликты устаревшие пакеты.

Если у вас была установлена база данных mysql, то она автоматически будет заменена на mariadb.

Во время обновления пакетов вам могут быть заданы вопросы по поводу конфигурационных файлов. Это зависит от конкретного набора софта. Я рекомендую сохранять старые конфиги. Если с ними будут какие-то проблемы, то потом в ручном режиме их исправлять. Мне кажется так проще, чем переносить конфигурацию со старого файла в новый.

После завершения работы команды apt dist-upgrade обновление завершено. Можно перезагружаться:

# reboot

Проверяем версию:

# lsb_release -a

No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 9.0 (stretch)
Release: 9.0
Codename: stretch

Обновление jessie прошло успешно. На выходе имеем последнюю версию Debian 9.0 Stretch.


СМОТРИ ТАКЖЕ