Как обновить Debian 8 до Debian 9

Debian 9, следующий стабильный выпуск одного из самых значимых дистрибутивов Linux, перешёл в финальную стадию заморозки. Теперь разработчики займутся его интенсивным тестированием, и как только оно завершится — объявят о выходе финального релиза. Однако уже сейчас можно обновиться на него, не дожидаясь релиза. Пакетная база стабилизирована, ничего уже не сломается. Однако все действия, описанные в данной статье, вы выполняете на свой страх и риск. Обязательно сделайте резервную копию своей системы (например при помощи Clonezilla).

1. Делаем резервную копию текущей системы.

 

2. Доводим Debian Jessie до актуального состояния.

sudo apt-get update

sudo apt-get upgrade

sudo apt-get dist-upgrade

3. Изучаем список не полностью установленных пакетов с состоянием Half-Installed или Failed-Config.

sudo dpkg —audit

4. Изучаем список отложенных пакетов.

sudo dpkg —get-selections | grep ‘hold$’

 

5. Решаем выявленные на двух прошлых этапах проблемы, после чего удостоверимся, что в общем списке все пакеты имеют статус ‘ii’ в первой колонке.

sudo dpkg -l| grep -v ‘ii’| less

 

6. Удаляем забытые пакеты:

sudo apt-get autoremove

Подготовительная фаза завершена, приступаем к обновлению до Debian Stretch.

 

7. Изменяем список репозиториев в /etc/apt/sources.list. Вместо «jessie» и «stable» указываем «stretch».

sudo nano /etc/apt/sources.list

    deb http://mirror.yandex.ru/debian stretch main contrib non-fre

    deb-src http://mirror.yandex.ru/debian stretch main contrib non-fre


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

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


    #stretch-updates, previosly known as ‘volatile’

    deb http://mirror.yandex.ru/debian/ stretch-updates main contrib non-free

    deb-src http://mirror.yandex.ru/debian/ stretch-updates main contrib non-free

Если у вас подключены репозитории Debian Backports — измените их для Stretch и на время отключите (примерно на месяц). Также если у вас подключён мой репозиторий — удалите его. Для Debian 9 репозиторий будет готов после финального релиза системы.

8. Обновляем список доступных в Debian Stretch пакетов

sudo apt-get update

 

9. Обновление системы

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

sudo apt-get upgrade

sudo apt-get dist-upgrade

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

10. Удаляем старые пакеты Jessie.

sudo apt-get autoremove

Обратите внимание: если в Jessie вы использовали графического окружение KDE 4, то оно полностью удалится и заменится на KDE Plasma 5. Возможны конфликты при обновлении, поэтому будьте предельно внимательны.