Provided by: dpkg_1.19.7ubuntu3.2_amd64 

NOM
dpkg - 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é comme 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 que 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 du paquet :
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 correctement dépaqueté et configuré.
États de 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'est-à-dire qu'on veut supprimer tous les
fichiers à l'exception des fichiers de configuration).
purge Le paquet est sélectionné pour être purgé (c'est-à-dire qu'on veut tout supprimer dans les
répertoires du système, même les fichiers de configuration).
unknown
La sélection de paquets est inconnue. Un paquet qui est aussi dans un état not-installed et avec
un drapeau ok sera oublié dans le prochain enregistrement de la base de données.
Drapeaux du paquet :
ok Un paquet marqué ok est dans un état connu, mais pourrait nécessiter un traitement supplémentaire.
reinstreq
Un paquet marqué reinstreq est défectueux et demande une réinstallation. dpkg ne peut supprimer
ces 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
Configuration 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 (depuis dpkg 1.14.17). Toutes les actions différées en attente
seront traitées. Si des noms de 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 paquet...|-a|--pending
Supprimer un paquet installé. Cela supprime tout à l'exception des fichiers de configuration et
les autres données nettoyées par le script postrm, ce qui évite d'avoir à reconfigurer le paquet
s'il était réinstallé par la suite (ces fichiers sont les fichiers de configuration listés dans le
fichier de contrôle DEBIAN/conffiles). S'il n'y a pas de fichier de contrôle DEBIAN/conffiles ni
script DEBIAN/postrm, cette commande est, équivalente à l'appel de --purge. Si -a ou --pending est
indiqué à la place d'un nom de paquet, alors tous les paquets dépaquetés mais marqués pour
suppression dans le fichier /var/lib/dpkg/status seront supprimés.
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
-P, --purge paquet...|-a|--pending
Purger un paquet installé ou déjà supprimé. L'action supprime tout, y compris les fichiers de
configuration et tout le reste nettoyé de postrm. Si -a ou --pending est indiqué à la place d'un
nom de paquet, tous les paquets dépaquetés ou supprimés mais marqués dans le fichier
/var/lib/dpkg/status comme devant être purgés seront purgés.
Note : certains fichiers de configuration peuvent être inconnus de dpkg car ils sont créés et
gérés séparément par le biais de scripts de configuration. En ce cas, dpkg ne les supprimera pas
lui-même et le script postrm du paquet devra s'en charger durant l'opération de purge. Cela ne
s'applique bien entendu qu'aux fichiers situés dans les répertoires systèmes et non aux fichiers
de configuration créés dans les répertoires « home » des utilisateurs.
La suppression d'un paquet comporte les étapes suivantes :
1. Supprime le paquet s'il n'est pas déjà supprimé. Voir --remove pour plus de détails sur la
façon dont cela est fait.
2. Exécuter le script postrm.
-V, --verify nom-du-paquet...
Vérifie l'intégrité du nom-du-paquet ou de tous les paquets, si omis, en comparant l'information
des fichiers installés par un paquet avec l'information des métadonnées des fichiers stockée dans
la base de données de dpkg (depuis dpkg 1.17.2). L'origine de l'information des métadonnées des
fichiers dans la base de données, ce sont les paquets binaires eux-mêmes. Ces métadonnées sont
collectées au moment du dépaquetage des paquets durant le processus d'installation.
Actuellement la seule vérification fonctionnelle effectuée est une comparaison des sommes de
contrôle MD5 du contenu des fichier par rapport aux valeurs stockées dans la base de données des
fichiers. La vérification n'a lieu que si la base de données contient les informations
nécessaires. Pour vérifier si des métadonnées manquent dans la base de données, la commande
--audit peut être employée.
On peut choisir le format de sortie avec l'option --verify-format, par défaut c'est le format rpm,
mais cela pourrait changer dans le futur, et selon le format que les programmes analysant cette
sortie de commande pourraient explicitement attendre.
-C, --audit nom-du-paquet...
Effectue une vérification du bon état et de consistance de la base de données sur le nom-du-paquet
ou sur tous les paquets si omis (vérification par paquet depuis dpkg 1.17.10). Par exemple,
recherche les paquets qui n'ont été que partiellement installés sur le système ou qui ont des
données de contrôle ou des fichiers manquants, incorrects ou obsolètes. dpkg suggère une manière
de les corriger.
--update-avail [fichier-Paquets]
--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 ». Si le paramètre fichier-Packages est manquant ou est nommé « - », alors, il sera lu
à partir de l'entrée standard (depuis dpkg 1.17.7). 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 depuis (dpkg 1.15.4), mais seulement ceux qui ne contiennent pas
d'informations pour l'utilisateur comme les sélections de paquets.
--clear-avail
Efface les renseignements existants sur les paquets disponibles.
--get-selections [motif-de-nom-de-paquet...]
Obtient la liste des sélections de 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.
Le fichier available doit être à jour pour que cette commande soit utile, autrement des paquets
inconnus seront ignorés avec un avertissement. Veuillez consultez les commandes --update-avail et
--merge-avail pour plus d'informations.
--clear-selections
Met l'état de chaque paquet non essentiel à « deinstall » (depuis dpkg 1.13.18). 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.
Note : cette commande utilise à la fois le fichier disponible et les sélections de paquets.
--predep-package
Affiche un fichier unique qui est la cible d'une ou plusieurs pré-dépendances correspondantes et
n'a lui-même pas de pré-dépendances insatisfaites.
Si un tel paquet est présent, l'affiche comme entrée du fichier Packages, et il peut être manipulé
comme il se doit.
Note : cette commande utilise à la fois le fichier disponible et les sélections de paquets.
Renvoie 0 si un paquet est affiché, 1 quand il n'y a pas de paquet adéquat disponible et 2 en cas
d'erreur.
--add-architecture architecture
Ajoute architecture à la liste d'architectures pour lesquelles les paquets peuvent être installés
sans utiliser --force-architecture (depuis dpkg 1.16.2). 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 (depuis dpkg 1.16.2). 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 supplémentaires pour lesquelles dpkg
est autorisé à installer des paquets (depuis dpkg 1.16.2).
--assert=fonction
Déclare que dpkg prend en charge la fonction requise. Renvoie 0 si la fonction est complètement
prise en charge, 1 si la fonction est reconnue mais que dpkg ne peut pas encore fournir sa prise
en charge, et 2 si la fonction est inconnue. La liste actuelle des fonctions déclarables est :
support-predepends
Gère le champ Pre-Depends (depuis dpkg 1.1.0).
working-epoch
Gère les « epochs » dans les chaînes de version (depuis dpkg 1.4.0.7).
longs-noms-de-fichier
Gère les longs noms de fichier dans les archives deb(5) (depuis dpkg 1.4.1.17).
multi-conrep
Gère plusieurs Conflicts et Replaces (depuis dpkg 1.4.1.19).
multi-arch
Gère les champs et les sémantiques multi-architectures (depuis dpkg 1.16.2).
versioned-provides
Gère les Provides versionnés (depuis dpkg 1.17.11).
--validate-chaîne-quelque-chose
Valide que la chaîne quelque-chose a une syntaxe correcte (depuis dpkg 1.18.16). Renvoie 0 si la
chaîne est valable, 1 si la chaîne n'est pas valable mais pourrait être accepté dans des contextes
tolérants, et 2 si la chaîne n'est pas valable. La liste actuelle des quelque-choses acceptables
est :
pkgname
Valide le nom de paquet donné (depuis dpkg 1.18.16).
trigname
Valide le nom d'action différée donné (depuis dpkg 1.18.16).
archname
Valide le nom d'architecture donné (depuis dpkg 1.18.16).
version
Valide la version donnée (depuis dpkg 1.18.16).
--compare-versions ver1 op ver2
Compare des numéros de version, où op est un opérateur binaire. dpkg renvoie « true » (0) si la
condition spécifiée est vérifiée, et renvoie « false » (1) 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. Les opérateurs < et > sont
obsolètes et ne devraient pas être utilisés du fait d'une sémantique pas claire. Comme
illustration, 0.1< 0.1 est évaluée à vrai.
-?, --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 archive [répertoire]
Extrait les informations de contrôle d'un paquet.
-x, --extract archive répertoire
Extrait et affiche les fichiers contenus dans un paquet.
-X, --vextract archive répertoire
Extrait et affiche les noms de fichiers contenus dans un
paquet.
-f, --field archive [champ de contrôle] ...
Affiche le(s) champ(s) de contrôle d'un paquet.
--ctrl-tarfile archive
Produit le contenu du fichier tar de contrôle d'un paquet Debian.
--fsys-tarfile archive
Produit le contenu du fichier tar du système de fichiers d'un
paquet Debian.
-I, --info archive [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-de-paquet ...
Affiche la liste des paquets qui correspondent au motif.
-s, --status nom-du-paquet ...
Donne l'état du paquet indiqué.
-L, --listfiles nom-du-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 toutes les options à la fois sur la ligne de commande, dans le fichier de configuration
de dpkg, /etc/dpkg/dpkg.cfg ou dans les fragments de 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 tirets initiaux), 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 à propos, par exemple, 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 : configurer aussi les paquets dépaquetés mais non configurés dont dépend le paquet
en question.
hold : traiter même les paquets marqués « à garder » (« hold »).
remove-reinstreq : supprimer 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 : supprimer 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 : changer tous les problèmes de dépendance en avertissements. Cela affecte les champs
Pre-Depends et Depends.
depends-version : ignorer les versions dans les questions de dépendance.Cela affecte les champs
Pre-Depends et Depends.
breaks : forcer l'installation, même si cela risque de casser un autre paquet (depuis
dpkg 1.14.6). Cela affecte le champ Breaks.
conflicts : installer 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. Cela affecte le champ
Conflicts.
confmiss : toujours installer le fichier de configuration manquant sans rien demander. 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 sans 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 sans 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é (depuis dpkg 1.15.8). 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 : remplacer un fichier par un fichier d'un autre paquet.
overwrite-dir : remplacer un répertoire d'un paquet par le fichier d'un autre paquet.
overwrite-diverted : remplacer un fichier détourné avec une version non détournée.
statoverride-add : remplacer une dérogation d'état existante lors de son ajout (depuis
dpkg 1.19.5)
statoverride-remove : ignorer l'absence de dérogation d'état lors de sa suppression (depuis
dpkg 1.19.5).
security-mac(*) : utiliser une sécurité basée sur le contrôle d'accès obligatoire (Mandatory
Access Controls – MAC) spécifique à la plateforme lors de l'installation de fichiers dans le
systèmes de fichiers (depuis dpkg 1.19.5). Sur les systèmes Linux, la mise en œuvre utilise
SELinux.
unsafe-io : ne pas effectuer d'action d'entrée/sortie non sûre lors de la décompression (depuis
dpkg 1.15.8.6). 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.
script-chrootless : exécuter les scripts du responsable sans créer de chroot(2) dans instdir même
si le paquet ne gère pas ce mode d'opération (depuis dpkg 1.18.5).
Avertissement : cela peut détruire le système hôte, utilisez avec des précautions extrêmes.
architecture : traiter même les paquets sans architecture ou avec une architecture incorrecte.
bad-version : traiter même les paquets dont la version est incorrecte (depuis dpkg 1.16.1).
bad-path : programmes importants non visibles par la variable PATH, ce qui va poser des problèmes.
not-root : tenter de (dés)installer même sans être root.
bad-verify : installer 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). Cela affecte les
champs Pre-Depends, Depends et Breaks.
--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 --record-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=répertoire
Fixe le répertoire d'administration à répertoire. Ce répertoire 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 est /var/lib/dpkg)
--instdir=répertoire
Fixe le répertoire d'installation 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
Fixe le répertoire racine à répertoire ce qui fixe le répertoire d'installation à « répertoire »
et le répertoire d'administration à « répertoire/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 à l'aide « sh -c » avant ou après l'exécution de dpkg pour les
actions unpack, configure, install, triggers-only, remove, purge, add-architecture et
remove-architecture (depuis dpkg 1.15.4 ; les actions add-architecture et remove-architecture
depuis dpkg 1.17.19). 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 (depuis dpkg 1.15.8).
Attention : dépendre des chemins exclus peut entièrement casser le système. Ce réglage doit 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 échecs 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.
Les filtres sont appliqués lors du dépaquetage des paquets binaires et, en tant que tel, ont
seulement connaissance du type des objets qui sont en cours de filtrage (par exemple un fichier
ordinaire ou un répertoire) et n'ont pas de visibilité des objets à venir. Comme ces filtres ont
des effets secondaires (à la différence des filtres de find(1)), l'exclusion d'un chemin précis
qui se trouve être un objet répertoire, comme /usr/share/doc, n'aura pas le résultat désiré, et
seul ce chemin sera exclu (et qui pourrait être réintégré automatiquement si le code en voit la
nécessité).Le dépaquetage de tous les fichiers suivants renfermés par ce répertoire échouera.
Astuce : Assurez-vous que les « globs » ne sont pas développés par le shell.
--verify-format nom-de-format
Définit le format de sortie de la commande --verify (depuis dpkg 1.17.2).
Le seul format de sortie géré actuellement est rpm, qui consiste en une ligne par chemin dont la
vérification a échoué. Les lignes débutent par 9 caractères pour signaler les résultats d'une
vérification spécifique, un « ? » implique que la vérification ne peut être réalisée (absence de
prise en charge, droit d'accès de fichier, etc), « . » implique que la vérification est passée et
un caractère alphanumérique implique qu'une vérification spécifique a échoué ; l'échec de
vérification md5sum est identifiée par un « 5 » en troisième caractère. La ligne continue par une
espace et un caractère d'attribut (comme « c » pour conffiles – fichiers de configuration), une
autre espace et le nom de chemin.
--status-fd n
Envoie un état du paquet compréhensible par la machine et met à jour cette information dans le
descripteur de fichier 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: état
L'état du paquet a changé ; l'état 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
message-d'erreur-complet 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: phase: paquet
Envoyé juste avant le début du traitement d'une phase. Les phases 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, à exécuter avec « sh -c » (depuis
dpkg 1.16.0). 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 les mises à jour et actions des changements d'état dans fichier plutôt que dans le
/var/log/dpkg.log par défaut. Si l'option est passée plusieurs fois, le dernier nom de fichier est
utilisé. Les messages du journal ont cette forme :
AAAA-MM-JJ HH:MM:SS startup type commande
Pour chaque invocation de dpkg où type est archives (avec une commande unpack ou install)
ou packages (avec une commande configure, triggers-only, remove ou purge).
AAAA-MM-JJ HH:MM:SS status état paquet version-installée
Pour les mises à jour des changements d'état.
AAAA-MM-JJ HH:MM:SS action paquet version-installée version-disponible
Pour les actions où action est install, upgrade, configure, trigproc, disappear, remove ou
purge.
AAAA-MM-JJ HH:MM:SS conffile fichier décision
Pour les changements du fichier de configuration où décision est install ou keep.
--no-pager
Désactive l'utilisation d'un afficheur pour montrer les informations (depuis dpkg 1.19.2).
--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 (depuis dpkg 1.14.17), mais 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 (depuis dpkg 1.14.17).
CODE DE SORTIE
0 L'action demandée s'est correctement déroulée. Ou bien une commande de vérification ou de
déclaration renvoie « true ».
1 Une commande de vérification ou de déclaration renvoie « false ».
2 Erreur fatale ou irrécupérable due à l'utilisation d'une ligne de commande non valable, ou
interactions avec le système, telles que des accès à la base de données, des allocations de
mémoire, etc.
ENVIRONNEMENT
Environnement externe
PATH Cette variable devrait être définie dans l'environnement et pointer vers les chemins du système où
plusieurs programmes requis devraient se trouver. Si la variable n'est pas définie ou si les
programmes ne sont pas trouvés, dpkg s'arrête.
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épertoires temporaires.
SHELL Le programme exécuté par dpkg quand il lance un nouvel interpréteur de commandes interactif ou
lance une commande avec le shell.
PAGER
DPKG_PAGER
Le programme exécuté par dpkg quand il utilise un afficheur, par exemple lorsqu'il affiche des
différences de fichiers de configuration. Si SHELL n'est pas défini, sh sera utilisé à la place.
Le DPKG_PAGER se substitue à la variable d'environnement PAGER (depuis dpkg 1.19.2).
DPKG_COLORS
Définit le mode de couleur (depuis dpkg 1.18.5). Les valeurs actuellement acceptées sont auto (par
défaut), always et never.
DPKG_FORCE
Définit les drapeaux de forçage (depuis dpkg 1.19.5). Quand cette variable est présente, aucune
des options internes de forçage par défaut ne sera appliquée. Si la variable est présente mais
vide, tous les drapeaux de forçage seront désactivés.
DPKG_FRONTEND_LOCKED
Définie par une interface de gestion de paquets pour notifier à dpkg qu'il ne devrait pas obtenir
le verrou d'interface (dpkg 1.19.1).
Environnement interne
LESS Définie par dpkg à « -FRSXMQ », si ce n'est pas déjà configuré, lors du lancement d'un afficheur
(depuis dpkg 1.19.2). Pour modifier le comportement par défaut, cette variable peut être
configurée à une autre valeur y compris une chaîne vide ; alternativement, les variables PAGER ou
DPKG_PAGER peuvent être réglées pour désactiver des options particulières avec «-+», par exemple
DPKG_PAGER="less -+F".
DPKG_ROOT
Définie par dpkg dans l'environnement du script du responsable pour indiquer quelle installation
activer (depuis dpkg 1.18.5). La valeur est destinée à être ajoutée avant n'importe quel chemin
sur lequel les scripts du responsable agissent. Pendant une opération normale, cette variable est
vide. Lors de l'installation de paquets dans un instdir différent, dpkg invoque normalement les
scripts du responsable avec chroot(2) et laisse cette variable vide, mais si
--force-script-chrootless est indiqué, alors, l'appel de chroot(2) est ignoré et instdir n'est pas
vide.
DPKG_ADMINDIR
Définie par dpkg dans l'environnement du script du responsable, pour indiquer le répertoire
d'administration à utiliser (depuis dpkg 1.16.0). Cette variable est toujours fixée à la valeur
actuelle de --admindir.
DPKG_FORCE
Définie par dpkg dans l'environnement du sous-processus pour tous les noms d'options de forçage
actuellement activées séparés par des virgules (depuis dpkg 1.19.5).
DPKG_SHELL_REASON
Cette variable est définie pour le shell lancé par dpkg lorsqu'il lui est demandé d'analyser la
situation lors du traitement des fichiers de configuration (depuis dpkg 1.15.6). 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'analyser la
situation lors du traitement des fichiers de configuration (depuis dpkg 1.15.6). 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'analyser la
situation lors du traitement des fichiers de configuration (depuis dpkg 1.15.6). Elle contient le
nom du nouveau fichier de configuration.
DPKG_HOOK_ACTION
Cette variable est définie par dpkg pour le shell lancé lors de l'exécution d'une action de point
d'entrée (depuis dpkg 1.15.4). Elle contient l'action actuelle de dpkg.
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 (depuis dpkg 1.14.17).
DPKG_MAINTSCRIPT_PACKAGE
Définie par dpkg dans l'environnement du script du responsable, cette variable contient le nom du
paquet (sans qualification d'architecture) en cours de traitement (depuis dpkg 1.14.17).
DPKG_MAINTSCRIPT_PACKAGE_REFCOUNT
Définie par dpkg dans l'environnement du script du responsable, cette variable contient le compte
de référence du paquet, c'est-à-dire le nombre d'instances de paquet avec un état plus élevé que
not-installed (depuis dpkg 1.17.2).
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 (depuis dpkg 1.15.4).
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 ou postrm (depuis dpkg 1.15.7).
DPKG_MAINTSCRIPT_DEBUG
Cette variable est définie par dpkg dans l'environnement du script du responsable à une valeur
(« 0 » ou « 1 » notant si le débogage a été demandé (avec l'option --debug) pour les scripts du
responsable (depuis dpkg 1.18.4).
FICHIERS
/etc/dpkg/dpkg.cfg.d/[0-9a-zA-Z_-]*
Fragments de fichiers de configuration (depuis dpkg 1.15.4).
/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 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 comment 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 due à des problèmes de système de fichiers.
Le format et le contenu d'un paquet binaire sont décrits dans deb(5).
BOGUES
L'option --no-act ne donne pas assez d'informations utiles.
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 >mes-sélections
Vous pourriez transférer ce fichier sur un autre ordinateur, et après avoir mis à jour le fichier
available avec l'interface de gestion de paquets de votre choix (voir
https://wiki.debian.org/Teams/Dpkg/FAQ pour plus de détails), par exemple :
apt-cache dumpavail | dpkg --merge-avail
ou avec dpkg 1.17.6 et les versions antérieures :
avail=`mktemp`
apt-cache dumpavail >"$avail"
dpkg --merge-avail "$avail"
rm "$avail"
vous pouvez l'installer de cette manière :
dpkg --clear-selections
dpkg --set-selections <mes-sélections
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écuter 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.
VOIR AUSSI
aptitude(1), apt(1), dselect(1), dpkg-deb(1), dpkg-query(1), deb(5), deb-control(5), dpkg.cfg(5) et
dpkg-reconfigure(8).
AUTEURS
Consultez /usr/share/doc/dpkg/THANKS pour la liste de ceux qui ont contribué à dpkg.
TRADUCTION
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe Batailler, 2006. Nicolas François, 2006. Veuillez
signaler toute erreur à <debian-l10n-french@lists.debian.org>.
1.19.7 2022-05-25 dpkg(1)