Der offensichtlichste Unterschied besteht darin, dass aptitude
eine Terminal-Menüoberfläche bereitgestellt wird (ähnlich wie bei Synaptic in einem Terminal), wohingegen apt-get
dies nicht der Fall ist.
Betrachtet man nur die Befehlszeilenschnittstellen, so sind sie sich ziemlich ähnlich, und zum größten Teil ist es wirklich egal, welche Sie verwenden. In den neuesten Versionen von beiden wird nachverfolgt, welche Pakete manuell installiert wurden und welche als Abhängigkeiten installiert wurden (und daher zum automatischen Entfernen berechtigt sind). Tatsächlich glaube ich, dass die beiden Tools in jüngerer Zeit aktualisiert wurden, um tatsächlich dieselbe Datenbank von manuell oder automatisch installierten Paketen gemeinsam zu nutzen. Daher sind Fälle, in denen Sie etwas mit apt-get installieren und dann von aptitude deinstallieren möchten, meist eine Sache von die Vergangenheit.
Es gibt ein paar kleine Unterschiede:
- aptitude entfernt automatisch in Frage kommende Pakete, wohingegen apt-get einen separaten Befehl benötigt, um dies zu tun
- Die Befehle für Upgrade vs. Dist-Upgrade wurden entsprechend den wahrscheinlich genaueren Bezeichnungen Safe-Upgrade bzw. Full-Upgrade umbenannt.
- aptitude führt tatsächlich nicht nur die Funktionen von apt-get aus, sondern auch einige seiner Begleittools wie apt-cache und apt-mark.
- aptitude hat eine etwas andere Abfragesyntax für die Suche (im Vergleich zu apt-cache)
- aptitude verfügt über die Befehle why und why-not , mit denen Sie erfahren, welche manuell installierten Pakete eine Aktion verhindern, die Sie möglicherweise ausführen möchten.
- Wenn die Aktionen (Installieren, Entfernen, Aktualisieren von Paketen), die Sie ausführen möchten, Konflikte verursachen, kann aptitude mehrere mögliche Lösungen vorschlagen. apt-get sagt nur "Es tut mir leid, Dave, das darfst du nicht."
Es gibt noch andere kleine Unterschiede, aber das sind die wichtigsten, die ich mir vorstellen kann.
Kurz gesagt, Aptitude gehört mit Synaptic und anderen übergeordneten Paketmanager-Frontends besser in die Kategorie. Es ist einfach so, dass es auch eine Befehlszeilenschnittstelle gibt, die apt-get ähnelt.
Bonusrunde: Was ist Wajig?
Erinnerst du dich, wie ich diese "Begleiter" -Tools wie apt-cache und apt-mark erwähnt habe? Nun, es gibt eine Menge von ihnen, und wenn Sie sie häufig verwenden, können Sie sich möglicherweise nicht erinnern, welche welche Befehle bereitstellen. Wajig ist eine Lösung für dieses Problem. Es ist im Wesentlichen ein Dispatcher, eine Hülle um all diese Werkzeuge. Es gilt auch sudo, wenn nötig. Wenn Sie sagen wajig install foo
, sagt wajig "Ok, install
wird von bereitgestellt apt-get
und erfordert Administratorrechte" und wird ausgeführt sudo apt-get install foo
. Wenn Sie sagen wajig search foo
, sagt wajig "Ok, search
wird von bereitgestellt apt-cache
und erfordert keine Administratorrechte" und wird ausgeführt apt-cache search foo
. Wenn Sie wajig anstelle von apt-get, apt-mark, apt-cache und anderen verwenden, wird dieses Problem nie auftreten:
$ apt-get search foo
E: Invalid operation search
Wenn Sie wissen möchten, was wajig hinter den Kulissen tut, welche Tools es verwendet, um einen bestimmten Befehl zu implementieren, verfügt es über --simulate
und --teaching
Modi.
Zwei wajig Befehle, die ich oft benutze, sind wajig listfiles foo
und wajig whichpkg /usr/bin/foo
.