<Précédent | Table des matières | Suivant>
Installation de packages avec dpkg
dpkg est l'outil principal que vous utiliserez (directement ou indirectement via APT) lorsque vous aurez besoin d'installer un package. C'est également un choix incontournable si vous travaillez hors ligne, car il ne nécessite pas de connexion Internet. Rappelles toi, dpkg n'installera aucune dépendance dont le package pourrait avoir besoin. Pour installer un paquet avec dpkg, fournissez simplement le -i or --installer option et le chemin vers le . Deb. Cela implique que vous ayez préalablement téléchargé (ou obtenu d'une autre manière) le
.deb du package à installer.
# dpkg -i man-db_2.7.0.2-5_amd64.deb
(Lecture de la base de données ... 86425 fichiers et répertoires actuellement installés.) Préparation du décompression de man-db_2.7.0.2-5_amd64.deb ...
Déballage de man-db (2.7.0.2-5) sur (2.7.0.2-4) ... Configuration de man-db (2.7.0.2-5) ...
Mise à jour de la base de données des pages de manuel ... Traitement des déclencheurs pour le support mime (3.58) ...
# dpkg -i man-db_2.7.0.2-5_amd64.deb
(Lecture de la base de données ... 86425 fichiers et répertoires actuellement installés.) Préparation du décompression de man-db_2.7.0.2-5_amd64.deb ...
Déballage de man-db (2.7.0.2-5) sur (2.7.0.2-4) ... Configuration de man-db (2.7.0.2-5) ...
Mise à jour de la base de données des pages de manuel ... Traitement des déclencheurs pour le support mime (3.58) ...
On peut voir les différentes étapes effectuées par dpkg et peut voir à quel moment une erreur peut s'être produite. Les -i or --installer L'option effectue deux étapes automatiquement : elle décompresse le package et exécute les scripts de configuration. Vous pouvez effectuer ces deux étapes indépendamment (comme le fait apt dans les coulisses) avec le --déballer et --configurer options, respectivement :
# dpkg --unpack man-db_2.7.0.2-5_amd64.deb
(Lecture de la base de données ... 86425 fichiers et répertoires actuellement installés.) Préparation du décompression de man-db_2.7.0.2-5_amd64.deb ...
Déballage de man-db (2.7.0.2-5) sur (2.7.0.2-5) ... Traitement des déclencheurs pour le support mime (3.58) ...
# dpkg --configure man-db
Configuration de man-db (2.7.0.2-5) ... Mise à jour de la base de données des pages de manuel ...
# dpkg --unpack man-db_2.7.0.2-5_amd64.deb
(Lecture de la base de données ... 86425 fichiers et répertoires actuellement installés.) Préparation du décompression de man-db_2.7.0.2-5_amd64.deb ...
Déballage de man-db (2.7.0.2-5) sur (2.7.0.2-5) ... Traitement des déclencheurs pour le support mime (3.58) ...
# dpkg --configure man-db
Configuration de man-db (2.7.0.2-5) ... Mise à jour de la base de données des pages de manuel ...
Notez que les lignes « Triggers de traitement » font référence au code qui est automatiquement exécuté chaque fois qu'un package ajoute, supprime ou modifie des fichiers dans certains répertoires surveillés. Par exemple, le mime-support moniteurs de colis /usr/lib/mime/paquets et exécute le mise à jour-mime commande chaque fois que quelque chose change dans ce répertoire (comme /usr/lib/mime/packages/man-db dans le cas particulier de man-db).
Sometimes dpkg ne parviendra pas à installer un package et renverra une erreur. Cependant, vous pouvez commander dpkg d'ignorer cela et d'émettre uniquement un avertissement avec divers --Obliger-* option. Délivrance du dpkg --force-help La commande affichera une liste complète de ces options. Par exemple, vous pouvez utiliser dpkg installer de force zsh:
$ dpkg -i --force-overwrite zsh_5.2-5+b1_amd64.deb
$ dpkg -i --force-overwrite zsh_5.2-5+b1_amd64.deb
Une erreur fréquente, que vous rencontrerez forcément tôt ou tard, est une collision de fichiers. Lorsqu'un package contient un fichier déjà installé par un autre package, dpkg refusera de l'installer. Les types de messages suivants apparaîtront alors :
Déballage de libgdm (depuis .../libgdm_3.8.3-2_amd64.deb) ...
dpkg : erreur de traitement /var/cache/apt/archives/libgdm_3.8.3-2_amd64.deb (--unpack) :
➥ essayer d'écraser '/usr/bin/gdmflexiserver', qui est également dans le package gdm3
➥ 3.4.1-9
Déballage de libgdm (depuis .../libgdm_3.8.3-2_amd64.deb) ...
dpkg : erreur de traitement /var/cache/apt/archives/libgdm_3.8.3-2_amd64.deb (--unpack) :
➥ essayer d'écraser '/usr/bin/gdmflexiserver', qui est également dans le package gdm3
➥ 3.4.1-9
Dans ce cas, si vous pensez que le remplacement de ce fichier n'est pas un risque important pour la stabilité de votre système (ce qui est généralement le cas), vous pouvez utiliser --force-écraser pour écraser le fichier.
Bien qu'il y en ait beaucoup de disponibles --Obliger-* options, seulement --force-écraser est susceptible d'être utilisé régulièrement. Ces options existent pour des situations exceptionnelles, et il vaut mieux les laisser tranquilles autant que possible afin de respecter les règles imposées par le mécanisme de conditionnement. N'oubliez pas, ces règles assurent la cohérence et la stabilité de votre système.
Documentation