| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581 |
- <?xml version="1.0" encoding="iso-8859-15" standalone="no"?>
- <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
- <!ENTITY % aptent SYSTEM "apt.ent.fr">
- %aptent;
- ]>
- <refentry lang="fr">
- <refentryinfo>
- &apt-author.team;
- &apt-email;
- &apt-product;
- <!-- The last update date -->
- <date>29 Février 2004</date>
- </refentryinfo>
- <refmeta>
- <refentrytitle>apt_preferences</refentrytitle>
- <manvolnum>5</manvolnum>
- </refmeta>
- <refnamediv>
- <refname>apt_preferences</refname>
- <refpurpose>Un fichier de contrôle des préférences pour APT</refpurpose>
- </refnamediv>
- <refsect1><title>Description</title>
- <para>
- Le fichier d'APT, <filename>/etc/apt/preferences</filename>, peut être utilisé pour
- choisir la version des paquets que l'on veut installer.</para>
- <para>
- Quand le fichier &sources-list; contient des références à plusieurs
- distributions (par exemple, <literal>stable</literal> et
- <literal>testing</literal>), plusieurs versions d'un paquet peuvent être
- installées. APT affecte une priorité à chaque version disponible. La commande
- <command>apt-get</command>, tenant compte des contraintes de
- dépendance, installe la version qui possède la priorité la plus haute.
- Le fichier des préférences annule les priorités assignées par défaut
- aux versions des paquets : ainsi l'utilisateur peut choisir la version
- qu'il veut installer.
- </para>
- <para>
- Si le fichier &sources-list; contient, pour une même distribution,
- des références à plusieurs sites de téléchargement, il peut exister plusieurs
- exemplaires de la même version d'un paquet. Dans ce cas,
- <command>apt-get</command> télécharge l'exemplaire qui apparaît en premier
- dans le fichier &sources-list;. Le fichier des préférences n'influe pas sur
- le choix des exemplaires, seulement sur le choix de la version.
- </para>
- <refsect2><title>Les priorités affectées par défaut</title>
- <para>
- Quand le fichier des préférences n'existe pas, ou quand aucune entrée
- de ce fichier ne s'applique à une version précise, la priorité affectée à
- cette version est la priorité de la distribution à laquelle elle appartient.
- On peut distinguer une distribution et lui donner une priorité plus haute
- que celle des autres distributions : on l'appelle la distribution par
- défaut ou « target release » et elle peut être définie sur la ligne
- de commande de <command>apt-get</command> ou dans le fichier de configuration
- d'APT, <filename>/etc/apt/apt.conf</filename>.
- Par exemple :
- <programlisting>
- <command>apt-get install -t testing <replaceable>paquet</replaceable></command>
- </programlisting>
- <programlisting>
- APT::Default-Release "stable";
- </programlisting>
- </para>
- <para>
- Quand une distribution par défaut a été indiquée, APT utilise
- l'algorithme suivant pour déterminer la priorité des versions d'un
- paquet :
- <variablelist>
- <varlistentry><term>une priorité égale à 100</term>
- <listitem><simpara>est affectée à la version déjà installée (si elle existe).</simpara></listitem>
- </varlistentry>
- <varlistentry><term>une priorité égale à 500</term>
- <listitem><simpara>est affectée aux versions qui ne sont pas installées et
- qui n'appartiennent pas à la distribution par défaut.</simpara></listitem>
- </varlistentry>
- <varlistentry><term>une priorité égale à 990</term>
- <listitem><simpara>est affectée aux versions qui ne sont pas installées et
- qui appartiennent à la distribution par défaut.</simpara></listitem>
- </varlistentry>
- </variablelist>
- </para>
- <para>
- Quand aucune distribution par défaut n'a été indiquée, APT affecte
- simplement une priorité égale à 100 à toute version installée d'un paquet
- et une priorité égale à 500 à tout version non installée.
- </para>
- <para>
- Puis APT applique les règles suivantes pour déterminer la version
- du paquet qu'il faut installer (elles sont listées par ordre de priorité) :
- <itemizedlist>
- <listitem><simpara>
- Ne jamais revenir en arrière, sauf si la priorité d'une
- version disponible dépasse 1000. « Revenir en arrière » signifie
- installer une version moins récente que la version installée. Il
- faut noter qu'aucune des priorités par défaut n'excède 1000 ; de telles
- valeurs ne peuvent être définies que dans le fichier des préférences. Notez
- aussi qu'il est risqué de revenir en arrière.
- </simpara></listitem>
- <listitem><simpara>
- Installer la version qui possède la priorité la plus
- haute.
- </simpara></listitem>
- <listitem><simpara>
- Quand deux (ou plus) versions ont la même priorité,
- installer la version la plus récente (c.-à-d. celle dont le numéro de
- version est le plus grand).
- </simpara></listitem>
- <listitem><simpara>
- Quand deux (ou plus) versions ont la même priorité et le
- même numéro de version, mais soit les paquets diffèrent par certaines
- métadonnées, soit l'option <literal>--reinstall</literal> a été donnée, installer la
- version qui n'est pas installée.
- </simpara></listitem>
- </itemizedlist>
- </para>
- <para>
- En général, la version installée d'un paquet (priorité 100) n'est
- pas aussi récente que les versions disponibles dans les sources
- listées dans le fichier &sources-list; (priorité 500 ou 990). Et donc le
- paquet sera mis à niveau avec la commande :
- <command>apt-get install <replaceable>paquet</replaceable></command> ou
- <command>apt-get dist-upgrade</command>.
- </para>
- <para>
- La version installée d'un paquet peut être - rarement -
- <emphasis>plus</emphasis> récente que tout autre version disponible. Les commandes
- <command>apt-get install <replaceable>paquet</replaceable></command> ou
- <command>apt-get upgrade</command> ne provoquent pas de retour en arrière.
- </para>
- <para>
- Parfois, la version installée d'un paquet est plus récente que la
- version appartenant à la distribution par défaut, mais moins récente que
- la version appartenant à une autre distribution. Une telle version sera mise
- à niveau par les commandes
- <command>apt-get install <replaceable>paquet</replaceable></command> ou
- <command>apt-get upgrade</command> car au moins <emphasis>l'une</emphasis> des versions
- disponibles possède une plus haute priorité que celle de la version installée.
- </para>
- </refsect2>
- <refsect2><title>Conséquences des préférences</title>
- <para>
- Le fichier des préférences permet à l'administrateur système de
- contrôler l'affectation des priorités. Ce fichier est constitué d'une ou
- plusieurs entrées séparées par des lignes blanches. Ces entrées peuvent avoir
- deux formes, une forme particulière et une forme générale.
- <itemizedlist>
- <listitem><simpara>
- La forme particulière affecte une priorité
- (<emphasis>Pin-Priority</emphasis>) à un paquet précis, à une version précise
- ou à un intervalle spécifiant plusieurs versions. Par exemple, l'entrée
- suivante affecte une priorité haute à toutes les versions du paquet
- <filename>perl</filename> dont le numéro de version commence par <literal>5.8</literal>.
- </simpara>
- <programlisting>
- Package: perl
- Pin: version 5.8*
- Pin-Priority: 1001
- </programlisting>
- </listitem>
- <listitem><simpara>
- La forme générale affecte une priorité à toutes les versions d'un paquet dans
- une distribution donnée (c'est-à-dire, à toutes les versions d'un paquet qui
- sont listées dans un fichier <filename>Release</filename>), ou à toutes les versions
- d'un paquet provenant d'un site internet identifié par un nom complètement
- qualifié.
- </simpara>
- <simpara>
- Cette forme générale des entrées du fichier des préférences
- s'applique seulement aux groupes de paquets. Par exemple, l'entrée suivante
- affecte une priorité haute à toutes les versions disponibles dans le
- site local.
- </simpara>
- <programlisting>
- Package: *
- Pin: origin ""
- Pin-Priority: 999
- </programlisting>
- <simpara>Attention ! le mot-clé utilisé ici, <literal>origin</literal>, ne doit pas
- être confondu avec l'Origine d'une distribution indiquée dans
- un fichier <filename>Release</filename>. Ce qui suit l'étiquette « Origin: »
- dans un fichier <filename>Release</filename> n'est pas une adresse internet
- mais le nom d'un auteur ou d'un distributeur, comme Debian ou Ximian.
- </simpara>
- <simpara>L'entrée suivante affecte une priorité basse à toutes les versions
- d'un paquet appartenant à toute distribution dont le nom
- d'« Archive » est <literal>unstable</literal>.
- </simpara>
- <programlisting>
- Package: *
- Pin: release a=unstable
- Pin-Priority: 500
- </programlisting>
- <simpara>L'entrée suivante affecte une priorité haute à toutes les versions
- d'un paquet appartenant à toute distribution dont le nom
- d'« Archive » est <literal>stable</literal> et dont le numéro
- de « Version » est <literal>3.0</literal>.
- </simpara>
- <programlisting>
- Package: *
- Pin: release a=stable, v=3.0
- Pin-Priority: 500
- </programlisting>
- </listitem>
- </itemizedlist>
- </para>
- </refsect2>
- <refsect2><title>Comment APT interprète-t-il les priorités ?</title>
- <para>
- Les priorités (P) indiquées dans le fichier des préférences doivent
- être des entiers positifs ou négatifs. Ils sont interprétés à peu près
- comme suit :
- <variablelist>
- <varlistentry><term>P > 1000</term>
- <listitem><simpara>
- Cette priorité entraîne l'installation du paquet même s'il
- s'agit d'un retour en arrière.
- </simpara></listitem>
- </varlistentry>
- <varlistentry><term>990 < P <=1000</term>
- <listitem><simpara>
- La version sera installée, même si elle n'appartient pas à
- la distribution par défaut ; mais elle ne sera pas installée si la
- version installée est plus récente.
- </simpara></listitem>
- </varlistentry>
- <varlistentry><term>500 < P <=990</term>
- <listitem><simpara>
- La version sera installée, sauf s'il existe une version
- appartenant à la distribution par défaut ou si la version installée est plus
- récente.
- </simpara></listitem>
- </varlistentry>
- <varlistentry><term>100 < P <=500</term>
- <listitem><simpara>
- La version sera installée, sauf s'il existe une version
- appartenant à une autre distribution ou si la version installée est plus
- récente.
- </simpara></listitem>
- </varlistentry>
- <varlistentry><term>0 < P <=100</term>
- <listitem><simpara>
- La version sera installée si aucune version du paquet
- n'est installée.
- </simpara></listitem>
- </varlistentry>
- <varlistentry><term>P < 0</term>
- <listitem><simpara>
- Cette priorité empêche l'installation de la version.
- </simpara></listitem>
- </varlistentry>
- </variablelist>
- </para>
- <para>
- Si l'une des entrées de forme particulière correspond à la version
- disponible d'un paquet, la première entrée trouvée détermine la priorité de
- cette version. S'il n'en existe pas, et si l'une des entrées de forme générale
- correspond à la version disponible d'un paquet, la première entrée trouvée
- détermine la priorité.
- </para>
- <para>
- Supposons par exemple que le fichier des préférences contienne les trois
- entrées décrites ci-dessous :
- </para>
- <programlisting>
- Package: perl
- Pin: version 5.8*
- Pin-Priority: 1001
- Package: *
- Pin: origin ""
- Pin-Priority: 999
- Package: *
- Pin: release unstable
- Pin-Priority: 50
- </programlisting>
- <para>
- Alors :
- <itemizedlist>
- <listitem><simpara>
- La version la plus récente du paquet <literal>perl</literal> sera
- installé pour autant que son numéro de version commence par <literal>5.8</literal>.
- Si l'<emphasis>une</emphasis> des versions 5.8* existe et si la version installée est
- une version 5.9*, il y aura un retour en arrière.
- </simpara></listitem>
- <listitem><simpara>
- Les versions des paquets (autres que <literal>perl</literal>)
- disponibles dans le site local ont priorité sur les autres versions,
- même celles appartenant à la distribution par défaut.
- </simpara></listitem>
- <listitem><simpara>
- La version d'un paquet dont l'origine n'est pas le site
- local mais un site internet listé dans &sources-list; et qui appartient à une
- distribution <literal>unstable</literal>, ne sera installée que si aucune version
- du paquet n'est déjà installée.
- </simpara></listitem>
- </itemizedlist>
- </para>
- </refsect2>
- <refsect2><title>Détermination de la version des paquets et des propriétés des
- distributions</title>
- <para>
- Chaque source listée dans le fichier &sources-list; doit fournir
- les fichiers <filename>Packages</filename> et <filename>Release</filename>
- qui décrivent les paquets disponibles à cet endroit.
- </para>
- <para>Le fichier <filename>Packages</filename> se trouve normalement dans le
- répertoire
- <filename>.../dists/<replaceable>dist-name</replaceable>/<replaceable>component</replaceable>/<replaceable>arch</replaceable></filename>, par exemple,
- <filename>.../dists/stable/main/binary-i386/Packages</filename>. Il consiste
- en entrées composées de lignes, une pour chaque paquet disponible dans le
- répertoire. Seules deux lignes des entrées sont pertinentes pour la
- détermination des priorités :
- <variablelist>
- <varlistentry>
- <term>La ligne <literal>Package:</literal> </term>
- <listitem><simpara>
- donne le nom du paquet
- </simpara></listitem>
- </varlistentry>
- <varlistentry>
- <term>La ligne <literal>Version:</literal> </term>
- <listitem><simpara>
- donne le numéro de version du paquet
- </simpara></listitem>
- </varlistentry>
- </variablelist>
- </para>
- <para>
- Le fichier <filename>Release</filename> se trouve normalement dans le
- répertoire
- <filename>.../dists/<replaceable>dist-name</replaceable></filename>, par exemple, <filename>.../dists/stable/Release</filename>, ou <filename>.../dists/woody/Release</filename>.
- Il consiste en une seule entrée composée de plusieurs lignes qui s'applique à
- <emphasis>tous</emphasis> les paquets situés dans les répertoires sous
- le répertoire parent. Contrairement au fichier <filename>Packages</filename>, presque
- toutes les lignes du fichier <filename>Release</filename> sont pertinentes pour
- déterminer les priorités :
- <variablelist>
- <varlistentry>
- <term>La ligne <literal>Archive:</literal> </term>
- <listitem><simpara>
- nomme l'archive à laquelle appartiennent tous les
- paquets situés dans les répertoires. Par exemple, la ligne
- <literal>Archive: stable</literal> indique que tous les paquets dans les répertoires
- situés sous le répertoire parent du fichier <filename>Release</filename> appartiennent
- à l'archive <literal>stable</literal>. Indiquer cette valeur dans le fichier des
- préférences demanderait cette ligne :
- </simpara>
- <programlisting>
- Pin: release a=stable
- </programlisting>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>La ligne <literal>Version:</literal> </term>
- <listitem><simpara>
- indique la version de la distribution. Par exemple, les
- paquets dans les répertoires peuvent appartenir à la
- distribution Debian GNU/Linux version 3.0. Il n'y a pas de numéro de version
- pour les distributions <literal>testing</literal> et <literal>unstable</literal> car elles
- n'ont pas encore été publiées. Indiquer cette valeur dans le fichier des préférences demanderait
- ces lignes :
- </simpara>
- <programlisting>
- Pin: release v=3.0
- Pin: release a=stable, v=3.0
- Pin: release 3.0
- </programlisting>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>La ligne <literal>Component:</literal></term>
- <listitem><simpara>
- nomme un composant qui indique le type de licence associée
- aux paquets situés dans les répertoires sous le fichier
- <filename>Release</filename>. Par exemple, la ligne <literal>Component: main</literal> indique
- que tous les exemplaires dans les répertoires appartiennent au composant
- <literal>main</literal>, c'est-à-dire que leur licence est en accord avec les
- Directives Debian pour le logiciel libre. Indiquer ce composant dans le
- fichier des préférences demanderait cette ligne :
- </simpara>
- <programlisting>
- Pin: release c=main
- </programlisting>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>La ligne <literal>Origin:</literal> </term>
- <listitem><simpara>
- nomme l'origine des paquets situés
- dans les répertoires sous le fichier <filename>Release</filename>. En général, c'est
- <literal>Debian</literal>. Indiquer cette origine dans le fichier des préférences
- demanderait cette ligne :
- </simpara>
- <programlisting>
- Pin: release o=Debian
- </programlisting>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>La ligne <literal>Label:</literal> </term>
- <listitem><simpara>
- indique un label pour les paquets qui se trouvent
- dans les répertoires sous le fichier <filename>Release</filename>. En général, c'est
- <literal>Debian</literal>. Indiquer cette origine dans le fichier des préférences
- demanderait cette ligne :
- </simpara>
- <programlisting>
- Pin: release l=Debian
- </programlisting>
- </listitem>
- </varlistentry>
- </variablelist>
- </para>
- <para>Tous les fichiers <filename>Packages</filename> et
- <filename>Release</filename> récupérés dans des sources listées par le
- fichier &sources-list; sont conservés dans le répertoire
- <filename>/var/lib/apt/lists</filename> ou dans le fichier spécifié par la
- variable <literal>Dir::State::Lists</literal> dans le fichier <filename>apt.conf</filename>.
- Par exemple, le fichier
- <filename>debian.lcs.mit.edu_debian_dists_unstable_contrib_binary-i386_Release</filename>
- contient le fichier <filename>Release</filename> du site
- <literal>debian.lcs.mit.edu</literal>, architecture <literal>binary-i386</literal> et
- composant <literal>contrib</literal> de la distribution <literal>unstable</literal>.
- </para>
- </refsect2>
- <refsect2><title>Lignes facultatives dans le fichier des préférences</title>
- <para>
- Toute entrée du fichier des préférences peut commencer par une ou
- plusieurs lignes contenant le mot <literal>Explanation:</literal>. Cela permet des
- commentaires.
- </para>
- <para>La ligne <literal>Pin-Priority:</literal> d'une entrée est facultative. Si elle
- n'existe pas, APT affecte une priorité inférieure de 1 à la valeur spécifiée
- sur une ligne commençant par <literal>Pin-Priority: release ...</literal>.
- </para>
- </refsect2>
- </refsect1>
- <refsect1><title>Exemples</title>
- <refsect2><title>Comment suivre Stable ?</title>
- <para>
- Le fichier des préférences suivant affecte une priorité plus haute que
- la priorité par défaut (500) à tous les exemplaires appartenant à la
- distribution <literal>stable</literal> et une priorité prohibitivement basse à tous
- les exemplaires appartenant à d'autres distributions <literal>Debian</literal>.
- <programlisting>
- 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
- </programlisting>
- </para>
- <para>
- Avec le fichier des préférences ci-dessus et un fichier &sources-list;
- adéquat, les commandes suivantes utiliseront les versions les plus récentes
- de <literal>stable</literal> pour faire la mise à niveau :
- <programlisting>
- apt-get install <replaceable>paquet</replaceable>
- apt-get upgrade
- apt-get dist-upgrade
- </programlisting>
- </para>
- <para>
- La commande suivante utilisera la version la plus récente de la
- distribution <literal>testing</literal> pour mettre à niveau le paquet spécifié ;
- cependant les mises à niveau ultérieures du paquet ne se feront pas
- à moins de relancer la commande.
- <programlisting>
- apt-get install <replaceable>paquet</replaceable>/testing
- </programlisting>
- </para>
- </refsect2>
- <refsect2><title>Comment suivre Testing ou Unstable ?</title>
- <para>
- Le fichier des préférences suivant affecte une priorité haute aux
- versions des paquets appartenant à la distribution <literal>testing</literal>, une
- priorité moindre aux versions appartenant à la distribution <literal>unstable</literal>
- et une priorité prohibitivement basse aux versions appartenant à d'autres
- distributions <literal>Debian</literal>.
- <programlisting>
- Package: *
- Pin: release a=testing
- Pin-Priority: 900
- Package: *
- Pin: release a=unstable
- Pin-Priority: 800
- Package: *
- Pin: release o=Debian
- Pin-Priority: -10
- </programlisting>
- </para>
- <para>
- Avec un fichier &sources-list; approprié et le fichier des préférences
- ci-dessus, les commandes suivantes
- utiliseront les versions les plus récentes de <literal>testing</literal> pour faire
- la mise à niveau :
- <programlisting>
- apt-get install <replaceable>paquet</replaceable>
- apt-get upgrade
- apt-get dist-upgrade
- </programlisting>
- </para>
- <para>
- La commande suivante utilisera la version la plus récente de la
- distribution <literal>unstable</literal> pour mettre à niveau le paquet spécifié ;
- Par la suite, <command>apt-get upgrade</command> mettra le paquet à jour
- avec la plus récente version dans <literal>testing</literal> si elle est plus récente
- que la version installée ou avec la plus récente version dans
- <literal>unstable</literal> si elle est plus récente que la version installée.
- <programlisting>
- apt-get install <replaceable>paquet</replaceable>/unstable
- </programlisting>
- </para>
- </refsect2>
- </refsect1>
- <refsect1><title>See Also</title>
- <para>
- &apt-get; &apt-cache; &apt-conf; &sources-list;
- </para>
- </refsect1>
- &manbugs;
- &traducteur;
- </refentry>
|