1. Делаем резервную копию текущей системы.
2. Доводим Debian Wheezy до актуального состояния.
apt-get update apt-get upgrade
По необходимости обновляем ключи
apt-get install debian-keyring debian-archive-keyring apt-key update
3. Изучаем список не полностью установленных пакетов с состоянием Half-Installed или Failed-Config.
dpkg --audit
4. Изучаем список отложенных пакетов.
dpkg --get-selections | grep 'hold$'
5. Решаем выявленные на двух прошлых этапах проблемы, после чего удостоверимся, что в общем списке все пакеты имеют статус 'ii' в первой колонке.
dpkg -l| grep -v 'ii'| less
6. Удаляем забытые пакеты:
apt-get autoremove
Подготовительная фаза завершена, приступаем к обновлению до Debian Jessie.
7. Изменяем список репозиториев в /etc/apt/sources.list
. Вместо «wheezy» и «stable» указываем «jessie».
Пример:
deb http://ftp.ru.debian.org/debian/ jessie main deb http://security.debian.org/ jessie/updates main deb http://ftp.ru.debian.org/debian/ jessie-updates main deb http://ftp.ru.debian.org/debian/ jessie-backports main
Или использовать готовый список источников обновлений: Ссылки на источники обновлений (jessie)
8. Обновляем список доступных в Debian Jessie пакетов
apt-get update
9. Обновление производится в две стадии. На первой выполняется замена только пакетов, не приводящих к удалению или установке других пакетов. На второй выполняется полное обновление всех версий с учётом зависимостей.
apt-get upgrade apt-get dist-upgrade
В процессе выполнения dist-upgrade на экран будут выводиться запросы для принятия тех или иных решений о ходе обновления. Как правило, предлагаемый по умолчанию вариант оптимален.
10. Удаляем старые пакеты Wheezy.
apt-get autoremove
Вероятнее всего вместо службы networking
существует служба networking.dpkg-dist
, это связано с переходом на systemd.
Чтобы проверить это нужно выполнить:
systemctl status networking.dpkg-dist
Если это так, то нужно: 1. Переименовать файл:
mv /etc/init.d/networking.dpkg-dist /etc/init.d/networking
2. Включить службу networking
и запустить ее:
systemctl enable networking systemctl start networking