APT.CONF(5) | APT | APT.CONF(5) |
NOM¶
apt.conf - Fichier de configuration pour APTDESCRIPTION¶
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.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"; }; };
DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
LE GROUPE APT¶
Ce groupe d'options contrôle le comportement global d'APT et contient également des options communes à tous les outils. ArchitectureL'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.
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 », « wheezy »,
« jessie », « 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-UntilL'activation de l'option de sécurité
qui permet de mettre une limite temporelle de validité au fichier Release
permet d'éviter des attaques de type « replay » et
permet d'éviter d'utiliser des miroirs qui ne sont plus à jour.
Cependant, cette fonctionnalité a besoin que l'horloge du système
soit à jour. Les gestionnaires d'archives devraient créer des
fichiers Release comportant l'en-tête Valid-Until. Cependant, si cet
en-tête est absent, la valeur du paramètre Max-ValidTime est alors
utilisée.
Max-ValidTime
Durée maximale (en secondes) pendant
laquelle un fichier Release est considéré comme valable, à
partir du moment de sa création. Si ce fichier lui-même comporte un
en-tête la plus ancienne des deux dates est utilisée comme date
d'expiration. La valeur par défaut (0) signifie « valable
éternellement ». Un réglage spécifique pour une
archive donnée peut être défini en ajoutant l'étiquette de
l'archive au nom de l'option.
Min-ValidTime
Durée minimale (en secondes) pendant
laquelle un fichier Release est considéré comme valable, à
partir du moment de sa création. Il est conseillé d'utiliser ce
réglage si vous utilisez un miroir mis à jour ponctuellement (par
exemple un miroir local) d'une archive mise à jour plus fréquemment
avec un en-tête Valid-Until plutôt que de désactiver
complètement le contrôle des dates d'expiration. Un réglage
spécifique pour une archive donnée peut être défini en
ajoutant l'étiquette de l'archive au nom de l'option.
PDiffs
Essayer de télécharger les fichiers
différentiels appelés PDiffs pour les index (par exemple les
fichiers Packages), plutôt que de les télécharger
entièrement. Par défaut à « true ».
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.
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.
Le réglage Acquire::http::Pipeline-Depth permet d'utiliser
l'enchaînement HTTP (« HTTP pipelining », RFC 2616
section 8.1.2.2) ce qui peut être utile par exemple avec des connexions
à latence élevée. Il indique le nombre de requêtes
envoyées dans le tuyau. Les versions précédentes d'APT
utilisaient une valeur de 10 pour ce réglage. Cette valeur est
désormais égale à 0 (désactivé) pour éviter des
problèmes avec le nombre en constante augmentation de serveurs web et de
mandataires qui ne respectent pas la norme HTTP/1.1.
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. 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..
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
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
dans le bloc cdrom. La barre oblique finale est importante. Les commandes de
démontage peuvent être spécifiées en utilisant
UMount.
gpgv
/cdrom/::Mount "foo";
La seule option pour les URI GPGV est
gpgv::Options, qui permet de passer des paramètres à gpgv
CompressionTypes
Cette option indique la liste des types de
compression comprises par les méthodes d'acquisition. Des fichiers comme
Packages peuvent être disponibles dans divers formats de compression. Par
défaut, les méthodes d'acquisition décompressent les fichiers
compressés avec bzip2, lzma et gzip. Ce réglage
permet d'ajouter à la volée des formats supplémentaires ou de
modifier la méthode utilisée. La syntaxe à utiliser
est :
Le sous-groupe Order peut être également utilisé pour
définir l'ordre dans lequel le système d'acquisition tentera de
télécharger les fichiers compressés. Le premier système
mentionné sera essayé en premier, puis le suivant en cas
d'échec. Ainsi, pour privilégier un format par rapport à un
autre, il suffit de le placer en premier dans cette liste. Les types par
défaut qui ne sont pas déjà indiqués seront ajoutés
implicitement au moment de l'exécution. Ainsi, par exemple,
peut être utiliser de préférence les fichiers compressés
avec gzip par rapport à bzip2 et lzma. Si l'objectif
est d'utiliser lzma en priorité par rapport à gzip et
bzip2, ce réglage doit ressembler à
. Il est inutile d'ajouter explicitement bz2 à liste car il sera
ajouté automatiquement.
Veuillez noter que Dir::Bin:: Methodname sera contrôlé :
si cette option est utilisée, la méthode ne sera utilisée que
si ce fichier existe. Ainsi, pour la méthode bzip2, le réglage
(utilisé en interne) est
. Veuillez également noter que les éléments de liste
indiqués à la ligne de commande seront ajoutés à la fin de
la liste indiquée dans les fichiers de configuration, mais avant les
valeurs par défaut. Dans ce cas, pour établir une
préférence par rapport aux types mentionnés dans les fichiers
de configuration, il est possible de placer l'option directement, pas sous
forme de liste. Cela ne remplacera pas la liste par défaut mais elle sera
simplement préfixée avec l'option en question.
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
Acquire::CompressionTypes:: ExtensionFichier "NomMethode";
Acquire::CompressionTypes::Order:: "gz";
Acquire::CompressionTypes::Order { "lzma"; "gz"; };
Dir::Bin::bzip2 "/bin/bzip2";
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 » and
« 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 ».
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).
Acquire::Languages { "environment"; "fr"; "en"; "none"; "de"; };
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 saisissant un nom vide. 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. L'option de configuration RootDir a une signification particulière. Lorsqu'elle est définie, tous les chemins déclarés dans Dir:: sont considérés relativement à RootDir, même les chemins spécifiés de manière absolue. Ainsi par exemple si RootDir est défini comme /tmp/staging, et que chemin du fichier d'état Dir::State::status est déclaré comme /var/lib/dpkg/status alors ce fichier sera cherché dans /tmp/staging/var/lib/dpkg/status. 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. CleanMode 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 D'APPEL 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. optionsIl 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. Sur l'entrée standard, APT transmet aux commandes
les noms de tous les fichiers .deb qu'il va installer, à raison d'un par
ligne.
La deuxième version de ce protocole donne plus de renseignements : on
obtient la version du protocole, la configuration de APT et les paquets,
fichiers ou versions qui ont changé. On autorise cette version en
positionnant DPkg::Tools::Options::cmd::Version à 2. cmd est une commande
passée à Pre-Install-Pkgs.
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 êtreDPkg::NoTriggers "true"; PackageManager::Configure "smart"; DPkg::ConfigurePending "true"; DPkg::TriggersPending "true";
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.
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.confFichier 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.
VOIR AUSSI¶
BOGUES¶
Page des bogues d'APT[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 <bubulle@debian.org> (2000, 2005, 2009, 2010), Équipe de traduction francophone de Debian <debian-l10n-french@lists.debian.org> Veuillez noter que cette traduction peut contenir des parties non traduites. Cela est volontaire, pour é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 <dburrows@debian.org>Documentation initiale de Debug::*.
NOTES¶
- 1.
- Page des bogues d'APT
09 juin 2012 | APT 0.9.7.9 |