Sur Ubuntu, pourquoi «sudo apt-get» parfois et «sudo aptitude» d'autres fois?

11

J'essayais de comprendre comment installer libgtk2.0-dev et j'ai constaté que je devais utiliser

sudo aptitude install

au lieu de

sudo apt-get install

Pourquoi ces deux façons différentes d'obtenir des trucs?

lipton
la source

Réponses:

12

apt-getet aptitudesont tous deux frontend à dpkg. Utilisez l'un ou l'autre mais soyez cohérent. L'aptitude est plus récente et est censée être plus facile à utiliser. Il unifie également certaines apt-*fonctions. Vous pouvez utiliser aptitudepour rechercher et installer avec apt- * dont vous avez besoin apt-getet apt-cachepour l'installation et la recherche respectivement.

Je remplace généralement tous les apt-getexemples par des aptitudecommandes de copie et de collage.

Exécutez aptitudesans aucune option pour obtenir une interface de sélection des packages. Je ne l'utilise jamais donc je ne sais pas à quel point c'est sympa.

canne
la source
3

apt-get et aptitude sont les deux interfaces de dpkg , le gestionnaire de paquets Debian.

aptitude est venu plus tard que la suite de commandes apt- et possède certaines fonctionnalités d'utilisation non présentes dans cette dernière, mais je n'ai pas encore rencontré de cas où vous devez utiliser l'une sur l'autre.

L'entrée Wikipedia pour aptitude indique qu'elle a commencé comme un front-end pour la suite apt :

aptitude est une interface avec l'outil de packaging avancé (APT). Il affiche une liste de packages logiciels et permet à l'utilisateur de choisir de manière interactive les packages à installer ou à supprimer. [...] Même si aptitude est un seul exécutable, il fournit des fonctionnalités CLI similaires à celles de la famille d'outils apt (apt-get, apt-cache, apt-listchanges, etc.). Aptitude émule également la plupart des options de ligne de commande apt-get, ce qui lui permet de remplacer directement certains des usages apt-get.


la source
2

Les utilisateurs de Debian de longue date m'ont dit ailleurs qu'il aptitudeavait sa propre base de données qu'il maintient à côté de celle qui la aptconserve. Cela signifie que l'utilisation des deux interchangeables entraînera parfois des choses déroutantes, en particulier aptitudelorsqu'il semble avoir une copie légèrement périmée de l'état du package. J'ai vu cela se produire: il en résulte des choses comme des packages que vous ne pouvez mystérieusement pas supprimer ou installer.

Le programme GUI synapticn'a pas ce problème car il repose entièrement sur la aptbase de données.

staticsan
la source
1

Aptitude et apt-get ont exactement le même objectif pour Ubuntu Dapper et au-delà. Avant cela, apt-get peut ne pas supprimer automatiquement les choses comme il se doit.

Source: http://www.psychocats.net/ubuntu/aptitude

Katerberg
la source
0

L'une des différences mineures est que si vous avez des packages marqués pour 'suppression automatique', alors qu'une simple installation apt-get les listera, une installation aptitude se poursuivra et les supprimera dans le cadre de l'installation du package.

Ce n'est pas grave sauf si vous installez des paquets avec 'build-dep', à partir de 8.10 tous les paquets installés par build-dep sont marqués comme installés automatiquement (seront ajoutés à la suppression automatique dans apt-get et supprimés dans aptitude.

(si vous prévoyez de construire et d'utiliser 'build-dep', cela empêche le marquage automatique si vous souhaitez conserver (et / ou empêchez une grande liste de suppression automatique dans apt-get Ex. mplayer sudo apt-get build-dep mplayer -o APT :: Get :: Build-Dep-Automatic = false

Am1rr3zA
la source