Tutorial

Linux-Paketmanager mit der Shell verwalten

Zum Erfolgsrezept von Debian und damit auch von Ablegern wie Ubuntu gehört die Paketverwaltung über das Advanced Package Tool, kurz APT. Grafische Oberflächen gibt es dazu zuhauf, aber nur in der Shell kann APT alle Vorzüge ausspielen.

Die Installation und Aktualisierung von Programmen aus Online-Paketquellen ist die einfachste Methode, eine Linux-Distribution mit den gewünschten Programmen auszustatten und aktuell zu halten. Was heute so selbstverständlich erscheint, war nicht immer so einfach: In den Anfangsjahren von Linux gehörte Software-Installation zu den härteren Nüssen, die es durch die manuelle Suche nach den verlangten Bibliotheken und vorausgesetzten Programmen zu knacken galt.

Der Paketmanager APT (Advanced Packaging Tool) für das DEB-Format ist mit seinen Tools eine der großen Errungenschaften von Debian, die Ubuntu und Co. geerbt haben. Als eine der ersten Distributionen bekam Debian vor 15 Jahren mit APT einen Werkzeugkasten für die Suche und Installation von Paketen aus Online-Repositories, der Aktualisierung und Paketabhängigkeiten selbständig auflöst. Dabei ist APT nur eine Paketverwaltung und damit eine Ergänzung für das Rahmenwerk des Paketmanagers dpkg. APT hält aber eine eigene Liste der verfügbaren Pakete aus Online-Paketquellen (Repositories) vor und ist so komfortabel, dass Debian/Ubuntu-Anwender eher mit APT als mit dpkg in Berührung kommen.

Während Einsteiger mit grafischen Front-Ends wie Synaptic oder dem vergleichsweise umständlichen Ubuntu Software Center erst mal gut bedient sind, liefern die Kommandozeilen-Tools apt-get und apt-cache viele clevere Lösungen zur Paketverwaltung für anspruchsvolle Anwender.

Genaue Suche: Pakete gezielter finden

Eine Suche in der Liste verfügbarer Pakete mit dem Kommando

apt-cache search [Suchbegriff]

durchsucht Paketnamen und zugehörige Beschreibungen (Beispiel: apt-cache search putty). Die resultierende Liste ist lang und enthält nicht nur relevante Einträge. Für einen ersten Überblick ist dies ausreichend, aber wer ein bestimmtes Software-Paket aufspüren will, braucht feinere Suchergebnisse. Nur in den Paketnamen und nicht auch noch in den Beschreibungen suchen Sie mit

apt-cache search --names-only [Suchbegriff]

präziser. Ebenfalls genauer machen mehrere Suchbegriffe eine Suche, die apt-cache automatisch als UND-Suche interpretiert:

apt-cache search --names-only [Suchbegriff1] [Suchbegriff2]

Ein Filtern der Ergebnisse mit grep ist möglich, aber meist nicht nötig.

Die Kurzbeschreibung von „apt-cache search [Suchbegriff]“ ist stets sehr knapp gehalten und nicht immer aussagekräftig, während das grafische Tool Synaptic immer eine längere Beschreibung liefert. Diese Beschreibung kann auch apt in der Kommandozeile mit dem Befehl

apt-cache show [Paketname]

abrufen. Mit APT 1.0 (ab Ubuntu 14.04, Mint 17, Debian 8) reicht dazu einfach der Befehl

apt show [Paketname]

aus.

Nadel im Heuhaufen: Eine Suche nach einer einzelnen Datei in den verfügbaren Paketen ist mit dem Zusatz-Tool apt-file möglich, das seine eigene Datenbank unterhält.
Nadel im Heuhaufen: Eine Suche nach einer einzelnen Datei in den verfügbaren Paketen ist mit dem Zusatz-Tool apt-file möglich, das seine eigene Datenbank unterhält.

Welches Paket enthält das gesuchte Programm genau? Es nicht immer offensichtlich, welche Pakete und Systembibliotheken ein Programm mitbringt. Zwar ist in der Paketdatenbank von APT die Beziehung von Paketen untereinander genau beschrieben, genaue Angaben zu enthaltenen Dateien sind aber nicht gespeichert. Deshalb gibt es für Debian und Ubuntu das Extra-Tool apt-file, welches Sie nachinstallieren sollten:

sudo apt-get install apt-file

Das frisch installierte Tool hat noch keine Ahnung von verfügbaren Programmpaketen und Dateien, deshalb müssen Sie apt-file erst mit den Repositories vertraut machen:

sudo apt-file update

Dabei baut apt-file seine eigene Datenbank auf, in der Sie anschließend mit

apt-file search [Dateiname]

nach den benötigten Programmpaketen suchen können.