dpkg-query - Un outil pour interroger la base de données de dpkg
dpkg-query [
option...]
commande
dpkg-query est un outil pour afficher des informations sur les paquets
connus par la base de données de
dpkg.
-
-l, --list
[motif-de-nom-de-paquet...]
- Affiche les paquets correspondant à un ou plusieurs
motifs, quelque soit leur statut, ce qui comprend tout paquet réel
ou virtuel référencé dans tout champ de relation de
dépendance (tel que Breaks, Enhances, etc.). Si aucun
motif-de-nom-de-paquet n'est indiqué, affiche tous les
paquets de /var/lib/dpkg/status, sauf ceux qui ne sont pas
installés (c'est-à-dire ceux qui ont été
précédemment purgés). Les
métacaractères ordinaires de l'interpréteur de
commandes sont autorisés dans motif-de-nom-de-paquet. Il
faudra sans doute mettre motif-de-nom-de-paquet entre apostrophes
pour éviter l'expansion des noms de fichier par
l'interpréteur de commandes. Par exemple, tous les paquets dont le
nom commence par « libc6 » seront
affichés par la commande :
Les trois premières colonnes affichées montrent dans
l'ordre : l'action souhaitée, l'état du paquet et les
erreurs.
Action souhaitée :
- u = inconnU
- i = Installer
- h = à garder
- r = Retirer
- p = Purger
État du paquet :
- n = Non-installé
- c = fichier-Config
- H = semi-installé
- U = dépaqUeté
- F = échec-conFig>
- W = attend-traitement-déclenchements
- t = déclenchements-différés
- i = Installé
Drapeaux d'erreur :
- <empty> = (aucun)
- R = Réinstallation-requise
Un état en majuscules ou une lettre d'erreur indiquent que le paquet peut
provoquer des problèmes graves. Veuillez consulter
dpkg(1)
à propos des états et drapeaux ci-dessus.
On ne peut pas configurer le format de sortie de cette option. Il s'adapte
automatiquement à la largeur du terminal. Ce format est destiné
aux humains et la machine le lit mal. Voyez
-W (
--show) et
--showformat pour une possible configuration de ce format.
-
-W, --show
[motif-de-nom-de-paquet...]
- Tout comme l'option --list, cette option affiche la
liste des paquets qui correspondent au motif donné. La sortie peut
cependant être formatée en utilisant l'option
--showformat.
Le format de sortie par défaut fournit une ligne pour chaque paquet
qui correspond, chaque ligne constituée du nom du paquet et de la
version installée, séparés par une tabulation. Le nom
du paquet sera complété par l'identifiant d'architecture
pour les paquets Multi-Arch same ou avec une architecture
différente, c'est-à-dire qui n'est ni l'architecture native
ni all.
-
-s, --status [nom-du-paquet...]
- Donne l'état du paquet indiqué. C'est
simplement l'affichage de l'entrée de la base de données
concernant les états des paquets installés. Si aucun
nom-de-paquet n'est indiqué, toutes les entrées de
paquet dans la base de données d'état seront
affichées (depuis dpkg 1.19.1). Lorsque des entrées
de nom-de-paquet multiples sont indiquées, les
entrées d'état demandées sont séparées
par une ligne vide et sont dans l'ordre utilisé pour la liste de
paramètres.
-
-L, --listfiles nom-du-paquet...
- Affiche la liste des fichiers du nom-du-paquet
installés sur le système. Lorsque plusieurs
nom-du-paquet sont indiqués, les différentes listes
de fichiers sont séparées par une ligne vide et elles sont
fournies dans l'ordre de la liste de paramètres.
Chaque détournement de fichier est affiché sur sa ligne propre
après le fichier détourné préfixé par
une des chaînes traduites suivantes :
détourné localement en : diverted-to
paquet détournant les autres vers : diverted-to
détourné par paquet vers : diverted-to
Astuce : lorsque la machine analyse la sortie, il est habituel de
régler la localisation à C.UTF-8 pour obtenir des
résultats reproductibles.
Cette commande ne donne pas les fichiers supplémentaires
créés par les scripts du responsable de paquet, ni les
alternatives.
-
--control-list nom-du-paquet
- Affiche les fichiers de contrôle installés
sur le système à partir de nom-du-paquet (depuis
dpkg 1.16.5). Ceux-ci peuvent être utilisés en
paramètres d'entrée de --control-show.
-
--control-show nom-du-paquet
fichier-de-contrôle
- Affiche sur la sortie standard le
fichier-de-contrôle installé sur le système
pour nom-du-paquet (depuis dpkg 1.16.5).
-
-c, --control-path nom-du-paquet
[fichier-contrôle]
- Affiche les chemins pour les fichiers de contrôle
installés sur votre système pour nom-du-paquet
(depuis dpkg 1.15.4). Si fichier-contrôle est
indiqué, seul le chemin pour ce fichier de contrôle sera
affiché, s'il est présent.
Attention : cette commande est obsolète parce qu'elle
donne un accès direct à la base de données interne de
dpkg, et il est conseillé d'utiliser --control-list et
--control-show à la place dans tous les cas où ces
commandes peuvent donner le même résultat. Néanmoins,
aussi longtemps qu'il y a un cas au moins où cette commande est
nécessaire (c'est-à-dire quand il faut supprimer le script
d'un responsable endommageant postrm), et tant qu'il n'y aura pas de bonne
solution pour cela, cette commande ne sera pas supprimée.
-
-S, --search
motif-de-nom-à-rechercher...
- Recherche les paquets propriétaires de fichiers dont
le nom correspond aux motifs indiqués. On peut utiliser tous les
métacaractères de l'interpréteur de commandes dans le
motif, où l'astérisque ( *) et le point
d'interrogation ( ?) correspondront à une barre oblique et
la barre oblique inverse ( \) servira de caractère
d'échappement.
Si le premier caractère du motif-de-nom-à-rechercher
n'est aucun des caractères «
*[?/ », il sera alors considéré comme
une sous-chaîne de correspondance et sera implicitement
entouré de « * » (comme
* motif-de-nom-à-rechercher*). Si la
chaîne suivante contient un des caractères «
*[?\ », il sera géré comme un motif
global, sinon tout « / » ou
« /. » terminal sera supprimé
et une recherche littérale de chemin sera exécutée.
Cette commande ne donne pas les fichiers supplémentaires
créés par les scripts du responsable de paquet, ni les
alternatives.
Le format de sortie consiste en une ligne par motif qui correspond, avec une
liste de paquets possédant le chemin séparés par une
virgule (U+002C « , ») et un
espace(U+0020 ‘ ’), suivi par deux-points (U+003A
« : ») puis un espace suivi par le
chemin, comme cela :
nom_paquet1, nom_paquet2: chemin1
nom_paquet3: chemin2
Les détournements de fichier sont affichés avec les
chaînes traduites suivantes :
détournement par nom_paquet depuis :
diverted-from
détournement par nom_paquet en : diverted-to
ou pour des détournements locaux :
détournement local depuis : diverted-from
détournement localement en : diverted-to
Astuce : lorsque la machine analyse la sortie, il est habituel de
régler la localisation à C.UTF-8 pour obtenir des
résultats reproductibles.
-
-p, --print-avail
[nom-du-paquet...]
- Affiche les détails relatifs aux paquets, tels que
présents dans /var/lib/dpkg/available. Si aucun
nom-de-paquet n'est indiqué, toutes les entrées de
paquet dans la base de données d'état seront
affichées (depuis dpkg 1.19.1). Lorsque des entrées de
nom-de-paquet multiples sont indiquées, les entrées
available demandées sont séparées par une
ligne vide et sont dans l'ordre utilisé pour la liste de
paramètres.
Les utilisateurs des outils basés sur APT devraient plutôt
utiliser la commande apt show nom-du-paquet, car le fichier
available n'est tenu à jour que lorsque dselect est
utilisé.
-
-?, --help
- Afficher un message d'aide puis quitter.
- --version
- Afficher le numéro de version puis quitter.
-
--admindir=répertoire
- Change l'endroit où se trouve la base de
données de dpkg. Par défaut, c'est
/var/lib/dpkg.
-
--root=répertoire
- Définit le répertoire root à
directory, ce qui définit le répertoire
d'administration à «
répertoire/var/lib/dpkg » (depuis
dpkg 1.21.0).
- --load-avail
- Charge également le fichier available
à l'utilisation des commandes --show et --list, ce
qui désormais revient à n'interroger que le fichier
d'état (depuis dpkg 1.16.2).
- --no-pager
- Désactive l'utilisation d'un afficheur pour montrer
les informations (depuis dpkg 1.19.2).
-
-f, --showformat=format
- Cette option sert à spécifier le format de
sortie de l'option --show (option courte depuis
dpkg 1.13.1). Ce format est une chaîne qui sera
utilisée pour chaque paquet listé.
Dans la chaîne, « \ »
préfixe des caractères de contrôle :
-
\n saut de ligne
-
\r retour chariot
-
\t tabulation
“
\” avant n'importe quel caractère supprime la
signification spécial du caractère qui suit. C'est utile pour
les caractères «
\ » et
«
$ ».
L'information relative à un paquet peut être indiquée en
insérant des appels de variables spécifiant des champs du paquet
avec la syntaxe suivante : «
${champ[
; largeur]
} ». Les
champs sont alignés à droite, à moins que la largeur ne
soit négative, auquel cas ils sont alignés à gauche. Les
champs suivants sont reconnus, mais pas nécessairement disponibles dans
le fichier d'état (seuls les champs internes ou les champs
conservés avec le paquet binaire le sont) :
- Architecture
- Bugs
-
Conffiles (interne)
-
Config-Version (interne)
- Conflicts
- Breaks
- Depends
- Description
- Enhances
- Protected
- Essential
-
Filename (interne, lié au programme
frontal)
- Homepage
- Installed-Size
-
MD5sum (interne, lié au programme
frontal)
-
MSDOS-Filename (interne, lié au programme
frontal)
- Maintainer
- Origin
- Package
- Pre-Depends
- Priority
- Provides
- Recommends
- Replaces
-
Revision (obsolète)
- Section
-
Size (interne, lié au programme frontal)
- Source
-
Status (interne)
- Suggests
-
Tag (en général pas dans .deb mais
dans les fichiers Packages des dépôts)
-
Triggers-Awaited (interne)
-
Triggers-Pending (interne)
- Version
Les champs suivants sont virtuels, créés par
dpkg-query
à partir des valeurs d'autres champs (veuillez noter qu'ils utilisent
des noms qui ne sont pas valables comme noms de champs dans le fichiers de
contrôle) :
- binary:Package
- Contient le nom du paquet binaire avec
éventuellement le type d'architecture tel que
« libc6:amd64 » (depuis dpkg 1.16.2).
Le type d'architecture sera présent pour rendre le nom de paquet
non ambigu, pour les paquets avec un champ Multi-Arch de valeur
same ou appartenant à une architecture différente,
c'est-à-dire qui n'est ni l'architecture native ni all.
- binary:Synopsis
- Il contient la description courte du paquet (depuis
dpkg 1.19.1).
- binary:Summary
- C'est un alias de binary:Synopsis (depuis
dpkg 1.16.2).
- db:Status-Abbrev
- Il contient l'état du paquet dans sa forme
abrégée en trois caractères, comme « ii
» ou « iHR » (depuis
dpkg 1.16.2). Voir la description de la commande --list pour
plus de détails.
- db:Status-Want
- Il contient l'état désiré du paquet,
extrait du champ Status (depuis dpkg 1.17.11).
- db:Status-Status
- Il contient l'expression d'état du paquet, extrait
du champ Status (depuis dpkg 1.17.11).
- db:Status-Eflag
- Il contient le drapeau d'erreur d'état du paquet,
extrait du champ Status (depuis dpkg 1.17.11).
- db-fsys:Files
- Il contient la liste des entrées de paquets du
système de fichiers, séparées par des sauts de lignes
(depuis dpkg 1.19.3).
- db-fsys:Last-Modified
- Il contient l'horodatage en seconde de la dernière
date à laquelle les entrées de paquets du système de
fichiers ont été modifiées (depuis dpkg 1.19.3).
- source:Package
- Il contient le nom du paquet source de ce paquet binaire
(depuis dpkg 1.16.2).
- source:Version
- Il contient la version du paquet source de ce paquet
binaire (depuis dpkg 1.16.2).
- source:Upstream-Version
- Il contient la version du paquet source amont de ce paquet
binaire (depuis dpkg 1.18.16).
Le format par défaut est le suivant : «
${binary:Package}\t${Version}\n ». Tous les autres champs
du fichier d'état, par exemple des champs définis par
l'utilisateur, peuvent être demandés. Ils seront affichés
mais sans aucune mise en forme et aucune conversion ou vérification
n'est faite. Pour obtenir le nom du responsable de
dpkg et la version
installée, exécutez par exemple :
dpkg-query -f='${binary:Package} ${Version}\t${Maintainer}\n' \
-W dpkg
- 0
- La requête demandée s'est correctement
déroulée.
- 1
- La requête demandée a échoué
soit totalement, soit partiellement, du fait qu'aucun fichier ni paquet
n'a été trouvé (sauf pour --control-path,
--control-list et --control-show où de telles erreurs
sont fatales).
- 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.
- SHELL
- Définit le programme à exécuter lors
du lancement d'une commande avec un shell (depuis
dpkg 1.19.2).
- PAGER
- DPKG_PAGER
- Définit la commande d'afficheur à utiliser
(depuis dpkg 1.19.1) qui sera exécutée avec
« $SHELL -c ». Si
SHELL n'est pas défini,
« sh » sera utilisé à la
place. DPKG_PAGER remplace la variable d'environnement PAGER
(depuis dpkg 1.19.2).
- DPKG_ROOT
- Si cette variable est positionnée et que l'options
--root n'est pas précisées, ce répertoire sera
utilisé comme répertoire racine du système de
fichiers (depuis dpkg 1.21.0).
- DPKG_ADMINDIR
- Si cette variable est positionnée et que l'option
--admindir n'est pas précisée, ce répertoire
sera utilisé comme répertoire de données pour
dpkg.
- DPKG_DEBUG
- Définit le masque de débogage (depuis
dpkg 1.21.10) à partir d'une valeur octale. Actuellement,
les drapeaux acceptés sont décrits dans l'option dpkg
--debug, mais ces drapeaux n'auront pas tous un effet sur ce
programme.
- 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.
- LESS
- Définie à
« -FRSXMQ » par dpkg-query, si
elle n'est pas déjà fixée, lors du lancement d'un
afficheur (depuis dpkg 1.19.2). Pour modifier le comportement par
défaut, cette variable peut être réglée
à une autre valeur y compris une chaîne vide, ou bien les
variables PAGER ou DPKG_PAGER peuvent être
fixées pour désactiver des options spécifiques avec
« -+ », par exemple
DPKG_PAGER="less -+F".
dpkg(1).
Ariel VARDI <
[email protected]>, 2002. Philippe Batailler, 2006.
Nicolas François, 2006. Veuillez signaler toute erreur à
<
[email protected]>.