10 votes

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

J'ai essayé de comprendre la différence entre ces deux commandes et j'ai remarqué que j'obtiens des résultats différents.

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

Contexte

J'ai configuré mes listes de sources et ma configuration d'épinglage comme suit https://serverfault.com/a/382101/132528

Résultats actuels

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

Il choisit 4.2-2, en faisant

apt-get install -t testing appX

Et choisit 4.8 en faisant

apt-get install appX/testing

Manuel Debian :

-t targetRelease

Pour indiquer à apt-get d'utiliser une distribution spécifique lors de la recherche de paquets mis à jour, vous devez utiliser l'option -t ou --target-release, suivie du nom de la distribution que vous souhaitez (par exemple : apt-get -t stable upgrade).

pkg/distribution

Si le fichier sources.list mentionne plusieurs distributions, il est possible de donner la version du paquet à installer. Un numéro de version spécifique peut être demandé avec apt-get install package=version, mais indiquer sa distribution d'origine (Stable, Testing ou Unstable) - avec apt-get install package/distribution - est généralement préférable.

Question

Dans les deux cas, vous spécifiez la distribution que vous souhaitez, mais le comportement en question n'est pas cohérent entre les deux cas ?

13voto

Alex Ryan Points 211

J'avais le même problème, mais j'ai trouvé la solution ! !!

(Je voulais initialement commenter ceci sur la réponse originale parce que d'autres personnes semblent avoir ce problème aussi, mais je n'avais pas assez de points de "réputation" magique à l'époque pour que mon opinion ait de la valeur, alors voilà).

C'est une bizarrerie des valeurs qu'il a choisies pour l'apt-pinning. Lorsque vous exécutez apt-get install my_package apt choisit la source à partir de laquelle installer le paquet en se basant sur celle qui a la plus haute priorité d'épinglage.

Le réglage global de votre système (Release par défaut) a une priorité de 990.

Ajout de -t unstable à la commande apt-get fait temporairement de "unstable" la version par défaut pour cette commande.

Il a configuré sa priorité d'épinglage pour "stable" pour être 995 . Cela signifie que quoi qu'il arrive, les paquets seront toujours installés à partir de stable puisque sa priorité est encore plus élevée que celle de la version par défaut.

Alors la solution ? Facile - il suffit de changer la priorité de la broche dans /etc/apt/preferences.d/security.pref de 995 à 900.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X