apt.conf(5) Fichier de configuration pour APT

DESCRIPTION

Le fichier apt.conf est le fichier de configuration principal du l'ensemble de programmes APT, mais n'est de loin pas le seul endroit où des choix d'options peuvent être effectués. L'ensemble des outils partagent leur analyse de la ligne de commande, ce qui permet de garantir un environnement d'utilisation uniforme.

Lorsqu'un programme de l'ensemble APT est utilisé, il lit le fichier de configuration dans l'ordre suivant :

1. fichier indiqué par la variable d'environnement APT_CONFIG si elle existe

2. tous les fichiers de Dir::Etc::Parts dans l'ordre alphanumérique ascendant qui ont soit l'extension "conf", soit aucune extension et qui ne contiennent que des caractères alphanumériques, des tirets (-), des caractères de soulignement (_) et des points (.), les autres fichiers étant ignorés. Dans le cas contraire, APT affichera un avertissement indiquant qu'il a ignoré un fichier si celui-ci ne correspond par à un motif défini dans Dir::Ignore-Files-Silently (les fichiers correspondant à cette variable de configuration étant, eux, ignorés silencieusemennt).

3. le fichier de configuration défini par Dir::Etc::Main

4. all options set in the binary specific configuration subtree are moved into the root of the tree.

5. les options de ligne de commande sont appliquées pour remplacer les directives de configuration ou pour charger d'autres fichiers de configuration.

SYNTAXE

Le fichier de configuration est construit comme un arbre d'options organisées en groupes fonctionnels. On se sert du double deux points (« :: ») pour indiquer une option ; par exemple, APT::Get::Assume-Yes est une option pour le groupe d'outils APT, destinée à l'outil Get. Il n'y a pas d'héritage des options des groupes parents.

Syntaxiquement, le langage de configuration est conçu sur le même modèle que les langages utilisés par des outils ISC tels que bind et dhcp. Une ligne qui commence par // est traitée comme un commentaire et ignorée, de même que les sections de texte placées entre /* et */, tout comme les commentaires C/C++. Chaque ligne est de la forme : APT::Get::Assume-Yes "true";. Les guillemets et le point-virgule final sont obligatoire. La valeur doit tenir sur une seule ligne et il n'existe pas de fusion de chaînes. Elle ne doit pas comporter de guillemets et de barre oblique inversée. Le nom d'une option peut contenir des caractères alphanumériques et « /-:._+ ». On peut déclarer un nouveau champ d'action avec des accolades, comme suit :

   
APT {
  Get {
    Assume-Yes "true";
    Fix-Broken "true";
  };
};

avec des retours à la ligne pour faciliter la lecture. On peut créer une liste en ouvrant un champ d'action et en y insérant une chaîne entre guillemets suivie d'un point virgule. Des entrées multiples peuvent être incluses, séparées par des points-virgules.

   
DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};

Les modèles /usr/share/doc/apt/examples/configure-index.gz montrent à quoi devrait ressembler le fichier de configuration.

Les identifiants des options de configuration ne sont pas sensibles à la casse. Dans l'exemple précédent, on pourrait donc aussi bien utiliser dpkg::pre-install-pkgs.

Les noms des éléments de configuration sont optionnels si une liste est définie, comme cela peut se voir avec l'exemple DPkg::Pre-Install-Pkgs précédent. Si vous n'indiquez pas de nom, une nouvelle entrée ajoutera une nouvelle option à la liste. Dans le cas contraire, l'option correspondante peut être remplacée, comme toute autre option, en lui réaffectant une valeur.

Deux éléments spéciaux sont autorisés : #include (qui est obsolète et n'est plus géré par des implémentations alternatives) et #clear. #include inclut le fichier donné en paramètre, à moins que le nom ne se termine par une barre oblique auquel cas le répertoire entier est inclus. #clear sert à effacer une partie de l'arbre de configuration. L'élément désigné et tout ses descendants sont supprimés. Veuillez noter que ces lignes doivent également se terminer avec un point-virgule.

La commande #clear est la seule façon de supprimer une liste ou un champ d'action (« scope »). La réouverture d'un scope ou le style « :: » décrit plus loin ne remplaceront pas les entrées écrites précédemment. Les options ne peuvent être remplacées qu'en leur affectant une nouvelle valeur. Les listes et les champs d'action ne peuvent être remplacés mais seulement effacés.

Tous les outils d'APT possèdent une option -o qui permet de spécifier une configuration quelconque depuis la ligne de commande. La syntaxe consiste en un nom complet d'option (par exemple APT::Get::Assume-Yes) suivi par un signe égal, puis par la nouvelle valeur de l'option. On peut compléter une liste en ajoutant un :: final au nom de la liste. Comme on peut s'en douter, la syntaxe de champ d'action (« scope ») ne peut pas être indiquée à la ligne de commande.

Veuillez noter que vous ne pouvez utiliser :: que pour ajouter un élément par ligne à la liste et que cela ne devrait pas être utilisé en combinaison avec la syntaxe de champ d'action (« scope ») qui inclut implicitement ::. L'utilisation simultanée des deux syntaxes déclenchera un bogue dont certains utilisateurs se servent comme d'une fonctionnalité : une option avec le nom inhabituel « :: » se comportera comme toute autre option nommée. Cela risque d'avoir de nombreux problèmes comme conséquence, par exemple si un utilisateur écrit plusieurs lignes avec cette syntaxe erronée afin de faire un ajout à la liste, l'effet obtenu sera inverse puisque seule la dernière valeur pour l'option « :: » sera utilisée. Les futures versions d'APT retourneront une erreur et l'exécution sera interrompue si cette utilisation incorrecte est rencontrée. Il est donc conseillé de corriger ces défauts tant qu'APT ne s'en plaint pas explicitement.

LE GROUPE APT

Ce groupe d'options contrôle le comportement global d'APT et contient également des options communes à tous les outils.

Architecture

L'architecture du système ; cette option positionne l'architecture à utiliser pour récupérer des fichiers et analyser des listes de paquets. La valeur interne par défaut est l'architecture pour laquelle APT a été compilé.

Architectures

Toutes les architectures gérées par le système. Par exemple, les processeurs qui mettent en oeuvre le jeu d'instructions amd64 (aussi appelé x86-64) peuvent exécuter des binaires compilés pour le jeu d'instructionsi386 (x86). Cette liste est utilisé pour récupérer des fichiers et analyser les listes de paquets. La valeur par défaut initiale est toujours celle de l'architecture native du système (APT::Architecture) et les autres architectures sont ajoutées à la liste par défaut lorsqu'elles sont enregistrées avec dpkg --add-architecture.

Compressor

This scope defines which compression formats are supported, how compression and decompression can be performed if support for this format isn't built into apt directly and a cost-value indicating how costly it is to compress something in this format. As an example the following configuration stanza would allow apt to download and uncompress as well as create and store files with the low-cost .reversed file extension which it will pass to the command rev without additional commandline parameters for compression and uncompression:

Build-Profiles

Liste de tous les profils de construction activés pour la résolution de dépendances de construction, sans le préfixe de l'espace de nommage du "profile.". Par défaut, cette liste est vide. La variable DEB_BUILD_PROFILES comme l'utilise dpkg-buildpackage(1) annule la notation de liste.

Default-Release

Indique la distribution à utiliser par défaut lors de l'installation d'un paquet si plusieurs versions sont disponibles. La valeur peut être un nom de distribution ou un numéro de version. Exemples : « stable », « testing », « jessie », « stretch », « 4.0 », « 5.0* ». Voir aussi apt_preferences(5).

Ignore-Hold

Ignore les paquets « gelés » ; cette option globale indique au système de résolution de ne pas tenir compte des paquets « gelés » dans sa prise de décision.

Clean-Installed

Avec cette option qui est activée par défaut, la fonctionnalité « autoclean » supprime du cache tout paquet qui ne peut plus être récupéré. Quand cette option est désactivée, les paquets qui sont installés localement sont aussi exclus du nettoyage - mais notez que APT ne fournit aucun moyen direct pour les réinstaller.

Immediate-Configure

La valeur par défaut est « on » ce qui a pour conséquence qu'APT installera les paquets essentiels et importants dès que possible pendant les opérations d'installation ou de mise à jour, afin de limiter les conséquences d'un échec de dpkg(1). Si cette option est désactivée, APT traitera les paquets importants comme les paquets de priorité « extra » : entre la décompaction du paquet A et sa configuration, de nombreuses opérations de décompaction ou de configuration peuvent prendre place pour des paquets B ou C qui n'ont rien à voir. Si ces opérations provoquent un échec de dpkg(1) (par exemple si les scripts du responsable du paquet B provoquent une erreur), le résultat est que le paquet A est décompacté mais non configuré. En conséquence, les paquets qui en dépendent pourraient ne plus fonctionner puisque leurs dépendances ne sont pas satisfaites.

Le marqueur de configuration immédiate est également utilisé dans le cas potentiellement délicat de dépendances circulaires, car une dépendance avec le marqueur « immediate » est équivalent à une pré-dépendance. Cela permet en théorie à APT de reconnaître le cas où il ne peut effectuer de configuration immédiate et de s'interrompre pour suggérer de désactiver temporairement l'option pour permettre aux opérations de s'effectuer. Veuillez noter l'utilisation du terme « en théorie » : en réalité, ce problème est rarement rencontré, dans des versions non stables de distributions, et était causé par des dépendances incorrectes ou par un système déjà dans un état instable. Vous ne devriez donc pas désactiver cette option sans savoir ce que vous faites car le scénario ci-dessus n'est le seul qu'elle permet d'éviter.

Avant qu'une opération importante comme dist-upgrade ne soit exécutée avec cette option désactivée, vous devriez essayer d'installer (install) explicitement le paquet qu'APT ne peut pas configurer immédiatement. Ne manquez toutefois pas de signaler le problème dans votre distribution et à l'équipe de maintenance d'APT avec le lien de système de gestion de bogues ci-dessous, afin qu'ils puissent améliorer ou corriger les processus de mise à jour.

Force-LoopBreak

Ne jamais activer cette option à moins que vous ne sachiez réellement ce que vous faites. Elle autorise APT à supprimer temporairement un paquet essentiel pour mettre fin à une boucle Conflicts / Conflicts ou Conflicts / Pre-Depends entre deux paquets essentiels. Une telle boucle ne devrait jamais se produire : c'est un bogue très important. Cette option fonctionne si les paquets essentiels ne sont pas tar, gzip, libc, dpkg, dash ou tous les paquets dont ces paquets dépendent.

Cache-Start, Cache-Grow, Cache-Limit

À partir de la version 0.7.26, APT utilise un fichier de cache de taille variable indexé en mémoire (« resizable memory mapped cache file ») pour conserver les informations du fichier « available ». Cache-Start définit la taille minimale de ce cache et par conséquent la quantité de mémoire qu'APT utilisera dès son lancement. La valeur par défaut est de 20971520 octets (environ 20 Mo). Il est indispensable que l'ensemble de cette mémoire soit disponible, sinon APT ne pourra se lancer. Il peut donc être nécessaire de diminuer cette valeur sur des systèmes disposant de peu de mémoire. Au contraire, pour des systèmes qui utilisent de nombreuses sources de paquet, il peut être nécessaire de l'augmenter. La valeur de Cache-Grow définit, en octets, la quantité de mémoire supplémentaire qui peut être allouée au cache si la valeur définie par Cache-Start est insuffisante. La valeur par défaut de Cache-Grow est de 1048576 octets (environ 1 Mo). Cette augmentation se fera tant que la taille du cache sera insuffisante pour contenir toutes les informations nécessaires ou qu'elle atteint la valeur limite définie par Cache-Limit. La valeur par défaut de Cache-Limit est nulle (il n'existe donc pas de limite à la taille maximale du cache). Si Cache-Grow est égal à 0, l'augmentation automatique de la taille du cache est désactivée.

Build-Essential

Cette option définit les paquets qui sont considérés comme faisant partie des dépendances essentielles pour la construction de paquets.

Get

La sous-section Get contrôle l'outil apt-get(8), veuillez consulter sa documentation pour avoir plus d'informations sur les options en question.

Cache

La sous-section Cache contrôle l'outil apt-cache(8), veuillez consulter sa documentation pour avoir plus d'informations sur les options en question.

CDROM

La sous-section CDROM contrôle l'outil apt-cdrom(8), veuillez consulter sa documentation pour avoir plus d'informations sur les options en question.

LE GROUPE ACQUIRE

Le groupe d'options Acquire contrôle le téléchargement des paquets ainsi que les différentes « méthodes d'acquisition » qui effectuent ce téléchargement (voir aussi sources.list(5)).

Check-Valid-Until

Security related option defaulting to true, as giving a Release file's validation an expiration date prevents replay attacks over a long timescale, and can also for example help users to identify mirrors that are no longer updated - but the feature depends on the correctness of the clock on the user system. Archive maintainers are encouraged to create Release files with the Valid-Until header, but if they don't or a stricter value is desired the Max-ValidTime option below can be used. The Check-Valid-Until option of sources.list(5) entries should be preferred to disable the check selectively instead of using this global override.

Max-ValidTime

Maximum time (in seconds) after its creation (as indicated by the Date header) that the Release file should be considered valid. If the Release file itself includes a Valid-Until header the earlier date of the two is used as the expiration date. The default value is 0 which stands for "valid forever". Archive specific settings can be made by appending the label of the archive to the option name. Preferably, the same can be achieved for specific sources.list(5) entries by using the Valid-Until-Max option there.

Min-ValidTime

Minimum time (in seconds) after its creation (as indicated by the Date header) that the Release file should be considered valid. Use this if you need to use a seldom updated (local) mirror of a more frequently updated archive with a Valid-Until header instead of completely disabling the expiration date checking. Archive specific settings can and should be used by appending the label of the archive to the option name. Preferably, the same can be achieved for specific sources.list(5) entries by using the Valid-Until-Min option there.

PDiffs

Try to download deltas called PDiffs for indexes (like Packages files) instead of downloading whole ones. True by default. Preferably, this can be set for specific sources.list(5) entries or index files by using the PDiffs option there.

Deux sous-options permettant de limiter l'utilisation de fichiers « pdiff » sont également disponibles. FileLimit permet d'indiquer le nombre maximal de fichiers de différences peuvent être téléchargés pour modifier un fichier. SizeLimit permet par ailleurs de limiter la taille combinée des fichiers de différences récupérés à un certain pourcentage du fichier à modifier. Si une de ces limites est dépassée, le fichier complet est téléchargé au lieu de télécharger les fichiers de différences.

By-Hash

Try to download indexes via an URI constructed from a hashsum of the expected file rather than downloaded via a well-known stable filename. True by default, but automatically disabled if the source indicates no support for it. Usage can be forced with the special value "force". Preferably, this can be set for specific sources.list(5) entries or index files by using the By-Hash option there.

Queue-Mode

Mode de file d'attente ; Queue-Mode peut prendre les valeurs host ou access, ce qui détermine comment APT parallélise les connexions sortantes. Host signifie qu'une connexion par cible sera initiée, tandis que access signifie qu'une connexion par type d'URI sera initiée.

Retries

Nombre d'essais à effectuer. Si ce nombre n'est pas nul, APT essaie de récupérer, le nombre donné de fois, les fichiers dont la récupération a échoué.

Source-Symlinks

Utilise des liens symboliques pour les archives de sources. Positionnée à « true », cette option crée si possible des liens symboliques vers les archives de sources au lieu de les copier. Par défaut à « true ».

http

http::Proxy est le mandataire (proxy) HTTP à utiliser par défaut pour les URI HTTP. Il se présente sous la forme standard : http://[[utilisateur][:mot_de_passe]@]hôte[:port]/. On peut spécifier un mandataire particulier par hôte distant en utilisant la syntaxe : http::Proxy::<hôte>. Le mot-clé spécial DIRECT indique alors de n'utiliser aucun mandataire pour l'hôte. Si aucun des paramètres précédents n'est défini, la variable d'environnement http_proxy annule et remplace toutes les options de mandataire HTTP.

Trois options de configuration sont fournies pour le contrôle des caches compatibles avec HTTP/1.1. No-Cache signifie que le mandataire ne doit jamais utiliser les réponses qu'il a stockées ; Max-Age établit l'ancienneté maximale (en secondes) d'un fichier d'index dans le cache du mandataire. No-Store indique que le mandataire ne doit pas mettre en cache les fichiers d'archive, ce qui peut éviter de polluer un cache mandataire avec des fichiers .deb très grands.

L'option timeout positionne le compteur d'expiration du délai (timeout) utilisé par la méthode. Cela s'applique aussi bien à la connexion qu'aux données.

The setting Acquire::http::Pipeline-Depth can be used to enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial e.g. on high-latency connections. It specifies how many requests are sent in a pipeline. APT tries to detect and workaround misbehaving webservers and proxies at runtime, but if you know that yours does not conform to the HTTP/1.1 specification pipelining can be disabled by setting the value to 0. It is enabled by default with the value 10.

Acquire::http::AllowRedirect contrôle le fait qu'APT suive les redirections. Ce réglage est activé par défaut.

La bande passante utilisée peut être limité avec Acquire::http::Dl-Limit qui peut prendre une valeur entière, l'unité utilisée étant le kilo-octet par seconde. La valeur par défaut est 0, ce qui correspond à aucune limitation de bande passante. Veuillez noter que cette option désactive implicitement le téléchargement simultané depuis plusieurs serveurs.

L'option Acquire::http::User-Agent peut être utilisée pour envoyer une valeur User-Agent modifiée pour les téléchargements HTTP, ce qui peut par exemple être utile avec certains mandataires HTTP qui n'autorisent l'accès qu'aux client s'identifiant de manière spécifique..

Acquire::http::Proxy-Auto-Detect can be used to specify an external command to discover the http proxy to use. The first and only parameter is an URI denoting the host to be contacted to allow for host-specific configuration. APT expects the command to output the proxy on stdout as a single line in the style http://proxy:port/ or the word DIRECT if no proxy should be used. No output indicates that the generic proxy settings should be used. Note that auto-detection will not be used for a host if a host-specific proxy configuration is already set via Acquire::http::Proxy::HOST. See the squid-deb-proxy-client(1) package for an example implementation that uses avahi. This option takes precedence over the legacy option name ProxyAutoDetect.

https

Les options Cache-control, Timeout, AllowRedirect, Dl-Limit et proxy fonctionnent pour les URI HTTPS de la même manière que la méthode http. Les valeurs par défaut sont les mêmes si elles ne sont pas indiquées. L'option Pipeline-Depth n'est pas encore gérée.

La sous-option CaInfo spécifie le fichier contenant les informations sur les certificats de confiance. La sous-option booléenne Verify-Peer précise si le certificat d'hôte du serveur doit être confronté aux certificats de confiance ou pas. La sous-option booléenne Verify-Host précise s'il faut vérifier ou pas le nom d'hôte du serveur. SslCert détermine le certificat à utiliser pour l'authentification du client. SslKey détermine quelle clef privée doit être utilisée pour l'authentification du client. SslForceVersion surcharge la valeur par défaut pour la version de SSL à utiliser et peut contenir l'une des chaînes TLSv1 ou SSLv3.

ftp

ftp::Proxy est le mandataire (proxy) FTP à utiliser par défaut pour les URI FTP. Il se présente sous la forme standard : ftp://[[user][:pass]@]host[:port]/. On peut spécifier un mandataire particulier par hôte distant en utilisant la syntaxe : ftp::Proxy::<hôte>. Le mot-clé spécial DIRECT indique alors de n'utiliser aucun mandataire pour l'hôte. Si aucun des paramètres précédents n'est définis, la variable d'environnement ftp_proxy annule et replace toutes les options de mandataire FTP. Pour utiliser un mandataire FTP, vous devrez renseigner l'entrée ftp::ProxyLogin dans le fichier de configuration. Cette entrée spécifie les commandes à envoyer au mandataire pour lui préciser à quoi il doit se connecter. Voyez /usr/share/doc/apt/examples/configure-index.gz pour savoir comment faire. Les variables de substitution qui représentent le composant d'URI correspondant sont : $(PROXY_USER), $(PROXY_PASS), $(SITE_USER), $(SITE_PASS), $(SITE) et $(SITE_PORT).

L'option timeout positionne le compteur d'expiration du délai (timeout) utilisé par la méthode. Cela s'applique aussi bien à la connexion qu'aux données.

Plusieurs options de configuration sont fournies pour contrôler le mode passif. Il est généralement plus sûr d'activer le mode passif et cela marche dans presque tous les environnements. Cependant, certaines situations nécessitent que le mode passif soit désactivé et que le mode « port » de ftp soit utilisé à la place. On peut le faire globalement, pour des connexions qui passent par un mandataire ou pour une machine spécifique (examinez le modèle de fichier de configuration).

Il est possible de faire transiter le trafic FTP par un mandataire HTTP en positionnant la variable d'environnement ftp_proxy à une URL HTTP -- consultez la méthode http ci-dessus pour la syntaxe. On ne peut pas le faire dans le fichier de configuration et il n'est de toute façon pas recommandé d'utiliser FTP au travers de HTTP en raison de la faible efficacité de cette méthode.

L'option ForceExtended contrôle l'utilisation des commandes liées à la RFC 2428, EPSV et EPRT. Par défaut, elle vaut « false » ce qui signifie que ces commandes ne sont utilisées que pour une connexion de type IPv6. Quand elle vaut « true », on les utilise même si la connexion est de type IPv4. La plupart des serveurs FTP ne suivent pas la RFC 2428.

cdrom

La seule option de configuration pour les URI qui utilisent la méthode cdrom est le point de montage : cdrom::Mount ; il doit représenter le point de montage du lecteur de CD-ROM (ou DVD, etc.) indiqué dans /etc/fstab. D'autres commandes de montage et de démontage peuvent être fournies quand le point de montage ne peut être listé dans le fichier /etc/fstab. Syntaxiquement, il faut placer

/cdrom/::Mount "foo";

dans le bloc cdrom. La barre oblique finale est importante. Les commandes de démontage peuvent être spécifiées en utilisant UMount.

gpgv

La seule option pour les URI GPGV est gpgv::Options, qui permet de passer des paramètres à gpgv

CompressionTypes

List of compression types which are understood by the acquire methods. Files like Packages can be available in various compression formats. By default the acquire methods can decompress and recompress many common formats like xz and gzip; with this scope the supported formats can be queried, modified as well as support for more formats added (see also APT::Compressor). The syntax for this is:

Acquire::CompressionTypes::ExtensionFichier "NomMethode";

Also, the Order subgroup can be used to define in which order the acquire system will try to download the compressed files. The acquire system will try the first and proceed with the next compression type in this list on error, so to prefer one over the other type simply add the preferred type first - types not already added will be implicitly appended to the end of the list, so e.g.

Acquire::CompressionTypes::Order:: "gz";

can be used to prefer gzip compressed files over all other compression formats. If xz should be preferred over gzip and bzip2 the configure setting should look like this:

Acquire::CompressionTypes::Order { "xz"; "gz"; };

It is not needed to add bz2 to the list explicitly as it will be added automatically.

Note that the Dir::Bin::Methodname will be checked at run time. If this option has been set and support for this format isn't directly built into apt, the method will only be used if this file exists; e.g. for the bzip2 method (the inbuilt) setting is:

Dir::Bin::bzip2 "/bin/bzip2";

Note also that list entries specified on the command line will be added at the end of the list specified in the configuration files, but before the default entries. To prefer a type in this case over the ones specified in the configuration files you can set the option direct - not in list style. This will not override the defined list; it will only prefix the list with this type.

Le type spécial uncompressed peut servir à donner la préférence aux fichiers non compressés. Veuillez noter que la plupart des archives ne fournissent pas de fichiers non compressés, donc ce réglage est surtout destiné aux miroirs locaux.

GzipIndexes

Lorsque des index compressés par gzip doivent être utilisés (pour les fichiers Packages, Sources, Translations), ceux-ci seront compressés avec gzip au lieu d'être laissés décompressés. Cela peut permettre de gagner beaucoup d'espace disque au prix d'une utilisation plus importante du processeur lorsque les caches locaux sont créés. Valeur par défaut : Faux (« False »).

Languages

La sous-section « Languages » contrôle quels fichiers Translation sont téléchargés et dans quel ordre APT les utilisera pour afficher les traductions de descriptions. APT recherchera d'abord la première traduction disponible pour le champ Description dans la langue choisie en premier. Les langues peuvent être indiquées par leur code long ou court. Veuillez noter que tous les dépôts ne fournissent pas les fichiers Translation pour toutes les langues, les codes longs de langues étant particulièrement rares.

La liste par défaut contient « environment » et « en ». La valeur « environment » a une signification spéciale : elle sera remplacée, à l'exécution, par les codes de langues utilisés dans la variable d'environnement LC_MESSAGES. Les codes utilisés en double ne seront pas inclus deux fois dans la liste. Si LC_MESSAGES contient « C », seul le fichier Translation-en sera utilisé, s'il est disponible. Pour forcer APT à n'utiliser aucun fichier de traduction, il est nécessaire d'utiliser le réglage Acquire::Languages=none. La valeur « none » a une signification spéciale et indique de ne rechercher aucun fichier Translation. Cela indique à APT de télécharger ces traductions, sans nécessairement les utiliser sauf si la variable d'environnement indique ces langues. Ainsi, dans l'exemple qui suit, l'ordre utilisé sera « en, fr » si dans un environnement configuré pour l'anglais et « fr, en » pour un environnement configuré en français. Les fichiers pour l'allemand seront également téléchargés mais ne sont utilisés que dans un environnement configuré pour l'allemand. Dans ce dernier cas, l'ordre est alors « de, fr, en ».

Acquire::Languages { "environment"; "fr"; "en"; "none"; "de"; };

Note : afin d'éviter des problèmes lorsqu'APT est exécuté dans différents environnements (p. ex. par différents utilisateurs ou différents programmes), tous les fichiers « Translation »qui sont trouvés dans /var/lib/apt/lists/ seront ajoutés à la fin de la liste (après un « none » implicite).

ForceIPv4

Utilisation imposée du protocole IPv4 lors des téléchargements.

ForceIPv6

Utilisation imposée du protocole IPv6 lors des téléchargements.

MaxReleaseFileSize

The maximum file size of Release/Release.gpg/InRelease files. The default is 10MB.

EnableSrvRecords

This option controls if apt will use the DNS SRV server record as specified in RFC 2782 to select an alternative server to connect to. The default is "true".

AllowInsecureRepositories

Allow update operations to load data files from repositories without sufficient security information. The default value is "false". Concept, implications as well as alternatives are detailed in apt-secure(8).

AllowWeakRepositories

Allow update operations to load data files from repositories which provide security information, but these are deemed no longer cryptographically strong enough. The default value is "false". Concept, implications as well as alternatives are detailed in apt-secure(8).

AllowDowngradeToInsecureRepositories

Allow that a repository that was previously gpg signed to become unsigned during an update operation. When there is no valid signature for a previously trusted repository apt will refuse the update. This option can be used to override this protection. You almost certainly never want to enable this. The default is false. Concept, implications as well as alternatives are detailed in apt-secure(8).

Changelogs::URI scope

Acquiring changelogs can only be done if an URI is known from where to get them. Preferable the Release file indicates this in a 'Changelogs' field. If this isn't available the Label/Origin field of the Release file is used to check if a Acquire::Changelogs::URI::Label::LABEL or Acquire::Changelogs::URI::Origin::ORIGIN option exists and if so this value is taken. The value in the Release file can be overridden with Acquire::Changelogs::URI::Override::Label::LABEL or Acquire::Changelogs::URI::Override::Origin::ORIGIN. The value should be a normal URI to a text file, except that package specific data is replaced with the placeholder @[email protected] The value for it is: 1. if the package is from a component (e.g. main) this is the first part otherwise it is omitted, 2. the first letter of source package name, except if the source package name starts with 'lib' in which case it will be the first four letters. 3. The complete source package name. 4. the complete name again and 5. the source version. The first (if present), second, third and fourth part are separated by a slash ('/') and between the fourth and fifth part is an underscore ('_'). The special value 'no' is available for this option indicating that this source can't be used to acquire changelog files from. Another source will be tried if available in this case.

BINARY SPECIFIC CONFIGURATION

Especially with the introduction of the apt binary it can be useful to set certain options only for a specific binary as even options which look like they would effect only a certain binary like APT::Get::Show-Versions effect apt-get as well as apt.

Setting an option for a specific binary only can be achieved by setting the option inside the Binary::specific-binary scope. Setting the option APT::Get::Show-Versions for the apt only can e.g. by done by setting Binary::apt::APT::Get::Show-Versions instead.

Note that as seen in the DESCRIPTION section further above you can't set binary-specific options on the commandline itself nor in configuration files loaded via the commandline.

LES RÉPERTOIRES

Les répertoires de la section Dir::State concernent le système local. lists est le répertoire où placer les listes de paquets téléchargés et status est le nom du fichier d'état de dpkg(1). preferences concerne APT : c'est le nom du fichier preferences. Dir::State contient le répertoire par défaut préfixé à tous les sous-éléments, quand ceux-ci ne commencent pas par / ou ./.

Dir::Cache contient les emplacements qui renseignent sur le cache local : par exemple, les deux caches de paquets srcpkgcache et pkgcache, ainsi que l'endroit où sont placées les archives téléchargées, Dir::Cache::archives. On peut empêcher la création des caches en positionnant pkgcache ou srcpkgcache à la valeur "". Cela ralentit le démarrage mais économise de l'espace disque. Il vaut mieux se passer du cache pkgcache plutôt que se passer du cache srcpkgcache. Comme pour Dir::State, le répertoire par défaut est contenu dans Dir::Cache.

Dir::Etc contient l'emplacement des fichiers de configuration, sourcelist indique l'emplacement de la liste de sources et main est le fichier de configuration par défaut (le modifier n'a aucun effet, à moins qu'on ne le modifie avec le fichier de configuration indiqué par la variable APT_CONFIG).

Dir::Parts lit, par ordre d'entrée, tous les fragments de configuration dans le répertoire indiqué. Ensuite, le fichier principal de configuration est chargé.

Les programmes binaires sont pointés par Dir::Bin. L'emplacement des gestionnaires de méthodes est indiqué par Dir::Bin::Methods ; gzip, bzip2, lzma, dpkg, apt-get, dpkg-source, dpkg-buildpackage et apt-cache indiquent l'emplacement des programmes correspondants.

The configuration item RootDir has a special meaning. If set, all paths will be relative to RootDir, even paths that are specified absolutely. So, for instance, if RootDir is set to /tmp/staging and Dir::State::status is set to /var/lib/dpkg/status, then the status file will be looked up in /tmp/staging/var/lib/dpkg/status. If you want to prefix only relative paths, set Dir instead.

La liste Ignore-Files-Silently permet d'indiquer quels sont les fichiers qu'APT peut ignorer sans avertissement dans les répertoires contenant des fragments de configuration. Par défaut, les fichiers qui se terminent par .disabled, ~, .bak ou .dpkg-[a-z]+ sont ignorés. Comme cela est visible dans le dernier élément de cette liste, il est possible d'utiliser la syntaxe des expressions rationnelles.

APT ET DSELECT

Quand APT est utilisé comme une méthode de dselect(1), plusieurs directives contrôlent le comportement par défaut. On les trouve dans la section DSelect.

Clean

Mode de nettoyage du cache ; cette variable peut prendre l'une des valeurs suivantes : « always », « prompt », « auto », « pre-auto » et « never ». « always » et « prompt » suppriment tous les paquets du cache après la mise à niveau ; « prompt » (valeur par défaut) les supprime après une demande et « auto » ne supprime que les archives qui ne peuvent plus être téléchargées (remplacées, par exemple, par une nouvelle version). « pre-auto » les supprime avant de récupérer de nouveaux paquets.

options

Le contenu de cette variable est passé comme options de ligne de commande à apt-get(8) lors de la phase d'installation.

Updateoptions

Le contenu de cette variable est passé comme options de ligne de commande à apt-get(8) lors de la phase de mise à jour.

PromptAfterUpdate

Si cette option est « true », l'opération [U]pdate de dselect(1) interroge toujours l'utilisateur avant de continuer. Par défaut, ce n'est qu'en cas d'erreur que l'on propose à l'utilisateur d'intervenir.

MÉTHODE DAPPEL DE DPKG(1) PAR APT

Plusieurs directives de configuration contrôlent la manière dont APT invoque dpkg(1) : elles figurent dans la section DPkg.

options

Il s'agit d'une liste d'options à passer à dpkg(1). Les options doivent être déclarées en utilisant la notation de liste et chaque élément de la liste est passé comme un seul paramètre à dpkg(1).

Pre-Invoke, Post-Invoke

Il s'agit d'une liste de commandes shell à exécuter avant ou après l'appel de dpkg(1). Tout comme pour Options, on doit utiliser la notation de liste. Les commandes sont appelées dans l'ordre, en utilisant /bin/sh : APT s'arrête dès que l'une d'elles échoue.

Pre-Install-Pkgs

Il s'agit d'une liste de commandes shell à exécuter avant d'appeler dpkg(1). Tout comme pour Options, on doit utiliser la notation de liste. Les commandes sont appelées dans l'ordre, en utilisant /bin/sh : APT s'arrête dès que l'une d'elles échoue. APT transmet aux commandes les noms de tous les fichiers .deb qu'il va installer, à raison d'un par ligne sur le descripteur de fichier demandé, par défaut sur l'entrée standard.

Version 2 of this protocol sends more information through the requested file descriptor: a line with the text VERSION 2, the APT configuration space, and a list of package actions with filename and version information.

Each configuration directive line has the form key=value. Special characters (equal signs, newlines, nonprintable characters, quotation marks, and percent signs in key and newlines, nonprintable characters, and percent signs in value) are %-encoded. Lists are represented by multiple key::=value lines with the same key. The configuration section ends with a blank line.

Package action lines consist of five fields in Version 2: package name (without architecture qualification even if foreign), old version, direction of version change (< for upgrades, > for downgrades, = for no change), new version, action. The version fields are "-" for no version at all (for example when installing a package for the first time; no version is treated as earlier than any real version, so that is an upgrade, indicated as - < 1.23.4). The action field is "**CONFIGURE**" if the package is being configured, "**REMOVE**" if it is being removed, or the filename of a .deb file if it is being unpacked.

In Version 3 after each version field follows the architecture of this version, which is "-" if there is no version, and a field showing the MultiArch type "same", "foreign", "allowed" or "none". Note that "none" is an incorrect typename which is just kept to remain compatible, it should be read as "no" and users are encouraged to support both.

La version du protocole qu'il faut utiliser pour la commande cmd peut être choisie en réglant DPkg::Tools::options::cmd::Version en conséquence, la version par défaut étant la première. Si APT ne gère pas la version demandée, il enverra les informations dans la version la plus haute qu'il gère.

Le descripteur de fichier à utiliser pour l'envoi des informations peut être demandé avec l'option DPkg::Tools::options::cmd::InfoFD qui est par défaut 0 comme entrée standard ; l'option est disponible depuis la version 0.9.11. La prise en charge de l'option peut être détectée en regardant la variable d'environnement APT_HOOK_INFO_FD qui contient comme confirmation le numéro du descripteur de fichier utilisé.

Run-Directory

APT se place dans ce répertoire avant d'appeler dpkg(1) ; par défaut, c'est le répertoire /.

Build-options

Ces options sont passées à dpkg-buildpackage(1) lors de la compilation des paquets ; par défaut la signature est désactivée et tous les binaires sont créés.

utilisation des actions différées (« triggers ») de dpkg (et options associées)

APT peut lancer dpkg(1) pour utiliser les actions différées de manière agressive entre les appels successifs à dpkg(1). Sans options supplémentaires, dpkg(1) utilisera les actions différées une fois à chacune de ses exécutions. Si ces options sont utilisées, le temps d'exécution peut diminuer fortement dans les actions d'installation ou de mise à jour. Il est prévu de les activer par défaut dans le futur mais étant donné qu'elles changent notablement la méthode qu'utilise APT pour lancer dpkg(1), elles ont besoin d'importantes validations. Ces options sont donc expérimentales et ne devraient pas être utilisées avec des environnements de production.. Elles modifient également le suivi de progression et toutes les interfaces passeront la moitié du temps à un état terminé à 100% pendant la configuration des paquets.

Veuillez noter que rien ne garantit qu'APT gérera encore ces options dans le futur ou qu'elles ne provoqueront pas de nombreux dégâts. Si vous avez bien compris les implications de ce choix et êtes suffisamment motivé(e) pour essayer ces options, il vous est donc possible de créer un nouveau fichier de configuration et essayer une combinaison de ces options. Veuillez signaler tout bogue, problèmes ou suggestions d'amélioration en prenant soin de mentionner les options utilisées. Utiliser l'aide apportée par dpkg(1) peut également être utile pour le débogage, par exemple dpkg --audit. Une combinaison intéressante d'options pourrait être

DPkg::NoTriggers "true";
PackageManager::Configure "smart";
DPkg::ConfigurePending "true";
DPkg::TriggersPending "true";

.

DPkg::NoTriggers

Ajoute l'option « no-triggers » à tous les appels à dpkg(1) (hormis l'appel « ConfigurePending »). Voir dpkg(1) pour plus d'informations sur la signification de cette option. En résumé, dpkg(1) n'effectuera pas les actions différées (« triggers ») si cette option est utilisée sauf si cela est demandé explicitement dans une invocation supplémentaire. Cette option existe en fait déjà (mais n'est pas documentée) dans de plus anciennes version d'APT avec une signification légèrement différente : elle n'ajoutait l'option « --no-triggers » qu'aux appels de dpkg(1) avec « configure » alors que cela sera désormais utilisé également avec les appels à dpkg(1) avec les options « unpack » et « remove ».

PackageManager::Configure

Les valeurs possibles sont « all », « smart » et « no ». La valeur par défaut est « all » où APT configure tous les paquets. La valeur « smart » permet de ne configurer que les paquets qui ont besoin de l'être avant la décompaction d'un autre paquet (à cause d'une pré-dépendance) ; les autres configurations sont laissées pour un appel ultérieur à dpkg(1) via un appel créé par l'option ConfigurePending (voir plus loin). L'option « no » ne provoquera aucune configuration et s'en remettra totalement à dpkg(1) pour ces opérations (ce qui échouera en cas de pré-dépendances). Si cette option est définie sur une valeur différente de « all », l'option suivante sera activée par défaut pour éviter de placer le système dans un état non configuré et donc éventuellement non amorçable.

DPkg::ConfigurePending

Si cette option est choisie, APT lancera dpkg --configure --pending pour laisser dpkg(1) gérer les configurations de paquets et les actions différées. Cette option est automatiquement activée si l'option précédente a une valeur différente de « all ». Il peut par contre être utile de la désactiver pour lancer APT plusieurs fois successives, par exemple quand il est utilisé depuis un outil d'installation. Dans ce cas, seul le dernier de tous les appels successifs peut conserver l'option active.

DPkg::TriggersPending

Cette option est utile pour la configuration en mode « smart ». En effet, un paquet qui a des actions différées (« triggers ») en attente n'est pas considéré comme installé (état « installed ») et dpkg(1) le considère actuellement comme simplement décompacté (état « unpacked ») ce qui empêche une gestion correcte des pré-dépendances (voir le bogue Debian #526774). Veuillez noter que cette option provoquera la gestion de toutes les actions différées, pas seulement celles concernant le paquet en cours de traitement.

OrderList::Score::Immediate

Les paquets essentiels (et leurs dépendances) devraient être configurés après avoir été décompressés. Il est conseillé que cette opération ait lieu le plus tôt possible dans le processus de mise à jour car ces opérations de configuration nécessitent également DPkg::TriggersPending, ce qui peut conduire à l'exécution de certains actions différées qui ne sont pas nécessairement utiles. Les paquets essentiels obtiennent par défaut un score élevé mais le marqueur « immédiat » implique un score assez bas (par exemple un paquet qui comporte des prédépendances obtient un score plus élevé). Cette option et les options du même groupe permettent de modifier la façon d'attribuer un score. L'exemple ci-dessous indique ces réglages avec leurs valeurs par défaut.

OrderList::Score {
        Delete 500;
        Essential 200;
        Immediate 10;
        PreDepends 50;
};

OPTIONS « PERIODIC » ET « ARCHIVE »

Les groupes d'options APT::Periodic et APT::Archive configurent les comportements périodiques réalisés par le script /etc/cron.daily/apt, lancé quotidiennement.

LES OPTIONS DE DÉBOGAGE

Les options de la section Debug:: servent soit à provoquer l'affichage d'informations de débogage sur la sortie d'erreur standard du programme qui utilise les librairies APT, soit à activer des modes de fonctionnement spéciaux qui sont principalement utiles pour déboguer le comportement de APT. La plupart de ces options n'ont pas d'intérêt pour un utilisateur normal, mais certaines peuvent tout de même être utiles :

• Debug::pkgProblemResolver affiche d'intéressantes informations sur les décisions prises par les commandes dist-upgrade, upgrade, install, remove et purge.

• Debug::NoLocking désactive le verrouillage de fichier de manière à ce qu'APT puisse effectuer quelques opérations (telles que apt-get -s install) sans avoir les privilèges du superutilisateur.

• Debug::pkgDPkgPM affiche la ligne de commande à chaque appel de dpkg(1).

Debug::IdentCdrom désactive l'inclusion de données de type statfs dans les identifiants de CD.

Liste complète des options de débogage de APT :

Debug::Acquire::cdrom

Affiche les informations concernant les sources de type cdrom://

Debug::Acquire::ftp

Affiche les informations concernant le téléchargement de paquets par FTP.

Debug::Acquire::http

Affiche les informations concernant le téléchargement de paquets par HTTP.

Debug::Acquire::https

Print information related to downloading packages using HTTPS.

Debug::Acquire::gpgv

Affiche les informations relatives à la vérification de signatures cryptographiques avec gpg.

Debug::aptcdrom

Affiche des informations concernant l'accès aux collections de paquets stockées sur CD.

Debug::BuildDeps

Décrit le processus de résolution des dépendances pour la construction de paquets source ( « build-dependencies » ) par apt-get(8).

Debug::Hashes

Affiche toutes les clefs de hachage cryptographiques créées par les librairies d'apt.

Debug::IdentCDROM

Désactive l'inclusion des données de type statfs pour la génération des identifiants de CD, c'est-à-dire le nombre de blocs libres et utilisés sur le système de fichier du CD.

Debug::NoLocking

Désactive le verrouillage de fichiers. Cela permet par exemple de lancer deux instances de « apt-get update » en même temps.

Debug::pkgAcquire

Trace les ajouts et suppressions d'éléments de la queue globale de téléchargement.

Debug::pkgAcquire::Auth

Affiche les détails de la vérification des sommes de contrôle et des signatures cryptographiques des fichiers téléchargés, ainsi que les erreurs éventuelles.

Debug::pkgAcquire::Diffs

Affiche les informations de téléchargement et de prise en compte des fichiers différentiels des indexes de paquets, ainsi que les erreurs éventuelles.

Debug::pkgAcquire::RRed

Affiche les détails de l'application des fichiers de différences aux listes de paquets d'APT quand ces fichiers de différences sont téléchargés à la place des fichiers complets.

Debug::pkgAcquire::Worker

Affiche toutes les interactions avec les processus enfants qui se chargent effectivement des téléchargements.

Debug::pkgAutoRemove

Affiche les changements concernant le marquage des paquets comme installés automatiquement, et la suppression des paquets inutiles.

Debug::pkgDepCache::AutoInstall

Crée les informations de débogage décrivant quels paquets sont installés automatiquement pour satisfaire les dépendances. Cela concerne la passe initiale d'installation automatique effectuée par exemple par apt-get install et pas le système de résolution de dépendances complet de APT ; voir Debug::pkgProblemResolver pour ce dernier.

Debug::pkgDepCache::Marker

Crée les informations de débogage décrivant quels paquets sont gardés/installés/supprimés pendant le travail de l'outil de résolution de problèmes. Chaque ajout ou suppression peut impliquer des actions supplémentaires ; elles sont alors indiquées avec une indentation de deux espaces de plus que l'action qui les a déclenchées. Le format de chaque ligne est MarkKeep, MarkDelete ou MarkInstall suivi de nom-paquet <a.b.c -> d.e.f | x.y.z> (section) où a.b.c est la version actuelle du paquet, d.e.f la version devant être installée et x.y.z une version plus récente qui n'est pas prévue pour être installée (à cause d'un score plus faible). Ces deux derniers éléments peuvent ne pas être mentionnés s'ils ne sont pas pertinents où lorsque ils sont identiques à la version installée. section est le nom de la section où figure le paquet.automatiquement pour satisfaire les dépendances. Cela concerne la passe initiale d'installation automatique effectuée par exemple par apt-get install et pas le système de résolution de dépendances complet de APT ; voir Debug::pkgProblemResolver pour ce dernier.

Debug::pkgDPkgPM

Affiche la commande exacte d'invocation de dpkg(1) à chaque appel ; les paramètres sont séparés par des espaces.

Debug::pkgDPkgProgressReporting

Affiche l'ensemble des informations reçues de dpkg(1) par l'intermédiaire du descripteur de fichier d'état, et les éventuelles erreurs d'analyse de ce fichier.

Debug::pkgOrderList

Affiche les étapes de l'algorithme utilisé pour choisir l'ordre dans lequel apt passe les paquets à dpkg(1).

Debug::pkgPackageManager

Affiche le détail des opérations liées à l'invocation de dpkg(1).

Debug::pkgPolicy

Affiche, au lancement, la priorité de chaque liste de paquets.

Debug::pkgProblemResolver

Affiche la trace d'exécution du système de résolution de dépendances (ne concerne que les cas où un problème de dépendances complexe se présente).

Debug::pkgProblemResolver::ShowScores

Affiche la liste de tous les paquets installés avec leur score calculé par l'outil de résolution de problèmes. La description du paquet est celle qui est décrite dans Debug::pkgDepCache::Marker.

Debug::sourceList

Affiche les fournisseurs déclarés dans le fichier /etc/apt/vendors.list.

Debug::RunScripts

Affiche les commandes externes qui sont appelés par le point d'entrée apt. Cela inclut par exemple les options de configuration DPkg::{Pre,Post}-Invoke ou APT::Update::{Pre,Post}-Invoke.

EXEMPLES

Le fichier /usr/share/doc/apt/examples/configure-index.gz contient un modèle de fichier montrant des exemples pour toutes les options existantes.

FICHIERS

/etc/apt/apt.conf

Fichier de configuration d'APT. Élément de configuration : Dir::Etc::Main.

/etc/apt/apt.conf.d/

Fragments du fichier de configuration d'APT. Élément de configuration : Dir::Etc::Parts.

BOGUES

m[blue]Page des bogues d'APTm[][1]. Si vous souhaitez signaler un bogue à propos d'APT, veuillez lire /usr/share/doc/debian/bug-reporting.txt ou utiliser la commande reportbug(1).

TRADUCTEURS

Jérôme Marant, Philippe Batailler, Christian Perrier <[email protected]> (2000, 2005, 2009, 2010), Équipe de traduction francophone de Debian <[email protected]>

Veuillez noter que cette traduction peut contenir des parties non traduites. Cela est volontaire, pour éviter de perdre du contenu quand la traduction est légèrement en retard sur le contenu d'origine.

AUTEURS

Jason Gunthorpe

Équipe de développement d'APT

Daniel Burrows <[email protected]>

Documentation initiale de Debug::*.

NOTES

1.
Page des bogues d'APT
http://bugs.debian.org/src:apt