apt-get dist-upgrade ничего не делает при попытке перейти с wheezy на jessie


12

Я нахожусь на Debian wheezy и попытался перейти на Джесси следующим образом:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

Эти операции завершились успешно, и я перезагрузился, но система все еще хрипит:

~: cat /etc/*release
PRETTY_NAME="Debian GNU/Linux 7 (wheezy)"
NAME="Debian GNU/Linux"
VERSION_ID="7"
VERSION="7 (wheezy)"
ID=debian
ANSI_COLOR="1;31"
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support/"
BUG_REPORT_URL="http://bugs.debian.org/"

~: sudo apt-get dist-upgrade
[sudo] password for abc:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Как я могу выполнить обновление дистрибутива?

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



dist-upgradeможет вводить в заблуждение. Думайте об этом как upgrade-anything-even-if-you-have-to-remove-something-auto-installed-which-causes-conflicts.
Макс Райд

Ответы:


14

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

Исходники пакета объявляются в файле /etc/apt/sources.list. Отредактируйте этот файл и измените все ссылки wheezyна jessie. Также отредактируйте файлы /etc/apt/sources.list.dтаким же образом, если они есть.

Вы можете сделать обновления после выпусков автоматически, написав stableвместо, например wheezy, но это не рекомендуется, потому что вы будете получать огромное обновление каждый раз, когда выходит новый стабильный выпуск, независимо от того, готовы вы или нет. Использование движущихся целей выпуска в основном полезно для testing.

После обновления /etc/apt/sources.listзапустите, apt-get updateчтобы прочитать список доступных пакетов для выпуска, на который вы сейчас нацеливаетесь, а затем apt-get dist-upgradeвыполнить обновление.

Это описано в примечаниях по обновлению в разделе «Подготовка источников для APT» . Рекомендуется просмотреть примечания по обновлению перед выполнением обновления. (Переключитесь на правильную архитектуру, если вы не на 32-битном ПК.)


7

Откройте терминал и введите следующую команду:

sed -i 's/wheezy/jessie/g' /etc/apt/sources.list
apt-get update
apt-get upgrade
apt-get dist-upgrade
apt-get autoremove
apt-get clean
apt-get dist-upgrade -f
reboot

1
Почему вы бежите upgradeраньше, dist-upgradeа потом dist-upgrade -fснова? Вещи, которые обновляются, dist-upgradeсодержат те, которые были обновлены, upgradeи если не будут dist-upgradeзависеть зависимости, другой dist-upgrade -fне исправит это, если они не исправлены в хранилище, которое вы не проверяете, выполняя update.
Макс Райд

Кроме того, возникла ошибка "программа не найдена" при автоматическом удалении.
Тайлер Дерден
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.