GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Commande dpkg sous Linux avec exemples

Présentation

dpkg sous Linux est le principal gestionnaire de paquets pour Debian et les systèmes basés sur Debian, tels qu'Ubuntu. L'outil installe, construit, supprime, configure et récupère les informations des packages Debian. La commande fonctionne avec les packages dans .deb formater.

Ce guide explore le dpkg syntaxe de commande et options à travers divers exemples.

Prérequis

  • Un système avec Debian ou un système d'exploitation basé sur Debian.
  • Accès à la ligne de commande/au terminal en tant que sudo.
  • Un .deb fichier pour travailler avec les exemples.

Syntaxe de la commande dpkg

La syntaxe de base pour le dpkg la commande est :

dpkg [options] action

La commande accepte une action et zéro ou plusieurs options.

Le dpkg La commande agit comme une interface pour les deux outils suivants :

1. Le dpkg-deb commande, qui affiche des informations sur .deb paquets.

2. La requête dpkg-query commande, qui affiche les informations de la base de données dpkg.

Le dpkg la commande exécute des actions depuis dpkg-query et dpkg-deb . Par conséquent, les deux commandes suivantes affichent le même résultat :

dpkg -l
dpkg-query -l

L'action -l est une dpkg-query action qui répertorie tous les packages de la base de données dpkg. Le dpkg la commande détecte les options étrangères et exécute dpkg-query automatiquement.

Options de commande dpkg

Le tableau ci-dessous fournit de brèves descriptions des options et actions couramment utilisées pour le dpkg commande.

Syntaxe Type Description
-i <package.deb>
--install <package.deb>
Action Installe le package.
--unpack <package.deb> Action Déballe le package sans configuration.
--configure <package> Action Configure un package décompressé.
-r <package>
--remove <package>
Action Supprime un package installé. Ne supprime pas les fichiers de configuration et autres données.
-P <package>
--purge <package>
Action Purge un package installé ou supprimé. Supprime les fichiers de configuration et autres données.
--get-selections Action Récupère les packages avec les sélections actuelles.
--set-selections Action Définit les états de sélection de fichier à partir d'un fichier lu à partir de l'entrée standard.
-b <directory>
--build <directory>
Action
(depuis dpkg-deb)
Construit un .deb paquet.
-c <package.deb>
--contents <package.deb>
Action
(depuis dpkg-deb)
Listes contenu du paquet.
-I <package.deb>
--info <package.deb>
Action
(depuis dpkg-deb)
Affiche des informations sur un paquet.
-l <pattern>
--list <pattern>
Action
(depuis dpkg-query)
Répertorie les packages en faisant correspondre le modèle.
-L <package>
--listfiles <package>
Action
(depuis dpkg-query)
Répertorier les emplacements des fichiers des packages installés.
-s <package>
--status <package>
Action
(depuis dpkg-query)
Affiche l'état d'un package installé.
-S <pattern>
--search <pattern>
Action
(depuis dpkg-query)
Rechercher un modèle dans les packages installés.
-R
--recursive
Option Gère l'action de manière récursive dans le répertoire cible et les sous-répertoires.
--log=<file> Option Journalise les mises à jour de changement d'état dans un fichier.
--no-act
--dry-run
--simulate
Option Affiche la sortie sans valider les modifications. À utiliser avant l'action.

Les actions qui modifient le système, telles que l'installation ou la suppression de packages, nécessitent des privilèges sudo. Les options basées sur les informations ne nécessitent pas de privilèges utilisateur spéciaux.

La gestion des accès privilégiés permet de sécuriser le système en interdisant aux utilisateurs réguliers d'apporter des modifications à l'ensemble du système.

Exemples de commande dpkg

Si vous avez un .deb package, passez aux exemples ci-dessous. Sinon, téléchargez un simple .deb package pour les tests, comme le cowsay gadget de ligne de commande.

Pour obtenir le fichier, exécutez la commande suivante :

wget http://archive.ubuntu.com/ubuntu/pool/universe/c/cowsay/cowsay_3.03+dfsg2-4_all.deb

Confirmez le .deb fichier téléchargé en listant le contenu du répertoire avec la commande ls :

ls -l *.deb

La sortie montre le .deb paquet.

Installer le package

Installez un paquet Debian avec le dpkg commande et le -i ou --install balise :

sudo dpkg -i <package.deb>

Par exemple :

sudo dpkg -i cowsay_3.03+dfsg2-4_all.deb

La commande nécessite sudo pour installer un .deb paquet.

Répertorier les packages connus

Pour lister tous les packages connus, utilisez le -l balise :

dpkg -l

La commande imprime les packages en mode pager. Naviguez à l'aide des touches fléchées ou utilisez l'espace lister par page. Appuyez sur q pour quitter la liste. Les colonnes répertorient le nom, la version, l'architecture et la description de chaque package.

Les trois premières colonnes fournissent un aperçu complet de l'état du package :

1. Sélection d'actions :

  • u - Inconnu
  • i - Installer
  • h - Tenez
  • r - Supprimer
  • p - Purger

2. État du colis :

  • n - Non installé
  • c - Fichiers de configuration
  • H - À moitié installé
  • U - Déballé
  • F - À moitié configuré
  • W - En attente de déclencheurs
  • t - Déclencheurs en attente
  • i - Installé

3. Indicateurs d'erreur :

  • R - Réinstallation requise
  • <empty> - Aucune erreur

Par conséquent, un statut de package "ii " signifie dpkg installé avec succès le package sélectionné pour l'installation sans erreur.

Pour récupérer une instance spécifique de la liste, utilisez :

dpkg -l <package>

Par exemple :

dpkg -l cowsay

Pour répertorier plusieurs packages, séparez chaque nom de package par un espace.

Supprimer le paquet

Pour supprimer un paquet Debian, utilisez la commande suivante :

dpkg -r <package>

Par exemple, pour supprimer le package cowsay, utilisez :

sudo dpkg -r cowsay

Le -r L'option ne supprime pas les fichiers de configuration. Utilisez cette option lors de la suppression du logiciel pour la réinstallation.

Pack de purge

Pour purger un paquet, utilisez le -P choix :

sudo dpkg -P <package>

Par exemple :

sudo dpkg -P cowsay

La commande supprime un package ainsi que tous les fichiers de configuration. Utilisez la purge pour supprimer complètement un programme du système.

Afficher le contenu du paquet

Un .deb package contient plusieurs fichiers et répertoires, indiquant où se trouve le package après l'installation ou la décompression.

Pour afficher le contenu du package, exécutez :

dpkg -c <package.deb>

Par exemple :

dpkg -c cowsay*

La sortie montre tous les fichiers et répertoires dans le .deb fichier de package. L'exemple de package réside dans /usr/games/ et /usr/share/ après l'installation ou le déballage.

Déballer le colis

Pour décompresser le package sans configuration, utilisez :

sudo dpkg --unpack <package.deb>

Par exemple :

sudo dpkg --unpack cowsay*

La commande décompresse tous les fichiers du package.

Configurer le paquet

Pour configurer un .deb décompressé package ou reconfigurez un package installé, utilisez :

dpkg --configure <package>

Par exemple :

sudo dpkg --configure cowsay

Déballer et configurer un paquet Debian divise le processus d'installation en deux étapes.

Vérifier si le package est installé

Pour vérifier si un paquet est installé, utilisez le -s balise :

dpkg -s <package>

Par exemple :

dpkg -s cowsay

Le statut indique si un package est installé.

Afficher les informations sur le package

Pour afficher les informations sur le paquet directement depuis le .deb fichier, utilisez la commande suivante :

dpkg -I <package.deb>

Par exemple :

dpkg -I cowsay*

La commande affiche des informations sur le package, telles que la taille, les dépendances et les références de documentation. Utilisez cette méthode pour vérifier les informations du package avant d'installer un package.

Installer tous les packages à partir d'un répertoire

Utilisez le -R option avant -i pour installer les packages de manière récursive :

dpkg -R -i <directory>

La commande installe tous les packages situés dans le répertoire et tous les sous-répertoires. Si plusieurs instances du même package sont décompressées, une seule configuration se produit.

Répertorier les emplacements des fichiers de package installés

Pour répertorier les fichiers de package et leur emplacement, utilisez le -L balise :

dpkg -L <package>

Par exemple :

dpkg -L cowsay

La sortie répertorie tous les répertoires de fichiers et emplacements de fichiers.

Obtenir des sélections de packages

Pour récupérer les noms de packages par sélection, utilisez :

dpkg --get-selections

La liste affiche les noms de packages et le marquage de sélection.

Répertorier les packages installés

Pour récupérer une liste des packages installés, utilisez la commande suivante :

dpkg --get-selections | grep -v "deinstall" | awk '{ print $1 }'

La commande effectue les opérations suivantes :

  • grep filtre les packages marqués "deinstall" .
  • awk imprime uniquement la première colonne avec les noms de packages.

Utilisez cette méthode lorsque vous avez besoin d'une liste des programmes installés.

Définir les sélections de packages

Définissez la sélection de packages pour un package au format suivant :

echo <package> <state> | dpkg --set-selections

La commande attend l'état du package comme entrée standard. Les conditions possibles sont :

  • install
  • hold
  • deinstall
  • purge
  • unknown

Par exemple, pour arrêter la mise à jour d'un package, utilisez :

echo cowsay hold | sudo dpkg --set-selections

Le package est en attente, ce qui signifie que le programme ne reçoit aucune mise à jour automatique.

Rechercher un package contenant des fichiers

Pour trouver un package contenant un fichier, utilisez le -S choix :

dpkg -S <pattern>

Par exemple, recherchez apt-get :

dpkg -S apt-get

La sortie affiche apt-get appartient à l'apt paquet.

Vous pouvez également rechercher un fichier spécifique. Par exemple :

dpgk -S gnu.cow

La sortie montre que le fichier appartient au package cowsay.

Comparer les versions

Le dpkg La commande offre un outil pour comparer les numéros de version du programme. La syntaxe est :

dpkg --compare-versions <version number> <comparison operator> <version number>

Les opérateurs de comparaison possibles sont :

  • lt - Strictement inférieur à
  • le - Inférieur ou égal à
  • eq - Égal
  • ne - Pas égal
  • ge - Supérieur ou égal à
  • gt - Strictement supérieur à

dpkg renvoie 0 (succès) pour une comparaison correcte et une valeur différente de zéro pour un échec.

Par exemple, comparez les numéros de version suivants :

dpkg --compare-versions 1.2-3 gt 1.1-4
echo $?

La commande renvoie 0 , indiquant que le premier numéro de version est supérieur au second.

Prise en charge de plusieurs architectures

Tous les packages Debian contiennent des informations sur l'architecture prise en charge. La restriction garantit que le système ne se retrouve pas avec des fichiers binaires pour une architecture incorrecte.

Certaines architectures prennent en charge différentes architectures nativement. Par exemple, un amd64 (un système 64 bits) prend en charge les installations i386 (un système 32 bits).

Le dpkg correspond à l'architecture de l'hôte. Récupérez les informations avec :

dpkg --print-architecture

Pour voir la prise en charge de l'architecture étrangère, utilisez :

dpkg --print-foreign-architectures

Pour ajouter ou supprimer la prise en charge de l'architecture, utilisez :

sudo dpkg --add-architecture <architecture name>
sudo dpkg --remove-architecture <architecture name>

Dans les deux cas, la liste des architectures étrangères se met à jour immédiatement avec les modifications.

Vérifier la version de la commande dpkg

Pour vérifier quelle version de dpkg le système exécute, utilisez :

dpkg --version

La sortie montre la version de dpkg avec l'architecture.

Imprimer l'aide

Pour afficher un menu d'aide simple, utilisez la commande suivante :

dpkg --help 

Utilisez la commande man pour rechercher la documentation complète.


Ubuntu
  1. Commande source Linux avec exemples

  2. Commande Linux wc avec exemples

  3. Commande Linux Tee avec exemples

  4. Commande principale Linux avec exemples

  5. Commande JQ sous Linux avec exemples

15 Commande Linux ps avec exemples

Commande de CD Linux avec exemples

Commande murale sous Linux avec exemples

Commande de tri sous Linux avec des exemples

Commande IP Linux avec exemples

w Commande expliquée avec des exemples sous Linux