1 <?xml version=
"1.0" encoding=
"iso-8859-15" standalone=
"no"?>
2 <!DOCTYPE refentry PUBLIC
"-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
5 <!ENTITY % aptent SYSTEM
"apt.ent.fr">
13 &apt-author.jgunthorpe;
17 <!-- The last update date -->
18 <date>29 Février
2004</date>
22 <refentrytitle>apt.conf
</refentrytitle>
23 <manvolnum>5</manvolnum>
26 <refnamediv><refname>apt.conf
</refname>
27 <refpurpose>Fichier de configuration pour APT
</refpurpose>
30 <refsect1><title>Description
</title>
32 Le fichier
<filename>apt.conf
</filename> est le principal fichier de configuration
33 de la collection d'outils que constitue APT
; tous les outils font appel à ce
34 fichier de configuration et utilisent un analyseur syntaxique en ligne de
35 commande commun afin de fournir un environnement uniforme. Quand un outil
36 d'APT démarre, il lit (si elle existe) la variable d'environnement
37 <envar>APT_CONFIG
</envar> ; puis il lit les fichiers situés dans
38 <literal>Dir::Etc::Parts
</literal> ainsi que le principal fichier de configuration
39 indiqué par
<literal>Dir::Etc::main
</literal> ; enfin il applique les options de
40 la ligne de commande qui annulent les directives de configuration, chargeant,
41 si nécessaire, d'autres fichiers de configuration.
44 Le fichier de configuration est construit comme un arbre d'options
45 organisées en groupes fonctionnels. On se sert du double deux points («
::
»)
46 pour indiquer une option
; par exemple,
<literal>APT::Get::Assume-Yes
</literal> est
47 une option pour le groupe d'outils APT, destinée à l'outil Get. Les options
48 n'héritent pas des groupes de leurs parents.
51 Syntaxiquement, le langage de configuration est conçu sur le même modèle
52 que les langages utilisés par des outils ISC tels que bind et dhcp. Une ligne
53 qui commence par
<literal>//
</literal> est un commentaire et elle est ignorée.
54 Chaque ligne est de la forme
:
55 <literal>APT::Get::Assume-Yes "true";
</literal>
56 Le point-virgule final est obligatoire et les guillemets sont optionnels.
57 On peut déclarer un nouveau champ d'action avec des accolades, comme
61 <informalexample><programlisting>
68 </programlisting></informalexample>
71 avec des retours à la ligne pour faciliter la lecture. On peut créer des
72 listes en ouvrant un champ d'action et en mettant un seul mot entre
73 apostrophes suivi d'un point-virgule. On peut mettre plusieurs entrées,
74 séparées par un point-virgule.
77 <informalexample><programlisting>
78 DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
79 </programlisting></informalexample>
82 Les modèles
<filename>&docdir;examples/apt.conf
</filename> &configureindex;
83 montrent à quoi devrait ressembler le fichier de configuration.
86 Deux éléments spéciaux sont autorisés
:
<literal>#include
</literal> et
87 <literal>#clear
</literal>.
<literal>#include
</literal> inclut le fichier donné en argument,
88 à moins que le nom ne se termine par une barre oblique.
<literal>#clear
</literal> sert à
89 effacer une liste de noms.
92 Tous les outils d'APT possèdent une option
<option>-o
</option> qui permet de
93 spécifier une configuration arbitraire depuis la ligne de commande. La
94 syntaxe consiste en un nom complet d'option (par exemple
95 <literal>APT::Get::Assume-Yes
</literal>) suivi par un signe égal, puis par la nouvelle
96 valeur de l'option. On peut compléter une liste en ajoutant un «
::
» au nom
101 <refsect1><title>Le groupe APT
</title>
103 Ce groupe d'options contrôle aussi bien le comportement global d'APT que
104 la prise en compte des options pour chaque outil.
107 <varlistentry><term>Architecture
</term>
109 L'architecture du système
; cette option positionne l'architecture à utiliser
110 pour récupérer des fichiers et analyser des listes de paquets. L'architecture
111 interne par défaut est celle pour laquelle APT a été compilé.
115 <varlistentry><term>Ignore-Hold
</term><listitem>
117 Ignore les paquets «
gelés
»
; cette option globale indique au
118 système de résolution de ne pas tenir compte des paquets «
gelés
»
119 dans sa prise de décision.
123 <varlistentry><term>Clean-Installed
</term>
125 Avec cette option qui est activée par défaut, la fonctionnalité «
autoclean
»
126 supprime tout paquet qui ne peut plus être récupéré dans le cache.
127 Quand cette option est désactivée, les paquets qui sont installés localement
128 sont aussi exclus du nettoyage - mais notez que APT ne fournit aucun moyen
129 direct pour les réinstaller.
133 <varlistentry><term>Immediate-Configure
</term>
135 Désactive la configuration immédiate
; cette dangereuse option désactive
136 une partie du code de mise en ordre de APT pour que ce dernier effectue le
137 moins d'appels possible à Dpkg. C'est peut-être nécessaire sur des systèmes
138 lents à un seul utilisateur mais c'est extrêmement dangereux et cela peut
139 faire échouer les scripts d'installation, voire pire.
140 Utilisez-la à vos risques et périls.
144 <varlistentry><term>Force-LoopBreak
</term>
146 Ne jamais activer cette option à moins que vous ne sachiez - réellement - ce
147 que vous faites. Elle autorise APT à supprimer temporairement un paquet
148 essentiel pour mettre fin à une boucle Conflicts / Conflicts ou
149 Conflicts / Pre-Depends entre deux paquets essentiels. UNE TELLE BOUCLE
150 NE DOIT JAMAIS SE PRODUIRE
: C'EST UN BOGUE SÉRIEUX. Cette option
151 fonctionne si les paquets essentiels ne sont pas tar, gzip, libc, dpkg, bash
152 ou tous les paquets dont ces paquets dépendent.
156 <varlistentry><term>Cache-Limit
</term>
158 APT utilise un fichier cache d'une taille mémoire fixe pour ranger les
159 informations du fichier «
available
». Cette option fixe la taille
164 <varlistentry><term>Build-Essential
</term>
166 Cette option définit les paquets qui sont considérés comme faisant partie
167 des dépendances essentielles pour la construction des paquets.
171 <varlistentry><term>Get
</term>
172 <listitem><para>La sous-section
<literal>Get
</literal> contrôle l'outil &apt-get;,
174 sa documentation pour avoir plus d'informations sur les options en question.
178 <varlistentry><term>Cache
</term>
179 <listitem><para>La sous-section
<literal>Cache
</literal> contrôle l'outil &apt-cache;,
181 consulter sa documentation pour avoir plus d'informations sur les options en
186 <varlistentry><term>CDROM
</term>
187 <listitem><para>La sous-section
<literal>CDROM
</literal> contrôle l'outil&apt-cdrom;,
189 consulter sa documentation pour avoir plus d'informations sur les options en
196 <refsect1><title>Le groupe Acquire
</title>
198 Le groupe d'options
<literal>Acquire
</literal> contrôle le téléchargement des paquets et
199 les gestionnaires d'URI.
202 <varlistentry><term>Queue-Mode
</term>
204 Le mode file d'attente
;
<literal>Queue-Mode
</literal> peut prendre une valeur
205 parmi
<literal>host
</literal> ou
<literal>access
</literal> et cela détermine comment APT
206 parallélise les connexions sortantes.
<literal>Host
</literal> signifie qu'une
207 connexion par cible sera initiée, tandis que
<literal>access
</literal> signifie qu'une
208 connexion par type d'URI sera initiée.
212 <varlistentry><term>Retries
</term>
214 Nombre d'essais à effectuer. Si ce nombre n'est pas nul, APT essaie de
215 récupérer, le nombre donné de fois, les fichiers dont la récupération a échoué.
219 <varlistentry><term>Source-Symlinks
</term>
221 Utilise des liens symboliques pour les archives de sources. Positionnée à
222 «
true
», cette option crée si possible des liens symboliques vers
223 les archives de sources au lieu de les copier.
224 Par défaut à «
true
».
228 <varlistentry><term>http
</term>
230 URI HTTP ; http::Proxy est le mandataire (proxy) http à utiliser par défaut.
231 Il se présente sous la forme standard
:
232 <literal>http://[[user][:pass]@]host[:port]/
</literal>. En utilisant la syntaxe
:
233 <literal>http::Proxy::
<host
></literal>, où le mot-clé spécial
<literal>DIRECT
</literal>
234 indique de n'utiliser aucun mandataire, on peut spécifier un mandataire
235 pour chaque machine distante. La variable d'environnement
<envar>http_proxy
</envar>
236 remplace tous ces paramètres.
239 Trois options de configuration sont fournies pour le contrôle des caches qui
240 sont compatibles avec HTTP/
1.1.
<literal>No-Cache
</literal> signifie que le mandataire
241 ne doit pas du tout utiliser les réponses qu'il a stockées
;
<literal>Max-Age
</literal>
242 sert uniquement pour les fichiers d'index
: cela demande au cache de les
243 mettre à jour quand leur ancienneté est supérieure au nombre de secondes
244 donné. Debian met à jour son fichier d'index de manière journalière, la
245 valeur par défaut est donc de
1 jour.
<literal>No-Store
</literal> sert uniquement
246 pour les fichiers d'archive
: cela demande au cache de ne jamais garder
247 la requête. Cela peut éviter de polluer un cache mandataire avec des
248 fichiers .deb très grands. Note
: Squid
2.0.2 ne prend en compte aucune de
252 L'option
<literal>timeout
</literal> positionne le compteur de temps mort (timeout)
253 utilisé par la méthode
: cela vaut pour tout (connexion, données).
256 Une option de configuration est fournie pour contrôler la profondeur du tube
257 pour le cas où un serveur distant n'est pas conforme à la RFC ou est bogué
258 (comme Squid
2.0.2).
<literal>Acquire::http::Pipeline-Depth
</literal> a une valeur
259 comprise entre
0 et
5 : elle indique le nombre de requêtes en attente qui
260 peuvent être émises. Quand la machine distante ne conserve pas correctement
261 les connexions TCP, on DOIT donner une valeur égale à
0 -- sinon des
262 données seront corrompues. Les machines qui ont besoin de cette option
263 ne respectent pas la RFC
2068.
267 <varlistentry><term>ftp
</term>
269 URI FTP ; ftp::Proxy est le serveur mandataire par défaut à utiliser. Il se
270 présente sous la forme standard
:
271 <literal>ftp://[[user][:pass]@]host[:port]/
</literal> ; il est remplacé par la
272 variable d'environnement
<envar>ftp_proxy
</envar>. Pour utiliser un mandataire ftp,
273 vous devez renseigner l'entrée
<literal>ftp::ProxyLogin
</literal> dans le fichier de
274 configuration. Cette entrée spécifie les commandes qui disent au serveur
275 mandataire comment se connecter. Voyez
&configureindex; pour savoir
276 comment faire. Les variables de substitution disponibles sont
:
277 <literal>$(PROXY_USER)
</literal>,
<literal>$(PROXY_PASS)
</literal>,
<literal>$(SITE_USER)
</literal>,
278 <literal>$(SITE_PASS)
</literal>,
<literal>$(SITE)
</literal>, et
<literal>$(SITE_PORT)
</literal>.
279 Chacune correspond à un élément de l'URI.
282 L'option
<literal>timeout
</literal> positionne le compteur de temps mort (timeout)
283 utilisé par la méthode
: cela vaut pour tout (connexion, données).
286 Plusieurs options de configuration sont fournies pour contrôler le mode
287 passif. Généralement, c'est plus sûr d'activer le mode passif
; cela
288 marche dans presque tous les environnements. Cependant, certaines situations
289 nécessitent que le mode passif soit désactivé et que le mode
290 «
port
» de ftp
291 soit utilisé à la place. On peut le faire globalement, pour des
292 connexions qui passent par un mandataire ou pour une machine
293 spécifique (examinez le modèle de fichier de configuration).
296 On peut utiliser un mandataire FTP pour atteindre une cible HTTP en
297 positionnant la variable d'environnement
<envar>ftp_proxy
</envar> à une url http --
298 consultez la méthode http ci-dessus pour la syntaxe. On ne peut pas fixer
299 cette variable dans le fichier de configuration et il n'est pas recommandé
300 d'utiliser HTTP par FTP à cause de son peu d'efficacité.
303 L'option
<literal>ForceExtended
</literal> contrôle l'utilisation des commandes liées
304 à la RFC
2428,
<literal>EPSV
</literal> et
<literal>EPRT
</literal>. Par défaut, elle vaut
305 «
false
»
; ce qui signifie que ces commandes ne sont
306 utilisées que pour une connexion de type IPv6. Quand elle vaut
307 «
true
», on les utilise même si la connexion est de type IPv4. La
308 plupart des serveurs FTP ne suivent pas la RFC
2428.
312 <varlistentry><term>cdrom
</term>
314 URI CDROM
; la seule option de configuration pour les URI de CDROM
315 est le point de montage
:
<literal>cdrom::Mount
</literal> ; il doit
316 représenter le point de montage du lecteur de cédérom indiqué dans
317 <filename>/etc/fstab
</filename>.
318 On peut fournir d'autres commandes de montage et de démontage quand le
319 point de montage ne peut être listé dans le fichier
<filename>/etc/fstab
</filename>
320 (par exemple, un montage SMB). Syntaxiquement, il faut placer
321 <literallayout>"/cdrom/"::Mount
"foo";
</literallayout> dans le bloc cdrom.
322 La barre oblique finale est importante. Les commandes de démontage
323 peuvent être spécifiées en utilisant
<literal>UMount
</literal>.
327 <varlistentry><term>gpgv
</term>
329 URI GPGV ; la seule option pour les URI GPGV est celle qui permet de
330 passer des paramètres à gpgv.
331 <literal>gpgv::Options
</literal> Options supplémentaires passées à
340 <refsect1><title>Les répertoires
</title>
342 Les répertoires de la section
<literal>Dir::State
</literal> concernent le système
343 local.
<literal>lists
</literal> est le répertoire où placer les listes de paquets
344 téléchargés et
<literal>status
</literal> est le nom du fichier d'état de Dpkg.
345 <literal>preferences
</literal> concerne APT
: c'est le nom du fichier des
347 <literal>Dir::State
</literal> contient le répertoire par défaut préfixé à tous les
348 sous-éléments, quand ceux-ci ne commencent pas par
<filename>/
</filename>
349 ou
<filename>./
</filename>.
352 <literal>Dir::Cache
</literal> contient les emplacements qui renseignent sur le
353 cache local
: par exemple, les deux caches de paquets
354 <literal>srcpkgcache
</literal> et
<literal>pkgcache
</literal>, et aussi l'endroit où sont
355 placées les archives téléchargées,
<literal>Dir::Cache::archives
</literal>. On peut
356 empêcher la création des caches en laissant leur nom en blanc. Cela ralentit
357 le démarrage mais cela sauve de l'espace disque. Il vaut mieux se passer du
358 cache
<literal>pkgcache
</literal> plutôt que se passer du cache
<literal>srcpkgcache
</literal>.
359 Comme pour
<literal>Dir::State
</literal>, le répertoire par défaut est contenu dans
360 <literal>Dir::Cache
</literal>.
363 <literal>Dir::Etc
</literal> contient l'emplacement des fichiers de configuration,
364 <literal>sourcelist
</literal> indique l'emplacement de la liste de sources et
365 <literal>main
</literal> est le fichier de configuration par défaut (le modifier
366 n'a aucun effet, à moins qu'on ne le modifie avec le fichier de
367 configuration indiqué par la variable
<envar>APT_CONFIG
</envar>).
370 <literal>Dir::Parts
</literal> lit, par ordre d'entrée, tous les fragments de
371 configuration dans le répertoire indiqué. Ensuite, le fichier principal
372 de configuration est chargé.
375 Les programmes binaires sont pointés par
<literal>Dir::Bin
</literal>.
376 L'emplacement des gestionnaires de méthodes est indiqué par
377 <literal>Dir::Bin::Methods
</literal> ;
<literal>gzip
</literal>,
378 <literal>Dpkg
</literal>,
<literal>apt-get
</literal>,
379 <literal>dpkg-source
</literal>,
<literal>dpkg-buildpackage
</literal>
380 et
<literal>apt-cache
</literal>
381 indiquent l'emplacement des programmes correspondants.
385 <refsect1><title>APT et DSelect
</title>
387 Quand APT est utilisé comme une méthode de
&dselect;, plusieurs directives
388 contrôlent le comportement par défaut. On les trouve dans la section
389 <literal>DSelect
</literal>.
393 <varlistentry><term>Clean
</term>
395 Mode de nettoyage du cache
; cette variable peut prendre l'une des valeurs
396 suivantes
: «
always
», «
prompt
»,
397 «
auto
», «
pre-auto
» et «
never
».
398 «
always
» et «
prompt
» suppriment tous les paquets du
399 cache après la mise à niveau
; «
prompt
» (valeur par défaut)
400 les supprime après une demande et «
auto
» ne supprime que les
401 archives qui ne peuvent plus être téléchargées (remplacées, par exemple, par
402 une nouvelle version). «
pre-auto
» les supprime avant de récupérer
407 <varlistentry><term>Options
</term>
409 Le contenu de cette variable est passé à &apt-get; avec les options de la ligne
410 de commande quand ce programme est utilisé dans la phase d'installation.
413 <varlistentry><term>UpdateOptions
</term>
415 Le contenu de cette variable est passé à &apt-get; avec les options de la
416 ligne de commande quand ce programme est utilisé dans la phase de mise à jour.
420 <varlistentry><term>PromptAfterUpdate
</term>
422 Si cette option est «
vraie
», l'opération [U]pdate de
&dselect;
423 interroge toujours l'utilisateur avant de continuer. Par défaut, ce n'est
424 qu'en cas d'erreur que l'on propose à l'utilisateur d'intervenir.
430 <refsect1><title>Comment APT appelle Dpkg
</title>
432 Plusieurs directives de configuration contrôlent la manière dont APT
433 invoque
&dpkg; : elles figurent dans la section
<literal>DPkg
</literal>.
436 <varlistentry><term>Options
</term>
438 Il s'agit d'une liste d'options à passer à dpkg. Les options doivent être
439 déclarées en utilisant la notation de liste et chaque élément de liste est
440 passé comme un seul argument à
&dpkg;.
443 <varlistentry><term>Pre-Invoke
</term><term>Post-Invoke
</term>
445 Il s'agit d'une liste de commandes shell à exécuter avant ou après l'appel de
446 &dpkg;. Tout comme pour
<literal>Options
</literal>, on doit utiliser la notation de
447 liste. Les commandes sont appelées dans l'ordre, en utilisant
448 <filename>/bin/sh
</filename> : APT s'arrête dès que l'une d'elles échoue.
451 <varlistentry><term>Pre-Install-Pkgs
</term>
453 Il s'agit d'une liste de commandes shell à exécuter avant d'appeler Dpkg.
454 Tout comme pour
<literal>Options
</literal>, on doit utiliser la notation de liste.
455 Les commandes sont appelées dans l'ordre, en utilisant
456 <filename>/bin/sh
</filename> : APT s'arrête dès que l'une d'elles échoue. Sur
457 l'entrée standard, APT transmet aux commandes les noms de tous les fichiers
458 .deb qu'il va installer, à raison d'un par ligne.
461 La deuxième version de ce protocole donne plus de renseignements
: on
462 obtient la version du protocole, la configuration de APT et les paquets,
463 fichiers ou versions qui ont changé. On autorise cette version en positionnant
464 <literal>DPkg::Tools::Options::cmd::Version
</literal> à
2.
<literal>cmd
</literal> est une
465 commande passée à
<literal>Pre-Install-Pkgs
</literal>.
468 <varlistentry><term>Run-Directory
</term>
470 APT se place dans ce répertoire avant d'appeler Dpkg
; par défaut c'est
471 le répertoire
<filename>/
</filename>.
474 <varlistentry><term>Build-Options
</term>
476 Ces options sont passées à &dpkg-buildpackage; lors de la compilation des
477 paquets
; par défaut la signature est désactivée et tous les binaires sont
484 <refsect1><title>Les options de débogage
</title>
486 La plupart des options de la section
<literal>debug
</literal> n'ont aucun intérêt
487 pour le simple utilisateur
; cependant,
488 <literal>Debug::pkgProblemResolver
</literal> affiche d'intéressantes informations sur
489 les décisions que prend la commande dist-upgrade.
<literal>Debug::NoLocking
</literal>
490 désactive le verrouillage de fichier de manière à ce que APT puisse effectuer
491 quelques opérations sans être «
root
» et
492 <literal>Debug::pkgDPkgPM
</literal> affiche la ligne de commande à chaque appel de
493 Dpkg.
<literal>Debug::IdentCdrom
</literal> désactive l'inclusion de
494 données de type statfs dans les ID de CDROM.
495 <literal>Debug::Acquire::gpgv
</literal> Débogage de la méthode gpgv.
499 <refsect1><title>Exemples
</title>
501 Le fichier
&configureindex; contient un modèle de fichier montrant les valeurs par
502 défaut de toutes les options possibles.
506 <refsect1><title>Fichiers
</title>
507 <para> <filename>/etc/apt/apt.conf
</filename>
510 <refsect1><title>Voir aussi
</title>
512 &apt-cache;, &apt-config;
<!-- ? reading apt.conf -->, &apt-preferences;.
</para>