Может кто-нибудь прояснить для меня Ubuntu (Debian) dist-upgrade?


35

У меня есть сервер Ubuntu 8.04 LTS. Есть несколько пакетов, которые «хранятся обратно» ( «следующие обновления были отложены» ), когда я делаю apt-get upgrade. Я понимаю, что могу apt-get dist-upgradeобновить эти пакеты, но у меня есть несколько проблем:

  1. Если я это сделаю dist-upgrade, буду ли я обновляться с 8.04 до более поздней версии (8.10, я думаю)? Если да, то какой смысл 8.04 в том, чтобы быть «Долгосрочной поддержкой» (LTS)?

  2. Это «опасный» процесс? Я предполагаю, что пакеты хранятся обратно, потому что есть новые пакеты, от которых они зависят. Есть ли dist-upgradeпросто тянуть новые пакеты и сделать довольно простой апгрейд, или есть предостережения смотреть в?

Ответы:


57

Команда apt-get upgrade не будет добавлять или удалять пакеты. apt-get dist-upgrade будет добавлять или удалять пакеты по мере необходимости.

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

человек меткий

upgrade
    upgrade is used to install the newest versions of all packages 
    currently installed on the system from the sources enumerated 
    in /etc/apt/sources.list.

dist-upgrade
    dist-upgrade, in addition to performing the function of upgrade, 
    also intelligently handles changing dependencies with new versions 
    of packages;

Существуют ли особые проблемы, которые следует учитывать при выполнении dist-upgrade vs upgrade?

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


Спасибо, на это я и надеялся. Существуют ли особые проблемы, которые следует учитывать при выполнении dist-upgrade vs upgrade? (не то, что один является заменой для других, я просто интересно , если есть что - нибудь еще , что я должен быть в курсе)
Boden

когда вы запустите dist-upgrade, вы получите сводную информацию о том, что он будет делать (пакеты для обновления, новые пакеты, пакеты для удаления). просто посмотрите, что он удаляет, если что. если вы не изменили свой файл /etc/apt/sources.list, он не должен быть слишком важным.
brad.lane

2
Просто ради завершения. Чтобы перейти к следующему выпуску LTS, как только он станет доступен, вам нужно будет выполнить следующие команды, убедившись, что ваша версия 8.04 обновлена. sudo apt-get установить update-manager-core и затем sudo do-release-upgrade.
3dinfluence

2

Обновление против dist-upgrade - это действительно условия Debian. В Debian вы будете использовать upgrade для получения изменений в стабильном выпуске (что не потребует ничего столь радикального, как удаление) и dist-upgrade для перехода между выпусками. dist-upgrade должен иметь те же результаты, что и обновление, при условии, что удаление не требуется.

Переход между выпусками потребует изменения вашего sources.list, чтобы он указывал на новый выпуск.

Ubuntu не имеет той же модели ультраконсервативных выпусков, поэтому термины не соответствуют друг другу - обычно вы просто хотите использовать dist-upgrade, если вы не переходите между выпусками, в этом случае вы используете собственный обновитель do-release -Обновить.


you'd generally just want to use dist-upgrade unless you're going between releases, in which case you use the upgrade script. Я думаю, капитан Сегфо, вы имели в виду другое: вы обычно просто хотите использовать обновление, если вы не переходите между выпусками, в этом случае вы используете скрипт dist-upgrade.

2
Ubuntu имеет отдельную программу для обновления. Вы используете это, а не apt-get, чтобы переходить между выпусками.
Капитан Сегфо

Где я могу найти эту отдельную программу, пожалуйста?
starbeamrainbowlabs

@starbeamrainbowlabs это называется do-release-upgrade , подробности
смотрите в

@isync Верно. Я знал об этом - комментарий не был ясен, поэтому я подумал, что есть другая команда, с которой я не вступал в контакт. Благодарность!
starbeamrainbowlabs
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.