Той самий пакет - кілька репостів


11

З якого сховища вибере Ubuntu для завантаження пакету, якщо той самий пакет доступний у кількох репостах? Припустимо, пакет A був спочатку встановлений із сховища X, а пізніше я додав repo Y, який також має пакет A. Який репо буде обраний для оновлення пакета? Крім того, якщо я повністю видалюю цей пакет і спробую перевстановити, то який репо буде віддано перевагу Ubuntu для встановлення пакета?

Відповіді:


12

За замовчуванням встановлюється пакет з найвищим номером версії, незалежно від того, з якого сховища він походить, якщо тільки номер його версії не нижчий за встановлену в даний час версію пакета (це може статися, наприклад, якщо ви завантажили більш високу версію як .debпакет і встановив його вручну). У дуже малоймовірному випадку, коли кілька сховищ мають однакову (найвищу) версію пакета, пакет встановлюється з тієї, яка з’являється першою у sources.listфайлі.

Однак ви можете змінити це, призначивши інший пріоритет деяким пакетам на основі різних критеріїв. Попередній абзац справедливий для налаштувань за замовчуванням, оскільки за замовчуванням усі пакети мають пріоритет 500. Однак, якщо різні версії пакету мають різні пріоритети, однак, версія з найвищим пріоритетом буде встановлена, а номери версій будуть використовуватися лише як " вимикачі, якщо кілька версій мають однаковий (найвищий) пріоритет. Також, якщо пакет найвищого пріоритету має пріоритет принаймні 1000, він буде встановлений, навіть якщо його версія нижча за встановлену в даний час версію.

Пріоритети керуються /etc/apt/preferencesта документуються в man apt_preferences. Дивіться мою відповідь тут на прикладі того, як їх можна використовувати.


Зауважте, що в документації сказано, що вона призначає пріоритет 990 версіям, які належать до цільового випуску. Тож не 500, як ви тут говорите ( адже за замовчуванням усі пакети мають пріоритет 500. ) Це 500, лише якщо це не є належною ціллю.
Алексіс Вілке

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