Quelle est la différence entre APT et dpkg dans Ubuntu?

Si vous utilisez Ubuntu ou toute autre distribution Linux basée sur Debian, vous avez sans aucun doute lu les instructions d'installation vous demandant d'utiliser la commande APT, tandis que d'autres vous ont dit d'utiliser dpkg.

Alors, est-ce important que vous installiez des packages sur votre système Linux avec l'un de ces gestionnaires de packages? Quelle est la différence? Aujourd'hui, nous aborderons ces questions afin que vous sachiez comment installer au mieux les packages sur Ubuntu.

APT vs dpkg: deux installateurs de packages importants

APT et dpkg sont tous deux des interfaces de gestion de paquets en ligne de commande que vous pouvez utiliser dans le terminal sur Ubuntu et d'autres systèmes basés sur Debian. Ils peuvent, entre autres, installer des fichiers DEB et répertorier les packages installés.

Mais vous vous demandez peut-être s'ils sont si similaires, pourquoi avez-vous besoin à la fois d'APT et de dpkg?

Les deux interfaces fonctionnent en fait ensemble, APT agissant comme un outil de gestion de paquet complet grâce à l'utilisation de dpkg.

Embrouillé? Décomposons les principales différences.

APT utilise dpkg pour installer des packages

Quand APT (ou son cousin, Apt-get) installe un paquet, il utilise en fait dpkg sur le back-end pour accomplir cela. De cette façon, dpkg agit davantage comme un outil «sous le capot» pour l'interface plus conviviale d'APT.

APT peut télécharger des packages

Avec APT, vous pouvez récupérer un fichier à partir d'un référentiel distant et l'installer, le tout en une seule commande. Cela vous évite de devoir rechercher et télécharger manuellement le package avant l'installation.

Avec dpkg, vous ne pouvez installer que les fichiers locaux que vous avez déjà téléchargés vous-même. Il ne peut pas rechercher des référentiels distants ni en extraire des packages.

Dpkg n'installe pas les dépendances

Lorsque vous installez un package avec dpkg, c'est tout ce qui se passe: le système installe simplement le package. Cependant, certains packages nécessitent des logiciels supplémentaires appelés dépendances pour fonctionner. Si tel est le cas, dpkg peut vous avertir avec un message d'erreur.

APT, cependant, vérifiera automatiquement et obtiendra les dépendances pertinentes pour s'assurer que tout ce que vous essayez d'installer fonctionne correctement. C'est pourquoi nous vous recommandons, après avoir installé un paquet avec dpkg, d'utiliser la commande spéciale d'APT pour restaurer les dépendances.

 sudo apt install -f

Dpkg indexe uniquement les packages locaux

Si vous essayez de découvrir les paquets installés sur votre système, la fonction –list de dpkg pourrait mieux vous servir que APT. C'est parce que, de la même manière qu'il ne peut pas trouver et télécharger les packages distants, dpkg ne peut pas non plus lister les packages qui ne sont pas locaux sur l'appareil.

 dpkg --list

La commande list d'APT listera tous les packages dont il a connaissance, qu'ils soient locaux ou non.

 apt list

Pour voir uniquement les packages installés, vous devez passer l'option –installed ou -i .

 apt list --installed

Dpkg vs Apt: lequel est le meilleur pour vous?

Si vous souhaitez installer des packages locaux avec dpkg, vous pouvez le faire sans rencontrer de problèmes. Cependant, vous êtes mieux avec APT ou Apt-get si vous recherchez régulièrement des packages sur des référentiels de logiciels distants.

APT effectuera le travail de recherche et de téléchargement du package souhaité et s'assurera que toutes les dépendances nécessaires sont respectées. Vous pouvez toujours utiliser dpkg, mais APT remplira la même fonction tout en garantissant que votre logiciel fonctionne comme vous en avez besoin. De plus, APT est idéal pour désinstaller correctement les packages et les supprimer de votre système.