У меня есть precise
установка, но я также получаю пакеты из quantal
и raring
Моя проблема с пакетами linux-image-*
.
Я хочу запустить ядро 3.5, и чтобы следить за последним ядром в этой серии, я хочу, чтобы linux-image-generic
из quantal
. Он хочет установить linux-image-3.5.0-xx-generic
и linux-image-extra-3.5.0-xx-generic
. Все идет нормально.
Моя проблема в том, что в precise-updates
также содержится linux-image-3.5.0-xx-generic
с тем же номером версии и добавленным ~precise1
. Этот не совместим с linux-image-extras-3.5.0-xx-generic
, поскольку макеты пакетов в precise
и quantal
различаются - quantal
разделяет модули на основной пакет и пакет -extras
, но в precise
только один большой основной пакет.
Теперь я попытался прикрепить ядра к quantal
с помощью этих строк:
Package: linux-image-3.5*
Pin: release n=quantal
Pin-Priority: 600
Package: linux-image-generic
Pin: release n=quantal
Pin-Priority: 600
Я думал, что это решило бы проблему и расставило приоритеты, например, quantal
3.5.0-21.32
над precise
3.5.0-21.32~precise1
. Но кажется, что на самом деле закрепление в конечном итоге разрешается в версиях, а не в архивах (Pin
представляется просто фильтром для выбора номера версии), и эти две версии в некотором смысле рассматриваются как одна и та же версия. В конце концов, он всегда предпочитает неправильную упаковку.
$ apt-cache policy linux-image-3.5.0-21-generic
linux-image-3.5.0-21-generic:
Installed: (none)
Candidate: 3.5.0-21.32~precise1
Package pin: 3.5.0-21.32
Version table:
3.5.0-21.32 600
500 http://hk.archive.ubuntu.com/ubuntu/ quantal-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu/ quantal-security/main amd64 Packages
3.5.0-21.32~precise1 600
990 http://hk.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
990 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
Даже если предоставить конкретный Pin
для precise
и установить его, скажем, -1
, precise
пакет "захватывает" quantal
пакета.
Я правильно угадываю, что стоит за этой путаницей? Есть ли способ исправить это, или я собираюсь буквально указывать apt-get install linux-image-3.5.0-21-generic/quantal
* каждый раз, как я делаю сейчас, чтобы обойти это? Это делает использование метапакета немного бесполезным, просто механизм поиска для ручной установки.
Конечно, удаление precise-updates
из уравнения будет работать, но тогда я бы предпочел продолжить указывать архив.
* Почему это работает, когда пиннинг не работает? Я думал, что они оба использовали один и тот же механизм - что /blah
временно устанавливает prio 990
для конкретной версии. Странный.