Provided by:
apt_0.8.16~exp12ubuntu10_i386 
NAME
apt_preferences - Fichier de controle des preferences pour APT
DESCRIPTION
Le fichier d'APT, /etc/apt/preferences et les fichiers fragments situes
dans le dossier /etc/apt/preferences.d/, peuvent etre utilises pour
choisir la version des paquets que l'on veut installer.
Quand le fichier sources.list(5) contient des references a plusieurs
distributions (par exemple, stable et testing), plusieurs versions d'un
paquet peuvent etre installees. APT affecte une priorite a chaque
version disponible. La commande apt-get, tenant compte des contraintes
de dependance, installe la version qui possede la priorite la plus
haute. Le fichier des preferences annule les priorites assignees par
defaut aux versions des paquets : ainsi l'utilisateur peut choisir la
version qu'il veut installer.
Si le fichier sources.list(5) contient, pour une meme distribution, des
references a plusieurs sites de telechargement, il peut exister
plusieurs exemplaires de la meme version d'un paquet. Dans ce cas,
apt-get telecharge l'exemplaire qui apparait en premier dans le fichier
sources.list(5). Le fichier des preferences n'influe pas sur le choix
des exemplaires, seulement sur le choix de la version.
Les preferences sont un outil puissant pour les administrateurs systeme
mais peuvent devenir leur pire cauchemar si elles sont utilisees sans
precautions. APT ne remettra pas en doute les reglages choisis. Des
valeurs erronees pourront alors conduire a des paquets non installables
ou a des decisions incorrectes lors de la mise a jour des paquets. Des
problemes supplementaires peuvent survenir si des distributions
multiples sont melangees sans une bonne comprehension des paragraphes
qui suivent.
Note that the files in the /etc/apt/preferences.d directory are parsed
in alphanumeric ascending order and need to obey the following naming
convention: The files have either no or "pref" as filename extension
and only contain alphanumeric, hyphen (-), underscore (_) and period
(.) characters. Otherwise APT will print a notice that it has ignored a
file if the file doesn't match a pattern in the
Dir::Ignore-Files-Silently configuration list - in this case it will be
silently ignored.
Priorit'es affect'ees par d'efaut
Quand le fichier des preferences n'existe pas, ou quand aucune entree
de ce fichier ne s'applique a une version precise, la priorite affectee
a cette version est la priorite de la distribution a laquelle elle
appartient. On peut distinguer une distribution et lui donner une
priorite plus haute que celle des autres distributions : on l'appelle
la distribution par defaut ou << target release >> et elle peut etre
definie sur la ligne de commande de apt-get ou dans le fichier de
configuration d'APT, /etc/apt/apt.conf. Par exemple :
apt-get install -t testing paquet
APT::Default-Release "stable";
Quand une distribution par defaut a ete indiquee, APT utilise
l'algorithme suivant pour determiner la priorite des versions d'un
paquet :
priorite 1
to the versions coming from archives which in their Release files
are marked as "NotAutomatic: yes" but not as "ButAutomaticUpgrades:
yes" like the debian experimental archive.
une priorite egale a 100
to the version that is already installed (if any) and to the
versions coming from archives which in their Release files are
marked as "NotAutomatic: yes" and "ButAutomaticUpgrades: yes" like
the debian backports archive since squeeze-backports.
une priorite egale a 500
est affectee aux versions qui ne sont pas installees et qui
n'appartiennent pas a la distribution par defaut.
une priorite egale a 990
est affectee aux versions qui ne sont pas installees et qui
appartiennent a la distribution par defaut.
If the target release has not been specified then APT simply assigns
priority 100 to all installed package versions and priority 500 to all
uninstalled package versions, except versions coming from archives
which in their Release files are marked as "NotAutomatic: yes" - these
versions get the priority 1 or priority 100 if it is additionally
marked as "ButAutomaticUpgrades: yes".
Puis APT applique les regles suivantes pour determiner la version du
paquet qu'il faut installer (par ordre de priorite) :
o Ne jamais revenir en arriere, sauf si la priorite d'une version
disponible depasse 1000. << Revenir en arriere >> signifie
installer une version moins recente que la version installee. Il
faut noter qu'aucune des priorites par defaut n'excede 1000 ; de
telles valeurs ne peuvent etre definies que dans le fichier des
preferences. Notez aussi qu'il est risque de revenir en arriere.
o Installer la version qui possede la priorite la plus haute.
o Quand deux (ou plus) versions ont la meme priorite, installer la
version la plus recente (c.-a-d. celle dont le numero de version
est le plus grand).
o Quand deux (ou plus) versions ont la meme priorite et le meme
numero de version, mais soit les paquets different par certaines
metadonnees, soit l'option --reinstall a ete donnee, installer la
version qui n'est pas installee.
En general, la version installee d'un paquet (priorite 100) n'est pas
aussi recente que les versions disponibles dans les sources listees
dans le fichier sources.list(5) (priorite 500 ou 990). Et donc le
paquet sera mis a niveau avec la commande : apt-get install paquet ou
apt-get dist-upgrade.
La version installee d'un paquet peut etre - rarement - plus recente
que tout autre version disponible. Les commandes apt-get install paquet
ou apt-get upgrade ne provoquent pas de retour en arriere.
Parfois, la version installee d'un paquet est plus recente que la
version appartenant a la distribution par defaut, mais moins recente
que la version appartenant a une autre distribution. Une telle version
sera mise a niveau par les commandes apt-get install paquet ou apt-get
upgrade car au moins l'une des versions disponibles possede une plus
haute priorite que celle de la version installee.
Cons'equences des pr'ef'erences
Le fichier des preferences permet a l'administrateur systeme de
controler l'affectation des priorites. Ce fichier est constitue d'une
ou plusieurs entrees separees par des lignes blanches. Ces entrees
peuvent avoir deux formes, une forme particuliere et une forme
generale.
o La forme particuliere affecte une priorite (Pin-Priority) a un
paquet precis, a une version precise ou a un intervalle specifiant
plusieurs versions. Par exemple, l'entree suivante affecte une
priorite haute a toutes les versions du paquet perl dont le numero
de version commence par 5.8.
Package: perl
Pin: version 5.8*
Pin-Priority: 1001
o La forme generale affecte une priorite a toutes les versions d'un
paquet dans une distribution donnee (c'est-a-dire, a toutes les
versions d'un paquet qui sont listees dans un fichier Release), ou
a toutes les versions d'un paquet provenant d'un site Internet
identifie par un nom completement qualifie.
Cette forme generale des entrees du fichier des preferences
s'applique seulement aux groupes de paquets. Par exemple, l'entree
suivante affecte une priorite haute a toutes les versions
disponibles dans le site local.
Package: *
Pin: origin ""
Pin-Priority: 999
Il est important de noter que le mot-cle utilise ici est
<< origin >> qui peut servir a indiquer un nom d'hote. Dans
l'exemple qui suit, une haute priorite est donnee a toutes les
versions disponibles sur le serveur identifie par l' nom d'hote
<< ftp.de.debian.org >>.
Package: *
Pin: origin "ftp.de.debian.org"
Pin-Priority: 999
Veuillez noter que le mot-cle utilise ici, origin, ne doit pas etre
confondu avec l'Origine d'une distribution indiquee dans un fichier
Release. Ce qui suit l'etiquette << Origin: >> dans un fichier
Release n'est pas une adresse Internet mais le nom d'un auteur ou
d'un distributeur, comme << Debian >> ou << Ximian >>.
L'entree suivante affecte une priorite basse a toutes les versions
d'un paquet appartenant a toute distribution dont le nom
d'<< Archive >> est unstable.
Package: *
Pin: release a=unstable
Pin-Priority: 50
L'entree suivante affecte une priorite basse a toutes les versions
d'un paquet appartenant a toute distribution dont le nom de code
est wheezy.
Package: *
Pin: release n=wheezy
Pin-Priority: 900
L'entree suivante affecte une priorite haute a toutes les versions
d'un paquet appartenant a toute distribution dont le nom
d'<< Archive >> est stable et dont le numero de << Version >> est
3.0.
Package: *
Pin: release a=stable, v=3.0
Pin-Priority: 500
Regular expressions and glob() syntax
APT also supports pinning by glob() expressions and regular expressions
surrounded by /. For example, the following example assigns the
priority 500 to all packages from experimental where the name starts
with gnome (as a glob()-like expression) or contains the word kde (as a
POSIX extended regular expression surrounded by slashes).
Package: gnome* /kde/
Pin: release n=experimental
Pin-Priority: 500
The rule for those expressions is that they can occur anywhere where a
string can occur. Thus, the following pin assigns the priority 990 to
all packages from a release starting with karmic.
Package: *
Pin: release n=karmic*
Pin-Priority: 990
If a regular expression occurs in a Package field, the behavior is the
same as if this regular expression were replaced with a list of all
package names it matches. It is undecided whether this will change in
the future, thus you should always list wild-card pins first, so later
specific pins override it.
The pattern "*" in a Package field is not considered a glob()
expression in itself.
M'ethode d'interpr'etation des priorit'es par APT
Les priorites (P) indiquees dans le fichier des preferences doivent
etre des entiers positifs ou negatifs. Ils sont interpretes a peu pres
comme suit :
P > 1000
cette priorite entraine l'installation du paquet meme s'il s'agit
d'un retour en arriere.
990 < P <=1000
la version sera installee, meme si elle n'appartient pas a la
distribution par defaut ; mais elle ne sera pas installee si la
version installee est plus recente.
500 < P <=990
La version sera installee, sauf s'il existe une version appartenant
a la distribution par defaut ou si la version installee est plus
recente.
100 < P <=500
la version sera installee, sauf s'il existe une version appartenant
a une autre distribution ou si la version installee est plus
recente.
0 < P <=100
la version sera installee si aucune version du paquet n'est
installee.
P < 0
cette priorite empeche l'installation de la version.
Si l'une des entrees de forme particuliere correspond a la version
disponible d'un paquet, la premiere entree trouvee determine la
priorite de cette version. S'il n'en existe pas, et si l'une des
entrees de forme generale correspond a la version disponible d'un
paquet, la premiere entree trouvee determine la priorite.
Supposons par exemple que le fichier des preferences contienne les
trois entrees decrites ci-dessous :
Package: perl
Pin: version 5.8*
Pin-Priority: 1001
Package: *
Pin: origin ""
Pin-Priority: 999
Package: *
Pin: release unstable
Pin-Priority: 50
Alors :
o La version la plus recente du paquet perl sera installe pour autant
que son numero de version commence par 5.8. Si l'une des versions
5.8* existe et si la version installee est une version 5.9*, il y
aura un retour en arriere.
o Les versions des paquets (autres que perl) disponibles dans le site
local ont priorite sur les autres versions, meme celles appartenant
a la distribution par defaut.
o La version d'un paquet dont l'origine n'est pas le site local mais
un site Internet mentionne dans sources.list(5) et qui appartient a
une distribution unstable, ne sera installee que si aucune version
du paquet n'est deja installee.
D'etermination de la version des paquets et des propri'et'es des distributions
Chaque source indiquee dans le fichier sources.list(5) doit fournir les
fichiers Packages et Release qui decrivent les paquets disponibles a
cet endroit.
Le fichier Packages se trouve normalement dans le repertoire
.../dists/dist-name/component/arch, par exemple,
.../dists/stable/main/binary-i386/Packages. Il consiste en entrees
composees de lignes, une pour chaque paquet disponible dans le
repertoire. Seules deux lignes des entrees sont pertinentes pour la
determination des priorites :
la ligne Package:
donne le nom du paquet
la ligne Version:
donne le numero de version du paquet
Le fichier Release se trouve normalement dans le repertoire
.../dists/nom-distribution, par exemple, .../dists/stable/Release, ou
.../dists/squeeze/Release. Il consiste en une seule entree composee de
plusieurs lignes qui s'applique a tous les paquets situes dans les
repertoires sous le repertoire parent. Contrairement au fichier
Packages, presque toutes les lignes du fichier Release sont pertinentes
pour determiner les priorites :
La ligne Archive: ou Suite:
nomme l'archive a laquelle appartiennent tous les paquets situes
dans les repertoires. Par exemple, la ligne Archive: stable indique
que tous les paquets dans les repertoires situes sous le repertoire
parent du fichier Release appartiennent a l'archive stable.
Indiquer cette valeur dans le fichier des preferences demanderait
cette ligne :
Pin: release a=stable
la ligne Codename:
indique le nom de code auquel appartiennent tous les paquets situes
dans les repertoires. Par exemple, la ligne Codename: wheezy
indique que tous les paquets dans les repertoires situes sous le
repertoire parent du fichier Release appartiennent a la version
portant le nom de code wheezy. Indiquer cette valeur dans le
fichier des preferences demanderait cette ligne :
Pin: release n=wheezy
la ligne Version:
indique la version de la distribution. Par exemple, les paquets
dans les repertoires peuvent appartenir a la distribution Debian
GNU/Linux version 3.0. Il n'y a pas de numero de version pour les
distributions testing et unstable car elles n'ont pas encore ete
publiees. Indiquer cette valeur dans le fichier des preferences
demanderait ces lignes :
Pin: release v=3.0
Pin: release a=stable, v=3.0
Pin: release 3.0
La ligne Component:
nomme un composant qui indique le type de licence associee aux
paquets situes dans les repertoires sous le fichier Release. Par
exemple, la ligne Component: main indique que tous les exemplaires
dans les repertoires appartiennent au composant main, c'est-a-dire
que leur licence est en accord avec les Directives Debian pour le
logiciel libre. Indiquer ce composant dans le fichier des
preferences demanderait cette ligne :
Pin: release c=main
La ligne Origin:
nomme l'origine des paquets situes dans les repertoires sous le
fichier Release. En general, c'est Debian. Indiquer cette origine
dans le fichier des preferences demanderait cette ligne :
Pin: release o=Debian
La ligne Label:
indique une etiquette pour les paquets qui se trouvent dans les
repertoires sous le fichier Release. En general, c'est Debian.
Indiquer cette origine dans le fichier des preferences demanderait
cette ligne :
Pin: release l=Debian
Tous les fichiers Packages et Release recuperes dans des sources
indiquees dans le fichier sources.list(5) sont conserves dans le
repertoire /var/lib/apt/lists ou dans le fichier specifie par la
variable Dir::State::Lists dans le fichier apt.conf. Par exemple, le
fichier
debian.lcs.mit.edu_debian_dists_unstable_contrib_binary-i386_Release
contient le fichier Release du site debian.lcs.mit.edu, architecture
binary-i386 et composant contrib de la distribution unstable.
Lignes facultatives dans le fichier des pr'ef'erences
Toute entree du fichier des preferences peut commencer par une ou
plusieurs lignes contenant le mot Explanation:. Cela permet des
commentaires.
EXEMPLES
M'ethode pour suivre Stable
Le fichier des preferences suivant affecte une priorite plus haute que
la priorite par defaut (500) a tous les exemplaires appartenant a la
distribution stable et une priorite prohibitivement basse a tous les
exemplaires appartenant a d'autres distributions Debian.
Explanation: Ne pas installer des exemplaires d'origine Debian
Explanation: sauf ceux de la distribution stable
Package: *
Pin: release a=stable
Pin-Priority: 900
Package: *
Pin: release o=Debian
Pin-Priority: -10
Avec le fichier des preferences ci-dessus et un fichier sources.list(5)
adequat, les commandes suivantes utiliseront les versions les plus
recentes de stable pour faire la mise a niveau :
apt-get install paquet
apt-get upgrade
apt-get dist-upgrade
La commande suivante utilisera la version la plus recente de la
distribution testing pour mettre a niveau le paquet specifie ;
cependant les mises a niveau ulterieures du paquet ne se feront pas a
moins de relancer la commande.
apt-get install paquet/testing
M'ethode pour suivre Testing ou Unstable
Le fichier des preferences suivant affecte une priorite haute aux
versions des paquets appartenant a la distribution testing, une
priorite moindre aux versions appartenant a la distribution unstable et
une priorite prohibitivement basse aux versions appartenant a d'autres
distributions Debian.
Package: *
Pin: release a=testing
Pin-Priority: 900
Package: *
Pin: release a=unstable
Pin-Priority: 800
Package: *
Pin: release o=Debian
Pin-Priority: -10
Avec un fichier sources.list(5) approprie et le fichier des preferences
ci-dessus, les commandes suivantes utiliseront les versions les plus
recentes de testing pour faire la mise a niveau :
apt-get install paquet
apt-get upgrade
apt-get dist-upgrade
La commande suivante utilisera la version la plus recente de la
distribution unstable pour mettre a niveau le paquet specifie ; Par la
suite, apt-get upgrade mettra le paquet a jour avec la plus recente
version dans testing si elle est plus recente que la version installee
ou avec la plus recente version dans unstable si elle est plus recente
que la version installee.
apt-get install paquet/unstable
Suivre l''evolution d'une version par son nom de code
Le fichier des preferences suivant affecte une priorite plus haute que
la priorite par defaut (500) a tous les exemplaires appartenant a la
version portant le nom de code indique et une priorite prohibitivement
basse a tous les exemplaires appartenant a d'autres distributions
Debian. Veuillez noter qu'avec ce fichier de preferences, APT suivra la
transformation d'une version testing en stable puis oldstable. Si, au
contraire, vous souhaitez suivre la version testing, vous devriez
utiliser un des exemples precedents.
Explanation: Ne pas installer des exemplaires d'origine Debian
Explanation: sauf ceux de la distribution wheezy ou sid
Package: *
Pin: release n=wheezy
Pin-Priority: 900
Explanation: Debian unstable porte toujours le nom sid
Package: *
Pin: release n=sid
Pin-Priority: 800
Package: *
Pin: release o=Debian
Pin-Priority: -10
Avec le fichier des preferences ci-dessus et un fichier sources.list(5)
adequat, les commandes suivantes utiliseront les versions les plus
recentes de wheezy pour faire la mise a niveau :
apt-get install paquet
apt-get upgrade
apt-get dist-upgrade
La commande suivante utilisera la version la plus recente de la
distribution sid pour mettre a niveau le paquet specifie ; Par la
suite, apt-get upgrade mettra le paquet a jour avec la plus recente
version dans wheezy si elle est plus recente que la version installee
ou avec la plus recente version dans sid si elle est plus recente que
la version installee.
apt-get install paquet/sid
FICHIERS
/etc/apt/preferences
Fichier des preferences. C'est dans ce fichier qu'on peut faire de
l'epinglage (pinning) c'est-a-dire, choisir d'obtenir des paquets
d'une source distincte ou d'une distribution differente. Element de
configuration : Dir::Etc::Preferences.
/etc/apt/preferences.d/
Fragments de fichiers pour la preference des versions. Element de
configuration : Dir::Etc::PreferencesParts.
VOIR AUSSI
apt-get(8) apt-cache(8) apt.conf(5) sources.list(5)
BOGUES
Page des bogues d'APT[1]. Si vous souhaitez signaler un bogue a propos
d'APT, veuillez lire /usr/share/doc/debian/bug-reporting.txt ou
utiliser la commande reportbug(1).
TRADUCTEURS
Jerome Marant, Philippe Batailler, Christian Perrier
<bubulle@debian.org> (2000, 2005, 2009, 2010), Equipe de traduction
francophone de Debian <debian-l10n-french@lists.debian.org>
Veuillez noter que cette traduction peut contenir des parties non
traduites. Cela est volontaire, pour eviter de perdre du contenu quand
la traduction est legerement en retard sur le contenu d'origine.
AUTHOR
'Equipe de d'eveloppement d'APT
NOTES
1. Page des bogues d'APT
http://bugs.debian.org/src:apt
Linux 16 fevrier 2010 APT_PREFERENCES(5)