apt-get install -t тестирование appX против apt-get install appX/testing

apt-get install -t тестирование appX против apt-get install appX/testing

Я пытался понять разницу между этими двумя командами и заметил, что получаю разные результаты.

apt-get install -t testing appX
apt-get install appX/testing

Фон

Я настраиваю свои списки источников и конфигурацию закрепления согласноhttps://serverfault.com/a/382101/132528

Текущие результаты

root@home:/etc/apt# apt-cache policy i3
i3:
Installed: (none)
Candidate: 4.2-2
Version table:
   4.8-1 0
    750 http://debian.mirror.ac.za/debian/ testing/main amd64 Packages
    750 http://ftp.us.debian.org/debian/ testing/main amd64 Packages
    50 http://debian.mirror.ac.za/debian/ unstable/main amd64 Packages
    50 http://ftp.us.debian.org/debian/ unstable/main amd64 Packages
   4.8-1~bpo70+1 0
    100 http://debian.mirror.ac.za/debian/ wheezy-backports/main amd64 Packages
   4.2-2 0
    995 http://debian.mirror.ac.za/debian/ wheezy/main amd64 Packages
    995 http://debian.mirror.ac.za/debian/ stable/main amd64 Packages
    995 http://ftp.us.debian.org/debian/ stable/main amd64 Packages

Он выбирает 4.2-2, когда делает

apt-get install -t testing appX

И выбирает 4.8 при выполнении

apt-get install appX/testing

Справочник Debian:

-t targetRelease

Чтобы указать apt-get использовать определенный дистрибутив при поиске обновленных пакетов, вам необходимо использовать параметр -t или --target-release, а затем указать имя нужного вам дистрибутива (например: apt-get -t stable upgrade).

пакет/дистрибуция

Если в файле sources.list упоминается несколько дистрибутивов, можно указать версию пакета для установки. Конкретный номер версии можно запросить с помощью apt-get install package=version, но указание дистрибутива происхождения (Stable, Testing или Unstable) — с помощью apt-get install package/distribution — обычно предпочтительнее.

Вопрос

В обоих случаях вы указываете желаемое распределение, но полученное поведение не соответствует обоим случаям?

решение1

У меня была такая же проблема, но я ее решил!!!

(Изначально я хотел прокомментировать этооригинальный ответ(Потому что у других людей, похоже, тоже есть эта проблема, но у меня на тот момент не было достаточно очков магической «репутации», чтобы мое мнение было ценным, так что вот.)

Это причуда значений, которые он выбрал для apt-pinning. Когда вы запускаете apt-get install my_package, apt выбирает, из какого источника установить этот пакет, основываясь на том, какой из них имеет наивысший приоритет закрепления.

Общая настройка вашей системы (выпуск по умолчанию) имеет приоритет 990.

Добавление -t unstableк команде apt-get временно делает «unstable» выпуском по умолчанию для этой команды.

Он установил свой приоритет закрепления для «стабильного»995. Это означает, что в любом случае пакеты всегда будут устанавливаться из стабильной версии, поскольку ее приоритет даже выше, чем приоритет выпуска по умолчанию.

Итак, как исправить? Легко — просто измените приоритет пина /etc/apt/preferences.d/security.prefс 995 на 900.

Связанный контент