dpkg(1) un gestionnaire de paquet pour Debian

SYNOPSIS

dpkg [option...] action

AVERTISSEMENT

Ce manuel est destiné aux utilisateurs qui souhaitent aller au-delà de la commande dpkg --help pour la compréhension des options de la ligne de commande et des états des paquets.

Les responsables de paquet qui veulent comprendre comment dpkg installe leur paquet ne doivent pas l'utiliser. Les descriptions concernant l'installation ou la désinstallation des paquets sont très insuffisantes.

DESCRIPTION

dpkg est un outil pour l'installation, la création, la suppression et la gestion des paquets Debian. aptitude(1) est la principale interface à dpkg et la plus agréable pour l'utilisateur. dpkg lui-même est entièrement contrôlé par des paramètres sur la ligne de commande. Une commande comporte exactement une action et zéro ou plusieurs options. Le paramètre « action » dit ce que dpkg doit faire et les options modifient l'action d'une manière ou d'une autre.

dpkg peut également être utilisé en interface pour dpkg-deb(1) et dpkg-query(1). La liste des actions gérées est indiquée dans la section ACTIONS. Si cette section est présente, dpkg n'exécute dpkg-deb ou dpkg-query avec les paramètres qui lui sont passés, mais aucune action spécifique ne leur est communiquée. Pour utiliser cela, il est nécessaire d'appeler le programme directement.

RENSEIGNEMENTS SUR LES PAQUETS

dpkg conserve des renseignements utiles sur les paquets disponibles. Cette information est divisée en trois classes : les états, les états de la sélection et les drapeaux. La modification de ces valeurs est principalement dévolue à dselect.

ÉTATS DES PAQUETS

not-installed
Le paquet n'est pas installé sur le système.
config-files
Seuls les fichiers de configuration du paquet existent sur le système.
half-installed
L'installation du paquet a commencé mais, pour une raison quelconque, ne s'est pas terminée.
unpacked
Le paquet est dépaqueté mais n'est pas configuré.
half-configured
Le paquet est dépaqueté et la configuration a commencé mais, pour une quelconque raison, ne s'est pas terminée.
triggers-awaited
Le paquet attend l'exécution d'une action différée qui est à la charge d'un autre paquet.
triggers-pending
Une action différée de ce paquet a été activée, il reste à l'exécuter.
installed
Le paquet est dépaqueté et correctement configuré.

ÉTATS DE LA SÉLECTION DES PAQUETS

install
Le paquet est sélectionné pour être installé.
hold
dpkg laisse de côté un paquet marqué hold, à moins qu'il ne soit lancé avec l'option de forçage --force-hold.
deinstall
Le paquet est sélectionné pour être désinstallé (c.-à-d. qu'on veut supprimer tous les fichiers à l'exception des fichiers de configuration).
purge
Le paquet est sélectionné pour être purgé (c.-à-d. qu'on veut tout supprimer dans les répertoire du système, même les fichiers de configuration).

DRAPEAUX DES PAQUETS

reinst-required
Un paquet marqué reinst-required est défectueux et demande une réinstallation. dpkg ne peut supprimer de tels paquets, à moins qu'il ne soit lancé avec l'option de forçage --force-remove-reinstreq.

ACTIONS

-i, --install fichier-paquet...
Installe le paquet. Si l'option --recursive ou -R est utilisée, fichier-paquet doit alors être un répertoire.

L'installation comporte les étapes suivantes :

1. Extraction des fichiers de contrôle du nouveau paquet.

2. Quand une ancienne version du même paquet est déjà installée, exécution du script prerm de l'ancien paquet.

3. Lancement du script preinst, s'il est fourni par le paquet.

4. Dépaquetage des nouveaux fichiers et, en même temps, sauvegarde des anciens de manière à pouvoir les restaurer si quelque chose tourne mal.

5. Quand une ancienne version du même paquet est déjà installée, exécution du script postrm de l'ancien paquet. Il faut remarquer que ce script est exécuté après le script preinst du nouveau paquet, parce que les nouveaux fichiers sont écrits dans le même temps que les anciens sont supprimés.

6. Configuration du paquet. Voyez l'action --configure pour savoir comment cela se passe.

--unpack fichier-paquet...
Dépaquète le paquet mais ne configure rien. Si l'option --recursive ou -R est utilisée, fichier-paquet doit alors indiquer un répertoire.
--configure paquet...|-a|--pending
Reconfiguration d'un paquet dépaqueté mais non encore configuré. Si l'option -a ou --pending est utilisée au lieu de paquet, tous les paquets dépaquetés mais non configurés sont configurés.

Pour reconfigurer un paquet qui l'a déjà été, vous devriez plutôt utiliser la commande dpkg-reconfigure(8).

La configuration comporte les étapes suivantes :

1. Dépaquetage des fichiers de configuration, et dans le même temps sauvegarde des anciens fichiers de configuration, de manière à pouvoir les restaurer si quelque chose se passe mal.

2. Exécution du script postinst, s'il est fourni par le paquet.

--triggers-only paquet ...|-a | --pending
N'exécute que les actions différées. Toutes les actions différées en attente seront traitées. Si des noms des paquets sont fournis, les actions différées de ces paquets seront traitées, une fois chacune lorsque nécessaire. L'utilisation de cette option peut laisser des paquets dans les états incorrects de triggers-awaited et de triggers-pending. Cela peut être corrigé plus tard en exécutant : dpkg --configure --pending.
-r, --remove, -P, --purge paquet...|-a|--pending
Supprime un paquet installé. L'action -r ou --remove supprime tout sauf les fichiers de configuration. Cela peut éviter la reconfiguration du paquet lors d'une réinstallation. Les fichiers de configuration sont les fichiers répertoriés dans le fichier de contrôle debian/conffiles. L'option -P ou --purge supprime tout, y compris les fichiers de configuration. Si l'on donne l'option -a ou --pending à la place d'un nom de paquet, tous les paquets non dépaquetés, mais qui sont marqués comme devant être supprimés ou purgés dans le fichier /var/lib/dpkg/status, sont respectivement supprimés ou purgés. Note : certains fichiers de configuration peuvent être inconnus de dpkg car ils sont créés et gérés à part, via les scripts de configuration. Dans ce cas, dpkg ne les supprimera pas lui-même et le script postrm du paquet (qui est appelé par dpkg) doit s'occuper de leur suppression. Bien entendu, cela ne s'applique qu'aux fichiers situés dans les répertoires du système, pas à ceux existant dans les répertoires personnels des utilisateurs.

La suppression d'un paquet comporte les étapes suivantes :

1. Lancement du script prerm

2. Suppression des fichiers installés

3. lancement du script postrm

--update-avail, --merge-avail fichier-Paquets
Met à jour l'information de dpkg et de dselect sur les paquets disponibles. L'action --merge-avail combine les informations anciennes avec celles qui proviennent du fichier fichier-Packages. L'action --update-avail remplace les informations anciennes par celles qui proviennent du fichier fichier-Packages. Le fichier fichier-Packages distribué avec Debian est appelé simplement Packages. dpkg garde son propre enregistrement des paquets disponibles dans /var/lib/dpkg/available.

Une simple commande permettant de récupérer et mettre à jour le fichier available est dselect update. Veuillez noter que ce fichier est à peu près inutile si vous n'utilisez pas dselect mais une interface basée sur APT. APT contient en effet son propre mécanisme pour suivre les paquets disponibles.

-A, --record-avail fichier_paquet...
Met à jour l'information de dpkg et de dselect sur les paquets disponibles avec les informations qui proviennent de fichier-paquet. Si l'option --recursive ou -R est utilisée, fichier-paquet doit indiquer un répertoire.
--forget-old-unavail
Désormais obsolète et sans effet car dpkg oublie automatiquement les paquets désinstallés qui ne sont pas disponibles.
--clear-avail
Efface les renseignements existants sur les paquets disponibles.
-C, --audit
Recherche les paquets qui n'ont été que partiellement installés sur le système. dpkg suggère une manière de les faire fonctionner.
--get-selections [motif-nom-paquet...]
Obtient la liste des sélections des paquets, et l'envoie sur la sortie standard. Sans un motif, les paquets non installés (c'est-à-dire ceux qui ont été précédemment purgés) ne seront pas affichés.
--set-selections
Modifie la liste des sélections des paquets en lisant un fichier sur l'entrée standard. Le format de ce fichier doit être de la forme « paquet état », où état vaut install, hold, deinstall ou purge. Les lignes vides ou les lignes de commentaires débutant par « # » sont autorisées.

The available database needs to be up-to-date for this command to be useful, otherwise unknown packages will be ignored with a warning. See the --update-avail and --merge-avail commands for more information.

--clear-selections
Met l'état de chaque paquet non essentiel à « deinstall ». Il faut utiliser cette option juste avant --set-selections, pour désinstaller les paquets qui ne sont pas affichés par --set-selections.
--yet-to-unpack
Recherche les paquets qui ont été sélectionnés pour l'installation, mais qui pour une raison quelconque, ne sont pas encore installés.
--add-architecture architecture
Ajoute architecture à la liste d'architectures pour lesquelles les paquets peuvent être installés sans utiliser --force-architecture. L'architecture pour laquelle dpkg est compilé (c'est-à-dire ce qu'affiche --print-architecture) est toujours incluse dans cette liste.
--remove-architecture architecture
Retire architecture de la liste d'architectures pour lesquelles les paquets peuvent être installés sans utiliser --force-architecture. Si cette architecture est actuellement utilisée dans la base de données, cette opération sera rejetée, sauf si --force-architecture est utilisé. L'architecture pour laquelle dpkg est compilé (c'est-à-dire ce qu'affiche --print-architecture) ne peut jamais être retirée de cette liste.
--print-architecture
Affiche l'architecture des paquets installés (par exemple, « i386 »).
--print-foreign-architectures
Affiche la liste, à raison d'une par ligne, des architectures pour lesquelles dpkg est autorisé à installer des paquets.
--compare-versions ver1 op ver2
Compare des numéros de version, où op est un opérateur binaire. dpkg retourne un zéro si la condition spécifiée est vérifiée, et retourne un nombre différent de zéro dans le cas contraire. Il y a deux groupes d'opérateurs ; ils diffèrent par leur façon de traiter l'absence de ver1 ou de ver2. Pour les opérateurs suivants, lt le eq ne ge gt, l'absence d'une version est considérée comme inférieure à toute version ; pour les opérateurs lt-nl le-nl ge-nl gt-nl, l'absence d'une version est considérée comme supérieure à toute version. Les opérateurs < << <= = >= >> > ne sont fournis que pour la compatibilité avec la syntaxe du fichier de contrôle.
-?, --help
Affiche un court message d'aide.
--force-help
Donne des renseignements sur les options --force-quelque-chose.
-Dh, --debug=help
Donne des renseignements sur les options de débogage.
--version
Affiche la version de dpkg.
dpkg-deb actions
Voyez dpkg-deb(1) pour des renseignements supplémentaires sur les actions suivantes.

-b, --build répertoire [archive|répertoire]
    Construit un paquet deb.
-c, --contents archive
    Liste le contenu d'un paquet deb.
-e, --control nom-de-fichier [répertoire]
    Extrait les informations de contrôle d'un paquet.
-x, --extract répertoire de l'archive
    Extrait et affiche les fichiers contenus dans un paquet.
-f, --field nom-de-fichier [champ de contrôle] ...
    Affiche le(s) champ(s) de contrôle d'un paquet.
--fsys-tarfile archive
    Affiche le contenu du fichier « tar » d'un paquet Debian.
-I, --info nom-de-fichier [fichier de contrôle]
    Affiche des renseignements sur un paquet.

dpkg-query actions
Voyez dpkg-query(1) pour davantage d'explications sur les actions suivantes.


-l, --list motif-du-nom-du-paquet ...
    Affiche la liste des paquets qui correspondent au motif.
-s, --status nom-du-paquet ...
    Donne l'état du paquet indiqué.
-L, --listfiles nom-paquet ...
    Affiche la liste des fichiers installés qui appartiennent
    à paquet.
-S, --search motif-du-fichier-à-rechercher ...
    Recherche un fichier dans les paquets installés.
-p, --print-avail nom-du-paquet
    Affiche les informations trouvées dans /var/lib/dpkg/available
    à propos de paquet. Les utilisateurs des interfaces à APT
    devraient plutôt utiliser apt-cache show nom-du-paquet.

OPTIONS

On peut spécifier une option à la fois sur la ligne de commande, dans le fichier de configuration de dpkg, /etc/dpkg/dpkg.cfg ou dans les fichiers du répertoire de configuration /etc/dpkg/dpkg.cfg.d/ (avec un nom qui respecte le motif '[0-9a-zA-Z_-]*')). Chaque ligne de ce fichier est soit une option (identique à une option en ligne de commande mais sans tiret), soit un commentaire, commençant par #.
--abort-after=nombre
Modifie le nombre d'erreurs au delà duquel dpkg s'arrête. Il est par défaut égal à 50.
-B, --auto-deconfigure
Quand un paquet est supprimé, il peut arriver qu'un paquet installé dépendait du paquet supprimé. En spécifiant cette option, on obtient la déconfiguration automatique du paquet qui dépendait du paquet supprimé.
-Doctal, --debug=octal
Demande de débogage. octal est formé en faisant un « ou » logique entre des valeurs souhaitées appartenant à la liste ci-dessous (notez que ces valeurs pourront changer dans les prochaines versions). -Dh ou --debug=help affiche ces valeurs de débogage.


 nombre  description
    1   Informations de progression
        en général utiles
    2   Appel et état des scripts du responsable
   10   Affichage pour chaque fichier traité
  100   De nombreux affichages pour chaque fichier
        traité
   20   Affichage pour chaque fichier de configuration
  200   De nombreux affichages pour chaque fichier
        de configuration
   40   Dépendances et conflits
  400   De nombreuses sorties pour les dépendances
        et les conflits 10000 Sortie sur l'activation et le traitement des actions différées 20000 De nombreuses sorties sur les actions différées 40000 Quantité stupide de sorties sur les actions différées
 1000   Beaucoup de radotage à ppropos du répertoire
        dpkg/info
 2000   Quantité stupide de radotage

--force-quelque-chose, --no-force-quelque-chose, --refuse-quelque-chose

Forcer ou refuser (no-force et refuse signifient la même chose) de faire quelque chose. quelque-chose est une liste d'actions séparées par des virgules, décrites ci-après. --force-help affiche un message qui les décrit. Les actions marquées d'un (*) sont forcées par défaut.

Avertissement : Ces options sont principalement destinées aux experts. Un usage auquel manque la pleine compréhension de leurs effets peut casser le système entier.

all : Met en ?uvre (ou pas) toutes les options de forçage.

downgrade(*) : Installe un paquet, même si une version plus récente du paquet est déjà installée.

Avertissement : Pour l'instant, dpkg ne recherche pas les dépendances lors d'un retour à une version inférieure d'un paquet ; il ne vous préviendra pas si la version choisie casse les dépendances d'un autre paquet. Cela peut avoir de sérieuses conséquences ; et si l'on revient à des versions antérieures des programmes essentiels du système, cela peut rendre votre système inutilisable. N'utiliser qu'avec précaution.

configure-any : Configure aussi les paquets dépaquetés mais non configurés dont dépend le paquet en question.

hold : Traite même les paquets marqués « à garder » (« hold »).

remove-reinstreq : Supprime un paquet, même défectueux et marqué comme demandant une réinstallation. Il se peut, dès lors, que des éléments du paquet restent dans le système et soient oubliés par dpkg.

remove-essential : supprime un paquet même s'il est considéré comme indispensable. Les paquets « Essential » comportent les commandes Unix les plus fondamentales et les enlever peut casser le système entier. Il faut utiliser cette option avec prudence.

depends : Change tous les problèmes de dépendance en avertissements.

depends-version : Ignore les versions dans les questions de dépendance.

breaks : Force l'installation, même si cela risque de casser un autre paquet.

conflicts : Installe un paquet, même s'il est en conflit avec un autre paquet. C'est dangereux car habituellement cela produit le remplacement de certains fichiers.

confmiss : si un fichier de configuration est manquant et que la version du paquet change, toujours l'installer. Cette opération est dangereuse, puisque les changements apportés au fichier ne seront pas préservés (suppression).

confnew : quand un fichier de configuration a été modifié et que la version dans le paquet a changé, toujours installer la nouvelle version et ne rien demander, sauf si l'option --force-confdef est aussi présente, auquel cas l'action par défaut est choisie.

confold : quand un fichier de configuration a été modifié et que la version du paquet a changé, garder l'ancienne version et ne rien demander, sauf si l'option --force-confdef est aussi présente, auquel cas l'action par défaut est choisie.

confdef : quand un fichier de configuration a été modifié et que la version du paquet a changé, utilise toujours l'action par défaut, de manière non interactive. Quand il n'y a pas d'action par défaut, la commande s'arrête et interroge l'utilisateur, à moins que l'option --force-confnew ou l'option --force-confold n'ait été donnée, auquel cas elle se sert de ces options pour déterminer ce qu'il faut faire.

confask : Si un fichier de configuration a été modifié, propose de le remplacer avec la version du paquet, même si celle-ci n'a pas changé. Si l'une des options --force-confmiss, --force-confnew, --force-confold, ou --force-confdef est également mentionnée, elle déterminera l'action finalement utilisée.

overwrite : Remplace un fichier par un fichier d'un autre paquet.

overwrite-dir : Remplace un répertoire par un répertoire d'un autre paquet.

overwrite-diverted : Remplace un fichier détourné avec une version non détournée.

unsafe-io : Ne pas effectuer d'action d'entrée/sortie non sûre lors de la décompression. Cela implique actuellement de ne pas synchroniser le système de fichiers avant le renommage de fichiers, ce qui est une cause connue de dégradation des performances sur certains systèmes, en général ceux qui, peu fiables, ont besoin d'actions sûres pour éviter de terminer avec des fichiers de taille vide en cas d'interruption inopinée.

Note: Pour ext4, le principal concerné, il est suggéré de plutôt utiliser l'option de montage nodelalloc, qui corrigera à la fois la dégradation des performances et les problèmes de sécurité des données. Elle permet notamment d'éviter de terminer avec des fichiers vides lors des arrêts brutaux pour tout logiciel qui ne synchronise pas le système de fichiers avant chaque renommage.

Avertissement : L'utilisation de cette option peut améliorer la performance mais augmente le risque de perte de données. Elle est donc à utiliser avec précautions.

architecture : Traite même les paquets sans architecture ou avec une architecture incorrecte.

bad-version : Traite même les paquets dont la version est incorrecte

bad-path : Programmes importants non visibles par la variable PATH, ce qui va poser des problèmes.

not-root : Tente de (dés)installer même sans être root.

bad-verify : Installe un paquet même si la vérification de son authenticité a échoué.

--ignore-depends=paquet,...
Ne tient pas compte de la vérification des dépendances pour les paquets spécifiés (en fait, la vérification est faite mais on ne donne rien d'autre que des avertissements).
--no-act, --dry-run, --simulate
Faire tout ce qui doit être fait, mais n'écrire aucune modification. On utilise cette option pour voir ce qui se passe sans modifier quoi que ce soit.

Assurez-vous de donner l'option --no-act avant le paramètre action, sinon des résultats fâcheux sont probables. Par exemple, la commande dpkg --purge foo --no-act purge d'abord le paquet foo et essaie ensuite de purger le paquet --no-act, même si vous comptiez qu'elle ne ferait rien du tout.

-R, --recursive
Traite récursivement tous les simples fichiers qui correspondent au motif *.deb et qui se trouvent dans les répertoires et sous-répertoires spécifiés. On peut utiliser cette option avec les actions -i, -A, --install, --unpack et --avail.
-G
Ne pas installer un paquet si une version plus récente de ce paquet est déjà installée. C'est un alias pour --refuse-downgrade.
--admindir=dir
Modifie le répertoire d'administration par défaut, qui contient de nombreux fichiers donnant des informations au sujet de l'état des paquets installés ou non, etc. (Le répertoire par défaut étant /var/lib/dpkg)
--instdir=repertoire
Change le répertoire d'installation par défaut qui indique où les paquets vont être installés. instdir est aussi le nom du répertoire indiqué à chroot(2) avant que ne soient lancés les scripts d'installation, ce qui signifie que ces scripts voient instdir comme répertoire racine. (Le répertoire par défaut est /).
--root=répertoire
Modifier root change instdir par répertoire et admindir par dir/var/lib/dpkg.
-O, --selected-only
Traiter seulement les paquets qui sont sélectionnés pour l'installation. La sélection est réellement faite par dselect ou par dpkg quand ils manipulent les paquets. Par exemple, quand un paquet est supprimé, il est marqué comme ayant été sélectionné pour une désinstallation.
-E, --skip-same-version
Ne pas installer le paquet si la même version du paquet est déjà installée.

--pre-invoke=commande
--post-invoke=commande

Programme l'exécution de commande via « sh -c » avant ou après l'exécution de dpkg pour les actions unpack, configure, install, triggers-only, remove et purge. Cette option peut être utilisée plusieurs fois. L'ordre dans lequel les options multiples sont indiquées sera préservé et celles indiquées dans le fichier de configuration auront la priorité. La variable d'environnement DPKG_HOOK_ACTION est utilisée pour indiquer aux scripts utilisés quelle est l'action actuelle de dpkg. Note : les interfaces de dpkg peuvent l'appeler plusieurs fois à chaque invocation, ce qui peut provoquer l'exécution des « hooks » plus souvent que prévu.

--path-exclude=motif-global
--path-include=motif-global

Utilise motif-global comme filtre de chemins, soit en excluant, soit en ré-incluant des chemins précédemment exclus, correspondant au motif indiqué, pendant l'installation.

Attention : dépendre des chemins exclus peut entièrement casser le système. Ce réglage soit donc être utilisé avec précautions.

Les motifs globaux utilisent les mêmes caractères joker que le shell où « * » correspond à une séquence quelconque de caractères, y compris une chaîne vide ou le caractère « / ». Ainsi, '/usr/*/READ*' comportera '/usr/share/doc/package/README'. Comme toujours, le caractère « ? » correspond à un caractère quelconque (y compris « / »). Le caractère « [ » marque le début d'une classe de caractères, qui contient une liste de caractères, séries de caractères ou compléments de séries. Veuillez consulter glob(7) pour plus d'informations à propos des correspondances globales. Note : l'implémentation actuelle pourrait ré-inclure plus de répertoires et liens symboliques que nécessaire, par souci de sécurité et pour éviter des éches possibles de décompression. Des modifications à venir pourraient changer cela.

Cela peut servir à exclure tous les chemins sauf certains spécifiques. Un cas classique d'utilisation est :

--path-exclude=/usr/share/doc/*
--path-include=/usr/share/doc/*/copyright

qui permet de supprimer tous les fichiers de documentation sauf les fichiers de « copyright ».

Ces deux options peuvent être utilisées plusieurs fois et éventuellement être alternées entre elles. Les deux sont traitées dans l'ordre indiqué : la dernière règle correspondant à un fichier donné est alors celle qui sera utilisée.

--status-fd n
Envoie un état du paquet compréhensible par la machine et met à jour cette information dans le fichier de description n. Cette option peut être spécifiée plusieurs fois. L'information est généralement constituée d'un enregistrement par ligne, dans l'une des formes suivantes :
status: paquet: status
L'état du paquet a changé ; le status est tel que dans le fichier d'état ( «status file »).
status: paquet : error : message-d'erreur-complet
Une erreur s'est produite. Toutes les lignes supplémentaires éventuelles dans extended-error-message seront converties en espaces avant affichage.
status: fichier : conffile-prompt : 'real-old' 'real-new' useredited distedited
Une question pour un fichier de configuration va être posée à l'utilisateur.
processing: stage: paquet
Envoyé juste avant le début du traitement d'un stage. Les stages sont upgrade, install (les deux sont envoyés avant le dépaquetage), configure, trigproc, disappear, remove, purge.
--status-logger=commande
Envoie un état du paquet compréhensible par la machine et met à jour l'information de progression sur l'entrée standard du processeur de commandes command. Cette option peut être spécifiée plusieurs fois. Le format d'affichage utilisé est le même que celui de --status-fd.
--log=fichier
Enregistre la modification de l'état et les actions sur fichier au lieu de l'habituel /var/log/dpkg.log. Si cette option est donnée plusieurs fois, le dernier fichier est utilisé. Les messages d'enregistrement sont de la forme « AAAA-MM-JJ HH:MM:SS status état paquet version-installée » pour les modifications d'état. Pour une action où action est install, upgrade, remove ou purge, le message est de la forme « AAAA-MM-JJ HH:MM:SS action paquet version-installée version-disponible ». Pour une modification de fichier de configuration, le message est de la forme « AAAA-MM-JJ HH:MM:SS conffile fichier décision » où décision est soit install soit keep.
--no-debsig
Ne pas tenter de vérifier la signature des paquets.
--no-triggers
Durant ce traitement, ne pas lancer d'actions différées (les activations seront toujours enregistrées). S'il est utilisé avec --configure paquet ou --triggers-only paquet alors le postinst du paquet sera toujours exécuté même si seule l'exécution d'une action différée est nécessaire. L'utilisation de cette option peut laisser des paquets dans les mauvais états triggers-awaited et triggers-pending. Cela peut être corrigé plus tard en exécutant dpkg --configure --pending.
--triggers
Annule un précédent --no-triggers.

FICHIERS

/etc/dpkg/dpkg.cfg.d/[0-9a-zA-Z_-]*
Fragments de fichiers de configuration.
/etc/dpkg/dpkg.cfg
Fichier de configuration contenant les options par défaut.
/var/log/dpkg.log
Fichier journal standard. Voyez /etc/dpkg/dpkg.cfg(5) et l'option --log.

Les autres fichiers répertoriés ici sont dans leur répertoire par défaut, voyez l'option --admindir pour savoir changer l'emplacement de ces fichiers.

/var/lib/dpkg/available
Liste des paquets disponibles.
/var/lib/dpkg/status
États des paquets disponibles. Ce fichier contient des informations qui permettent de savoir si un paquet est marqué comme devant être supprimé ou pas, devant être installé ou pas, etc. Voyez la section RENSEIGNEMENTS SUR LES PAQUETS pour des informations supplémentaires.

Le fichier d'état est sauvegardé quotidiennement dans /var/backups. Cela peut être utile en cas de perte ou de corruption dûe à des problèmes de système de fichiers.

Les fichiers suivants font partie d'un paquet binaire. Voyez deb(5) pour des informations supplémentaires :

control
conffiles
preinst
postinst
prerm
postrm

ENVIRONNEMENT

HOME
Si cette option est utilisée, dpkg utilisera le répertoire indiqué pour lire le fichier de configuration propre à l'utilisateur.
TMPDIR
Si cette option est utilisée, dpkg utilisera le répertoire indiqué pour créer les fichiers et répertoire temporaires.
PAGER
Cette option indique le programme exécuté par dpkg quand il affiche les fichiers de configuration.
SHELL
Le programme exécuté par dpkg quand il lance un nouvel interpréteur de commandes.
COLUMNS
Fixe le nombre de colonnes utilisées par dpkg lorsqu'il affiche un texte formaté. Seule l'action -l se sert actuellement de cette variable.
DPKG_SHELL_REASON
Cette variable définit l'invite du shell lancé par dpkg lorsqu'il lui est demandé d'« examiner la situation » lors du traitement des fichiers de configuration. La valeur actuellement valable est : conffile-prompt/
DPKG_CONFFILE_OLD
Cette variable est définie pour le shell lancé par dpkg lorsqu'il lui est demandé d'«  examiner la situation » lors du traitement des fichiers de configuration. Elle contient le nom de l'ancien fichier de configuration.
DPKG_CONFFILE_NEW
Cette variable est définie pour le shell lancé par dpkg lorsqu'il lui est demandé d'« examiner la situation » lors du traitement des fichiers de configuration. Elle contient le nom du nouveau fichier de configuration.
DPKG_RUNNING_VERSION
Cette variable est définie par dpkg dans l'environnement du script du responsable. Elle contient la version de l'instance de dpkg en cours d'exécution.
DPKG_MAINTSCRIPT_PACKAGE
Définie par dpkg dans l'environnement du script du responsable, cette variable contient le nom du paquet en cours de traitement.
DPKG_MAINTSCRIPT_ARCH
Définie par dpkg dans l'environnement du script du responsable, cette variable contient l'architecture pour laquelle le paquet a été construit.
DPKG_MAINTSCRIPT_NAME
Définie par dpkg dans l'environnement du script du responsable, cette variable contient le nom du script en cours d'exécution (preinst, postinst, prerm, postrm).

EXEMPLES

Affichage des paquets installés liés à l'éditeur vi(1) (noter que dpkg-query ne charge plus le fichier available par défaut, sauf si l'option dpkg-query --load-avail est utilisée) :

    dpkg -l '*vi*'

Pour voir les entrées de /var/lib/dpkg/available concernant deux paquets :

    dpkg --print-avail elvis vim | less

Pour rechercher vous-même dans la liste des paquets :

    less /var/lib/dpkg/available

Pour supprimer le paquet installé elvis :

    dpkg -r elvis

Pour installer un paquet, vous devez d'abord le trouver dans une archive ou sur un CD. Le fichier « available » montre que le paquet vim se trouve dans la section « editors » :

     cd /media/cdrom/pool/main/v/vim
     dpkg -i vim_4.5-3.deb

Pour faire une copie locale des états de sélection des paquets :

    dpkg --get-selections >myselections

You might transfer this file to another computer, and after having updated the available database there with your package manager frontend of choice (see https://wiki.debian.org/Teams/Dpkg/FAQ for more details), for example:

     avail=`mktemp`
     apt-cache dumpavail >"$avail"
     dpkg --merge-avail "$avail"
     rm "$avail"
you can install it with:

    dpkg --clear-selections
    dpkg --set-selections <myselections

On remarquera que cela n'installe ou ne supprime rien du tout ; cela ne fait qu'enregistrer l'état souhaité des paquets. Vous aurez besoin d'autres applications pour récupérer et installer réellement les paquets requis. Par exemple, exécutez apt-get dselect-upgrade.

Habituellement, vous trouverez que dselect(1) fournit une façon plus aisée de modifier les états de sélection des paquets.

FONCTIONNALITÉS SUPPLÉMENTAIRES

D'autres possibilités sont offertes en installant les paquets suivants : apt, aptitude et debsums.

BOGUES

L'option --no-act ne donne pas assez d'informations utiles.

AUTEURS

Consultez /usr/share/doc/dpkg/THANKS pour la liste de ceux qui ont contribué à dpkg.

TRADUCTION

Ariel VARDI <[email protected]>, 2002. Philippe Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute erreur à <[email protected]>.