Чи може хтось уточнити оновлення Ubuntu (Debian) dist?


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?

Здебільшого я завжди доцільно отримувати dist-upgrade для застосування оновлень до системи. Звичайно, зверніть увагу на те, які саме нові пакети додаються чи видаляються. Часто це трапляється, коли щось додається, як нове ядро, яке не сумісне з попереднім, і вам доведеться перекомпілювати модулі. Якщо у вас є якийсь модуль ядра, який ви повинні були створити самостійно, можливо, вам доведеться перекопіювати його для нового ядра. У мене є пара систем з мережевими інтерфейсами, які не підтримуються біржовим ядром, що мені потрібно перекомпілювати мережевий драйвер після кожного оновлення ядра.


Дякую, саме так я і сподівався. Чи потрібно пам’ятати про особливі проблеми, коли робите dist-upgrade vs upgrade? (не те, що одна є заміною на іншу, мені просто цікаво, чи є щось інше, про що я маю знати)
Боден

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

2
Тільки заради завершення. Щоб перейти до наступного випуску LTS, коли він буде доступний, вам потрібно буде виконати наступні команди, переконавшись, що установка 8.04 встановлена. sudo apt-get install update-manager-core та sudo do-release-upgrade.
3вплив

2

модернізація порівняно з dist-модернізацією - це справді дебіні. У debian ви б використовували оновлення, щоб отримати зміни в стабільному випуску (який би не передбачав нічого настільки драстичного, як видалення) та dist-модернізацію, щоб перейти між випусками. dist-upgrade має мати ті ж результати, що й оновлення, якщо припущення не потрібні.

Перехід між випусками вимагає змінити ваш source.list, щоб вказати на новий випуск.

У Ubuntu немає такої ж моделі ультраконсервативного випуску, тому умови не відображаються чітко - ви, як правило, просто хочете використовувати розширення для дистрибуції, якщо ви не збираєтеся між релізами, і в цьому випадку ви використовуєте власний програміст, 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 має окрему програму для оновлення. Ви користуєтесь цим, а не підхожим, щоб переходити між випусками.
Капітан Сегполь

Де я можу знайти цю окрему програму, будь ласка?
starbeamrainbowlabs

@starbeamrainbowlabs це називається do-release-upgrade , перевірити людину do-release-upgrade для деталей
isync

@isync Вправо. Я знав про це - коментар не був зрозумілий, тому я подумав, що є ще одна команда, з якою я не контактував. Спасибі!
starbeamrainbowlabs
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.