воскресенье, 5 февраля 2017 г.

Как обновить 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. Возможны конфликты при обновлении, поэтому будьте предельно внимательны.