Автообновление: требует установки ненадежных пакетов

В течение последней недели или около того я получаю вышеуказанное сообщение при запуске автообновления из пользовательского интерфейса. Далее в сообщении говорится: «Это требует установки пакетов из неаутентифицированных источников». Я прочитал, что это рекомендуется apt-upgrade. Но я не нашел никакого объяснения, почему это намеченное решение.

Я хотел бы понять процесс автоматического обновления выпусков, в связи с тем, почему он требует apt-upgrade прямо сейчас, прежде чем я коснусь своей, в остальном, очень стабильной системы таким образом. Я не вспоминаю обновления, требующие этого для моей системы в последние несколько лет.

Ubuntu 14.04 LTS.

Спасибо!

2
задан 24 March 2015 в 12:30

1 ответ

Для понимания, почему это происходит нужно сначала понять как склонный запас (то есть, склонный без любого приоритетного набора), работы. Скажем, Вы хотите выполнить обновление с помощью apt upgrade (я предполагаю, что это - то, что Вы подразумеваете под способным обновлением, так как я не могу найти информацию о apt-upgrade): во-первых, склонный будет проверять локальные версии всего установленного программного обеспечения с удаленными версиями в репозитории и видеть, должно ли даже быть обновление пакетов. Для демонстрации давайте создадим гипотетический сценарий, в котором должен быть обновлен 1 пакет, sayhello.

Вот мнимый журнал изменений:

sayhello 1.1 now depends on libhello (>= 1.0) to print "hello."

Теперь предполагают, что у Вас есть два источника, перечисленные в Вашем sources.list, один являющийся запасом Ubuntu repos и другой являющийся Jim's amazing taco repo.

repo Jim содержит эти 3 пакета:

jimplayer 2.5 (No depends)
jimsbetterhello 1.0 (Depends on libhello (>= 2.0))
libhello 2.0 (No depends)

Вы только использовали этот repo для установки jimplayer некоторое время назад, но позже кажется, что Jim решил добавить jimsbetterhello к репозиторию. Теперь вот то, где вещи становятся интересными...

repos Ubuntu все еще используют libhello 1.5 по причинам совместимости (поскольку некоторые пакеты еще не работают над новой libhello версией)

Теперь, когда склонный идет для обновления sayhello, это сталкивается с загадкой. Существует 2 версии libhello, это может установить! Какой должен, он выбрал? Ну, по умолчанию способное желание выбрало последнюю версию пакета, что doesn't conflict with other currently installed packages. Теперь, обычно этот процесс очевиден для пользователя, но если Вы не добавили ключи GPG для стороннего репозитория, или ключи изменились или некоторая другая вещь, даже при том, что Вы установили sayhello из репозиториев Ubuntu по умолчанию, libhello 2.0 будет недоверяемым пакетом, и склонный собирается предупредить Вас об этом. Это - только одна из многих различных перестановок того, почему склонный мог предупреждать Вас об этом. Это могло также произойти из-за недостающих пакетов, только доступных в стороннем репозитории, который Вы добавили. Лучшее обходное решение должно установить репозитории по умолчанию на более высокий приоритет, а также сократить любой ненужный сторонний repoitories без их ключей, добавленных к доверяемой цепочке для ключей.

0
ответ дан 24 March 2015 в 12:30

Другие вопросы по тегам:

Похожие вопросы: