Иван Иванов   4 декабря в 17:31

Как обновить Debian 9 Stretch до Debian 10 Buster

В этой статье описывается процедура обновления операционной системы с Debian 9 Stretch Linux до Debian 10 Buster.

Что нового в Debian 10 Buster

Сразу стоит сказать, что обновления для Debian 10 планируется выпускать в течение 5 лет. Debian 10 доступна для Intel IA-32/x86 (i686), AMD64 / x86-64, ARM EABI (armel), 64-bit ARM (arm64), ARMv7 (armhf), MIPS (mips, mipsel, mips64el), PowerPC 64 (ppc64el) и IBM System z (s390x). Основные добавленные опции:

  • Ядро Linux вер. 4.19.0
  • Безопасная загрузка UEFI
  • AppArmor включен по умолчанию
  • Опциональное APT hardering
  • Автоматические обновления для стабильных выпусков
  • Сетевая фильтрация на основе фреймворка nftables по умолчанию
  • Cryptsetup по умолчанию использует формат LUKS2 на диске
  • Печать без драйверов с помощью CUPS 2.2.10
  • Базовая поддержка для устройств на базе Allwinner A64

Окружения и приложениями рабочего стола операционной системы:

  • Cinnamon 3.8,
  • GNOME 3.30,
  • KDE Plasma 5.14,
  • LXDE 0.99.2,
  • LXQt 0.14,
  • MATE 1.20,
  • Xfce 4.12.

Debian 10 buster очень большое количество обновленных пакетов, среди которых:

  • Apache 2.4.38
  • BIND DNS Server 9.11
  • Chromium 73.0
  • Emacs 26.1
  • Firefox 60.7 (в пакете firefox-esr)
  • GIMP 2.10.8
  • GNU Compiler Collection 7.4 и 8.3
  • GnuPG 2.2
  • Golang 1.11
  • Inkscape 0.92.4
  • LibreOffice 6.1
  • Linux ветки 4.19
  • MariaDB 10.3
  • OpenJDK 11
  • Perl 5.28
  • PHP 7.3
  • PostgreSQL 11
  • Python 3 3.7.2
  • Ruby 2.5.1
  • Rustc 1.34
  • Samba 4.9
  • systemd 241
  • Thunderbird 60.7.2
  • Vim 8.1

Сравнение Debian 9 Stretch и Debian 10 Buster

Ниже приводим сравнительную таблицу основных обновлений Debian 10 Buster в сравнении с Debian 9 Stretch:

Подготовка

Предупреждение. Учитывая, что Debian является чрезвычайно надежным дистрибутивом Linux, в сочетании с тем, что в жизни нет ничего определенного, есть вероятность, что после обновления вы можете получить неисправную систему. Поэтому необходимо указать, что ни одно обновление системы не является абсолютно безопасным, и вам следует подготовить и, возможно, протестировать любой процесс восстановления после сбоя или восстановления до предполагаемого обновления системы до Debian Buster. Для более надежных или производственных систем рекомендуется прочитать официальное руководство по обновлению Debian, прежде чем продолжить.

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

# aptitude search '~i(!~ODebian)'

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

Выполните полное резервное копирование данных и файлов конфигурации вручную, находящихся в вашей текущей системе. Например, к ним могут относиться домашние каталоги пользователей, базы данных, веб-сайты и т.д., Но не ограничиваясь ими. В случае, если вы запускаете Debian Linux, вы фактически делаете снимок на случай, если во время обновления Buster что-то пойдет не так.

Полное обновление Buster

Прежде чем мы продолжим обновление, давайте полностью обновим нашу текущую систему Debian Jessie:

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

Если все прошло гладко, выполните проверку работоспособности и согласованности базы данных для частично установленных, отсутствующих и устаревших пакетов:

# dpkg -C

Если о проблемах не сообщается, проверьте, какие пакеты задерживаются:

# apt-mark showhold

Пакеты On Hold (на удержании) не будут обновлены, что может привести к несоответствиям после обновления Buster. Прежде чем перейти к следующей части, рекомендуется исправить все проблемы, вызванные обеими вышеуказанными командами. Следующая команда может оказать дополнительную помощь:

# dpkg --audit

Обновление репозитория пакетов до Debian Buster

Теперь, когда наша система полностью обновлена, пришло время повторно синхронизировать файлы индекса пакетов с новыми источниками Debian Buster. Это делается путем редактирования файла /etc/apt/sources.list для включения репозитория пакетов Debian Stretch. Сначала сделайте резервную копию текущего /etc/apt/sources.list:

# cp /etc/apt/sources.list /etc/apt/sources.list_backup

Запустите apt edit-sources или используйте ваш любимый текстовый редактор, например, VIM, чтобы изменить текущий файл /etc/apt/sources.list для включения репозиториев stretch. Просто обновите ключевое слово stretch на buster. Пример:

FROM STRECTH:
deb http://httpredir.debian.org/debian stretch main
deb http://httpredir.debian.org/debian stretch-updates main
deb http://security.debian.org stretch/updates main

TO BUSTER:
deb http://httpredir.debian.org/debian buster main
deb http://httpredir.debian.org/debian buster-updates main
deb http://security.debian.org buster/updates main

Также можно использовать команду sed для автоматизации этой утомительной задачи:

# sed -i 's/stretch/buster/g' /etc/apt/sources.list

После завершения редактирования файла /etc/apt/sources.list, указанного выше, используйте команду apt-get для обновления индекса пакетов:

# apt update

Обновление до Debian Buster Simulation

Прежде чем нажать кнопку UPGRADE, давайте с помощью команды apt увидим превью того, с чем мы столкнулись. Для этого выполните команду apt list --upgradable, чтобы получить быстрый обзор количества устанавливаемых, обновляемых и удаляемых пакетов, не влияя на систему.

# apt list --upgradable

Обновление до Debian Buster

Мы подошли к самой захватывающей части, а именно к фактическому обновлению Stretch до системы Debian Buster. Во время обновления вас могут спросить:

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

Перезапускать сервисы во время обновления пакета, не спрашивая?

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

# apt-get upgrade
# apt-get dist-upgrade

На этом этапе вы должны полностью обновить свою систему Stretch Debian Linux до Debian Buster 10. Проверьте текущую версию Debian. Еще раз проверьте устаревшие пакеты, чтобы не было сюрпризов в будущем:

# aptitude search '~i(!~ODebian)'

Поздравляем вас с полным обновлением системы Debian 10 Buster Linux.