LINUX.ORG.RU
решено ФорумAdmin

Непонятки с package pinning

 ,


0

2

Пытаюсь добиться, что бы стабильные пакеты по-умолчанию имели приоритет над нестабильными, почему-то у меня не получается этого добиться.

Результат получается примерно такой:

# apt-cache policy debconf-utils

debconf:
  Installed: 1.5.38
  Candidate: 1.5.46
  Version table:
     1.5.46 0
        650 http://ftp.de.debian.org/debian/ testing/main i386 Packages
 *** 1.5.38 0
        100 /var/lib/dpkg/status
     1.5.36.1 0
        700 http://ftp.de.debian.org/debian/ stable/main i386 Packages

Соответственно, при попытке сделать apt-get upgrade, лезет устанавливаться debconf 1.5.46 из testing, я же хочу, что бы происходила установка версии 1.5.38 из stable. Подскажите, где я не прав?

Вывод «apt-cache policy»:

Package files:
 100 /var/lib/dpkg/status
     release a=now
 700 http://security.debian.org/ stable/updates/non-free i386 Packages
     release v=6.0,o=Debian,a=stable,n=squeeze,l=Debian-Security,c=non-free
     origin security.debian.org
 700 http://security.debian.org/ stable/updates/contrib i386 Packages
     release v=6.0,o=Debian,a=stable,n=squeeze,l=Debian-Security,c=contrib
     origin security.debian.org
 700 http://security.debian.org/ stable/updates/main i386 Packages
     release v=6.0,o=Debian,a=stable,n=squeeze,l=Debian-Security,c=main
     origin security.debian.org
 500 http://ftp.de.debian.org/debian/ testing/non-free Translation-en
 500 http://ftp.de.debian.org/debian/ testing/main Translation-en
 500 http://ftp.de.debian.org/debian/ testing/contrib Translation-en
 650 http://ftp.de.debian.org/debian/ testing/contrib i386 Packages
     release o=Debian,a=testing,n=wheezy,l=Debian,c=contrib
     origin ftp.de.debian.org
 650 http://ftp.de.debian.org/debian/ testing/non-free i386 Packages
     release o=Debian,a=testing,n=wheezy,l=Debian,c=non-free
     origin ftp.de.debian.org
 650 http://ftp.de.debian.org/debian/ testing/main i386 Packages
     release o=Debian,a=testing,n=wheezy,l=Debian,c=main
     origin ftp.de.debian.org
 700 http://ftp.de.debian.org/debian/ stable/contrib i386 Packages
     release v=6.0.6,o=Debian,a=stable,n=squeeze,l=Debian,c=contrib
     origin ftp.de.debian.org
 700 http://ftp.de.debian.org/debian/ stable/non-free i386 Packages
     release v=6.0.6,o=Debian,a=stable,n=squeeze,l=Debian,c=non-free
     origin ftp.de.debian.org
 700 http://ftp.de.debian.org/debian/ stable/main i386 Packages
     release v=6.0.6,o=Debian,a=stable,n=squeeze,l=Debian,c=main
     origin ftp.de.debian.org
 100 http://backports.debian.org/debian-backports/ squeeze-backports/main i386 Packages
     release o=Debian Backports,a=squeeze-backports,n=squeeze-backports,l=Debian Backports,c=main
     origin backports.debian.org
Pinned packages:

/etc/apt/preferences:

Package: *
Pin: release a=stable
Pin-Priority: 700

Package: *
Pin: release a=testing
Pin-Priority: 650

/etc/apt/sources.list:

deb http://backports.debian.org/debian-backports squeeze-backports main
deb http://ftp.de.debian.org/debian stable main non-free contrib
deb http://ftp.de.debian.org/debian testing main non-free contrib
deb     http://security.debian.org stable/updates main contrib non-free
deb-src http://security.debian.org stable/updates main contrib non-free

★★★★★

Пытаюсь добиться, что бы стабильные пакеты по-умолчанию имели приоритет над нестабильными

Это легко решается

~$ grep Default-Release /etc/apt/apt.conf
APT::Default-Release "wheezy";
Внутри там тот же pinning, но без лишних заморочек.

Homura_Akemi ()
Ответ на: комментарий от Homura_Akemi

Default release --- так же не помогает.

Прописал:

# cat /etc/apt/apt.conf
APT::Default-Release "squeeze";

Результат:

# apt-cache policy debconf
debconf:
  Installed: 1.5.38
  Candidate: 1.5.46
  Version table:
     1.5.46 0
        650 http://ftp.de.debian.org/debian/ testing/main i386 Packages
 *** 1.5.38 0
        100 /var/lib/dpkg/status
     1.5.36.1 0
        990 http://ftp.de.debian.org/debian/ stable/main i386 Packages

Harliff ★★★★★ ()
Ответ на: комментарий от Harliff

Так, с debconf'ом разобрался. У меня стояла какая-то промежуточная версия (1.5.38), после даунгрейда до версии из стейлбла (1.5.36.1) ситуация изменилась:

# apt-cache policy debconf
debconf:
  Installed: 1.5.36.1
  Candidate: 1.5.36.1
  Version table:
     1.5.46 0
        650 http://ftp.de.debian.org/debian/ testing/main i386 Packages
 *** 1.5.36.1 0
        990 http://ftp.de.debian.org/debian/ stable/main i386 Packages
        100 /var/lib/dpkg/status

Похоже, apt по умолчанию старается избегать делать downgrade пакетов.

Пойду разбираться с остальными пакетами...

Harliff ★★★★★ ()
Ответ на: комментарий от Harliff

Похоже, apt по умолчанию старается избегать делать downgrade пакетов.

Даунгрейд никогда не выполняется автоматически, только по явному требованию.

Homura_Akemi ()
Ответ на: комментарий от Homura_Akemi

Даунгрейд никогда не выполняется автоматически, только по явному требованию.

Если в /etc/apt/preferences указать для источника приоритет более 1000, то будет делаться даже автоматический даунгрейд.

Собственно, сейчас этим и занят. Почему-то часть пакетов в системе — странной версии (более новая, чем в stable, но более старой чем в testing). Бэкпорты и security посмотрел, дело не в них.

Harliff ★★★★★ ()
Ответ на: комментарий от Homura_Akemi

Даунгрейд никогда не выполняется автоматически, только по явному требованию.

Да ну?

       P >= 1000
           causes a version to be installed even if this constitutes a downgrade of the package

       990 <= P < 1000
           causes a version to be installed even if it does not come from the target release, unless the installed version is more recent

       500 <= P < 990
           causes a version to be installed unless there is a version available belonging to the target release or the installed version is more recent

       100 <= P < 500
           causes a version to be installed unless there is a version available belonging to some other distribution or the installed version is more recent

       0 < P < 100
           causes a version to be installed only if there is no installed version of the package

       P < 0
           prevents the version from being installed
melkor217 ★★★★★ ()
Ответ на: комментарий от melkor217

Да, да, да. Мне ни разу не приходилось этим пользоваться, поэтому вылетело из головы -_-

Homura_Akemi ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.