apt vs. apt-get: Was ist der Unterschied unter Linux?

Veröffentlicht: 2022-06-16
Linux-Terminal auf einem Laptop vor rotem Hintergrund.
Fatmawati Achmad Zaenuri/Shutterstock

Warum haben Debian-basierte Linux-Distributionen sowohl apt als auch apt-get ? Hat apt apt-get ersetzt oder haben sie unterschiedliche Zwecke? Wir erklären die Beziehung zwischen diesen beiden Befehlen.

Das Debian-Paketverwaltungssystem

Eine große Anstrengung beim Erstellen einer Linux-Distribution ist das Entwerfen und Erstellen eines Paketverwaltungssystems. Ihre Benutzer müssen eine Möglichkeit haben, Softwarepakete zu installieren und zu deinstallieren. Dazu ist Software erforderlich, um die Paketdateien aus Ihrem Software-Repository abzurufen und sie korrekt auf den Computern der Benutzer zu installieren.

Funktionsweise von Softwareinstallations- und Paketmanagern unter Linux
VERWANDTE Funktionsweise von Softwareinstallations- und Paketmanagern unter Linux

Das ist kein kleines Unterfangen. Selbst wenn man das Software-Engineering beiseite legt, kostet das Hosten der Software-Repositories Zeit, Mühe und Kosten. Das ist einer der Gründe, warum so viele „neue“ Linux-Distributionen Ableitungen einer bestehenden Linux-Distribution sind.

Dies führt zu Familien oder Genealogien von Linux-Distributionen, wie den auf Debian basierenden Distributionen, den auf Red Hat basierenden Distributionen, den auf Arch basierenden Distributionen und so weiter.

Die Debian-Distributionsfamilie – einschließlich Ubuntu und aller von Ubuntu abgeleiteten Distributionen – verwendet den Debian-Paketmanager. Dabei werden Paketdateien mit der Dateierweiterung „.deb“ verwendet, die als DEB-Dateien bezeichnet werden. DEB-Dateien sind komprimierte Dateien, die andere Archivdateien enthalten. Die Archivdateien enthalten die ausführbaren Dateien, Manpages, Bibliotheken usw. der Anwendung.

So installieren Sie eine DEB-Datei unter Linux
RELATED So installieren Sie eine DEB-Datei unter Linux

Die Installation der Software aus einer DEB-Datei bedeutet, dass Sie alle diese Komponentendateien entpacken und an den richtigen Speicherorten auf Ihrem Computer ablegen müssen. Es erfordert auch die Interaktion mit dem Betriebssystem und der Desktop-Umgebung, damit die Anwendung in Anwendungssuchen angezeigt wird und ihr Symbol zu Docks oder Systemmenüs hinzugefügt werden kann.

Anzeige

Die Befehle apt-get und apt machen das beide. Aber warum haben wir zwei Befehle für dasselbe?

Die Kette der Befehl

Das Paket, das die eigentliche Installation durchführt, heißt dpkg . Es ist eigentlich eine Familie von Befehlen, einschließlich dpkg-split , dpkg-trigger und dpkg-divert . Diese werden bei Bedarf von den Tools der Advanced Package Tool Suite oder APT aufgerufen. APT ist eine weitere Sammlung von Tools, einschließlich apt-get , apt-cache und apt .

Der Befehl dpkg wird als Low-Level-Befehl betrachtet. Jenseits der einfachsten Interaktionen wird es mit sehr vielen Optionen sehr kompliziert. Der Befehl apt-get fungiert als Frontend für die Befehlsfolge von dpkg . Das vereinfacht die Sache erheblich. apt-get ist als benutzerorientierter Befehl und nicht als Low-Level-Hintergrundbefehl konzipiert. Trotzdem wurde trotz seiner dem Menschen zugewandten Rolle ein anderer Befehl namens apt-cache verwendet, um dem Benutzer Informationen anzuzeigen.

Der apt -Befehl bietet eine weitere Möglichkeit, über ein zugänglicheres und benutzerfreundlicheres Befehlszeilentool mit dpkg zu „sprechen“. Es bietet eine Teilmenge der Funktionen von apt-get , aber es ist eine große Teilmenge und es bietet alle häufig verwendeten Funktionen und enthält auch Funktionen von apt-cache .

Anzeige

Linux Mint muss hier besonders erwähnt werden. Die Betreuer von Linux Mint haben ihre eigene Version von apt entwickelt, die ein Python-Wrapper für apt-get ist. Das ist nicht die apt , über die wir hier sprechen. Wir beziehen uns auf das Mainstream-Debian apt , das 2014 veröffentlicht wurde und im Benutzerbereich Aufmerksamkeit und Zugkraft erlangte, als es 2016 in Ubuntu 16.04 aufgenommen wurde.

Die Unterschiede zwischen apt und apt-get

dpkg ist also die Low-Level-Hintergrundanwendung. Der Befehl apt-get ist eine voll funktionsfähige, aber vereinfachte Schnittstelle zu dpkg , und apt ist eine benutzerfreundlichere, aber etwas abgespeckte Version von apt-get .

So lösen Sie Abhängigkeiten beim Kompilieren von Software auf Ubuntu
VERWANDT So lösen Sie Abhängigkeiten beim Kompilieren von Software auf Ubuntu

Aber apt-get und apt bieten mehr als nur eine einfache Schnittstelle zu dpkg . Sie tun Dinge, die dpkg nicht tut. Sie werden Dateien aus Repositorys abrufen und versuchen, bei fehlenden Abhängigkeiten und Konflikten zu helfen.

Der apt -Befehl macht wiederum einige Dinge, die apt-get nicht tut. Es bietet mehr Informationen der Art, die der durchschnittliche Benutzer während einer Installation sehen möchte, und unterdrückt einige der undurchsichtigeren Informationen, die apt-get anzeigt. apt gibt überlegenes visuelles Feedback und verwendet Farbhervorhebungen und Fortschrittsbalken im Terminalfenster.

Es gibt einige allgemeine Befehle zwischen apt und apt-get . Allen diesen Befehlen kann apt oder apt-get vorangestellt werden und verhalten sich gleich:

  • Paketname installieren : Installieren Sie ein Paket.
  • remove packagename : Entfernt (deinstalliert) ein Paket.
  • purge packagename : Entfernt ein Paket und seine Konfigurationsdateien.
  • update packagename : Aktualisieren Sie die Repository-Informationen.
  • upgrade : Alle Pakete aktualisieren.
  • autoremove : Entfernen Sie Bibliotheken und andere Pakete, die nicht mehr benötigt werden.

Die Option apt full-upgrade ersetzt die Option apt-get dist-upgrade .

Dies sind neue Befehle für apt :

  • apt search : Suche nach einem Paketnamen in den Repositories. Dies ist dasselbe wie die apt-cache search
  • apt show : Informationen zu einem Paket anzeigen. Dies ist dasselbe wie apt-cache show .
  • Option apt list : Zeigt Listen installierter oder aktualisierbarer Pakete an.
  • apt edit-sources : Bearbeitet direkt die Liste der Repositorys, in denen apt nach Paketen sucht.

Installieren einer Anwendung

Sie können apt search verwenden, um zu sehen, ob ein Paket in den Repositories existiert, oder um zu überprüfen, ob Sie den richtigen Namen für das Paket haben. Angenommen, Sie möchten Scribus installieren, kennen aber den Paketnamen nicht. Sie könnten versuchen, nach scribus-desktop zu suchen.

 passende suche scribus-desktop 

Durchsuchen der Repositories nach einem Paket namens scribus-desktop

Diese Suche hat nichts gefunden. Wir versuchen es noch einmal mit einem kürzeren, allgemeineren Suchhinweis.

 apt search scribus 

Durchsuchen der Repositories nach einem Paket namens scribus

Anzeige

Dies gibt mehrere Treffer zurück, und wir können sehen, dass es eines namens „scribus“ gibt, und dass es definitiv so aussieht, als wäre es das Kernpaket für die Desktop-Publishing-Anwendung Scribus. Der Befehl apt show gibt uns mehr Details.

 apt show scribus 

Verwenden Sie apt show, um mehr über das Scribus-Paket zu erfahren

Wir erhalten einen Dump mit Informationen über das Paket, einschließlich dessen, was installiert wird, und einer Beschreibung der Software.

Informationen zum Scribus-Paket

Es schlägt auch andere Pakete vor, die je nach Bedarf erforderlich sein könnten.

Um das Paket zu installieren, müssen wir sudo verwenden.

 sudo apt installiere scribus 

Installation des Scribus-Pakets

Die Dateien werden aus den Repositories abgerufen. Die aktuell abgerufene Datei ist braun hervorgehoben.

Dateiabruf als Teil der Installation eines Pakets

Wenn die Dateien abgerufen wurden, werden sie installiert. Der Fortschritt der Installation wird als Prozentsatz in Ziffern und als Fortschrittsbalken angezeigt.

Die Installation des Pakets mit Prozent- und Fortschrittsbalken

Andere Befehle

Die Befehle apt list und apt edit-sources sind Optionen in apt , die in apt-get nicht vorhanden sind.

Anzeige

Der Befehl apt list kann mit den Optionen --installed oder --upgradeable verwendet werden, um die Pakete anzuzeigen, die auf Ihrem Computer installiert sind und welche aktualisiert werden könnten.

Um die Liste der auf Ihrem Computer installierten Anwendungen anzuzeigen, verwenden Sie:

 apt list --installiert 

Verwenden Sie apt, um installierte Anwendungen aufzulisten

Wenn wir durch die Ausgabe scrollen, sehen wir zwei Einträge für unsere neu installierte Scribus-Anwendung.

Eine Liste der installierten Anwendungen

Um zu sehen, ob eine der installierten Anwendungen aktualisiert werden kann, verwenden Sie die Option --upgradeable .

 apt-Liste - aktualisierbar 

Eine Liste der Anwendungen, die aktualisiert werden können

Der apt Befehl bietet Ihnen auch eine Möglichkeit, die Informationen zu bearbeiten, die über die Repositories gespeichert sind, in denen apt nach Paketen sucht. Tun Sie dies nur, wenn Sie wissen, was Sie tun.

 sudo apt edit-sources 

Bearbeiten Sie die Repository-Informationen mit apt

Anzeige

Dieser Befehl öffnet Ihren Standard-Editor und lädt die Datei mit den Repository-Informationen.

Im Nano-Editor geöffnete Repository-Datendatei

Soll ich apt oder apt-get verwenden?

Der Befehl apt-get wird nicht oft aktualisiert, und das ist gut so. Es muss die Abwärtskompatibilität aufrechterhalten. Abwärtskompatibilität ist für apt kein so großes Problem. Es wird als benutzerseitiger Befehl betrachtet und behandelt.

Verwenden Sie für den täglichen Gebrauch apt .

Wenn Sie irgendetwas skripten, das mit der Paketinstallation zu tun hat, verwenden Sie apt-get . Das gibt Ihnen die größte Chance auf Portabilität und Kompatibilität in Ihren Skripten.

RELATED: The Beginner's Guide to Shell Scripting: The Basics