apt/apt-cache

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Ein Terminal öffnen

  2. Root-Rechte erlangen

Inhaltsverzeichnis
  1. Kommandos
    1. apt-cache add
    2. apt-cache gencaches
    3. apt-cache showpkg
    4. apt-cache stats
    5. apt-cache showsrc
    6. apt-cache dump
    7. apt-cache dumpavail
    8. apt-cache unmet
    9. apt-cache show
    10. apt-cache search
    11. apt-cache depends
    12. apt-cache rdepends
    13. apt-cache pkgnames
    14. apt-cache dotty
      1. Auswertung von dotty
    15. apt-cache xvcg
    16. apt-cache policy
    17. apt-cache madison
  2. Optionen
  3. Beispiele
    1. Bezug zu einem Paket
    2. Erweiterungspakete
    3. Ausgabe der Abhängigkeiten eines Pakets
    4. Ausgabe der Paketstruktur mit dott y
  4. Links

Wiki/Icons/Oxygen/utilities-file-archiver.png apt-cache führt keine Änderungen am System aus. Es dient allein der Anzeige und Manipulation der Daten im Paketcache bzw. der Paket-Metadaten. Der Paketcache ist die interne Datenbank, in der Informationen zu allen verfügbaren Paketen gespeichert werden.

Kommandos

Ein apt-cache-Befehl besteht aus den "Optionen", dem "Kommando" und eventuell der Angabe eines "Paket"-Namens. Generell kann man apt-cache als normaler Benutzer ausführen [1], vereinzelte Optionen können Root-Rechte [2] erfordern.

apt-cache [Option(en)] Kommando [Paket] 

Kommandos zu apt-cache
add Fügt eine Datei mit Paketindizes dem Paketcache hinzu.
gencaches Baut den Paketcache auf.
showpkg Zeigt die Meta-Informationen an.
stats Zeigt Statistiken zum Paketcache an.
showsrc Zeigt Informationen zum Quelltext eines Pakets an.
dump Zeigt eine Liste aller laut Paketcache verfügbaren Pakete an.
dumpavail Zeigt eine ausführliche Liste aller laut Paketcache verfügbaren Pakete an.
unmet Zeigt eine Liste aller nicht erfüllten Abhängigkeiten an.
show Zeigt die Paketinformationen zu einem oder mehreren Paketen an.
search Durchsucht die Paketinformationen nach einem oder mehreren Suchbegriffen.
depends Zeigt eine Liste der Abhängigkeiten der Pakete.
rdepends Zeigt eine Liste der Pakete, die vom eingegebenen Paket abhängen.
pkgnames Zeigt eine Liste von Paketnamen, die mit dem Suchbegriff anfangen.
dotty Erstellt einen Graphen der Abhängigkeiten des Pakets, der mit dotty verarbeitet werden kann.
xvcg Erstellt einen Graphen der Abhängigkeiten des Pakets, der mit xvcg verarbeitet werden kann.
policy Zeigt die Prioritäten der Quellen oder eines Pakets an.
madison Zeigt die verfügbaren Versionen eines Pakets in den verschiedenen Quellen an.

apt-cache add

add fügt einen in einer Datei gespeicherten Paketindex dem Paketcache hinzu. add fehlt in der deutschen Übersetzung der Manpage.

apt-cache add DATEI 

apt-cache gencaches

gencache baut den Paketcache sowie die Liste der installierten Programme neu auf und prüft auf fehlende Abhängigkeiten. Diese Aktion wird nach dem Download der Quellen durch apt-get update angestoßen. Der selbe Vorgang wird von apt-get check angestoßen. Erfordert Rootrechte.

sudo apt-cache gencaches 

apt-cache showpkg

showpkg zeigt detaillierte Informationen zu einem Paket an. Sie bestehen aus den verschiedenen verfügbaren Versionen in allen Quellen sowie den eigentlichen Paketinformationen inklusive der Abhängigkeiten. showpkg benötigt die Angabe mindestens eines Paketnamens, mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden. In diesem Fall werden die Informationen nacheinander ausgegeben.

apt-cache showpkg PAKET1 [PAKET2]  

apt-cache stats

stats zeigt eine ausführliche Übersicht der Statistiken zum Paketcache an, unter anderem die Anzahl der gelisteten Pakete und die Größe im Dateisystem. Es sind keine weiteren Optionen erforderlich.

apt-cache stats 

apt-cache showsrc

showsrc zeigt detaillierte Informationen zum verfügbaren Quelltext eines Pakets an. Diese bestehen aus den Prüfsummen der Quelltextarchive und den Abhängigkeiten, die zum Kompilieren des Quelltexts benötigt werden. showsrc benötigt die Angabe mindestens eines Paketnamens, mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden. In diesem Fall werden die Informationen nacheinander ausgegeben.

apt-cache showsrc PAKET1 [PAKET2]  

apt-cache dump

dump zeigt eine Liste aller verfügbaren Pakete im Paketcache an, inklusive der Abhängigkeiten und weiteren Informationen zum Paketcache. Diese Informationen werden nur im Fehlerfall benötigt.

apt-cache dump 

apt-cache dumpavail

dumpavail zeigt eine Liste aller verfügbaren Pakete im Paketcache, der Programmversionen und der zugehörigen Paketbeschreibungen an.

apt-cache dumpavail 

apt-cache unmet

unmet zeigt eine Liste der nicht erfüllten Abhängigkeiten an. Diese Liste beinhaltet auch die nicht installierten Vorschläge der Pakete. unmet kann mit und ohne Angabe von Paketnamen aufgerufen werden. Wird unmet ohne Paketnamen aufgerufen, werden die Informationen für alle installierten Pakete ausgegeben. Gibt man bestimmte Paketnamen an, müssen diese durch Leerzeichen getrennt angegeben werden.

apt-cache unmet 

oder

apt-cache unmet PAKET1 [PAKET2] 

apt-cache show

show zeigt detaillierte Informationen zu einem oder mehreren Paketen an. Diese Informationen beinhalten eine Liste der Abhängigkeiten, eine Beschreibung und die angebotene Version. show benötigt die Angabe mindestens eines Paketnamens, mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden. In diesem Fall werden die Informationen nacheinander ausgegeben.

apt-cache show PAKET1 [PAKET2]  

search durchsucht den Paketcache in den Namen und Beschreibungsfeldern nach dem Suchbegriff und gibt die entsprechenden Paketnamen aus. Der Suchbegriff kann auch ein Regulärer Ausdruck sein. Werden mehrere Suchbegriffe angegeben, werden ausschließlich Pakete angeben, in deren Beschreibung alle Begriffe gefunden wurden.

apt-cache search SUCHBEGRIFF  

apt-cache depends

depends gibt eine Liste der Pakete an, von denen das genannte Paket abhängt. depends benötigt die Angabe mindestens eines Paketnamens, mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden. In diesem Fall werden die Informationen nacheinander ausgegeben.

apt-cache depends PAKET1 [PAKET2]  

apt-cache rdepends

rdepends gibt eine Liste der Pakete an, die vom genannten Paket abhängen, die "Reverse Depends" (Rückwärtsabhängigkeiten). rdepends benötigt die Angabe mindestens eines Paketnamens, mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden. In diesem Fall werden die Informationen nacheinander ausgegeben.

apt-cache rdepends PAKET1 [PAKET2]  

apt-cache pkgnames

pkgnames gibt zu einem Suchbegriff eine Liste von Paketen aus, deren Namen mit dem Suchbegriff anfangen. Der Suchbegriff darf kein Regulärer Ausdruck sein. Wird pkgnames ohne Suchbegriff aufgerufen, gibt es alle verfügbaren Pakete inklusive der Metapakete aus.

apt-cache pkgnames SUCHBEGRIFF 

apt-cache dotty

dotty erstellt aus den Abhängigkeiten der genannten Pakete eine Vorlage, die mit dot zu einem Graph weiterverarbeitet werden kann. Die Nutzung ist mit einer Ausgabeumleitung[4] sinnvoll. dotty benötigt die Angabe mindestens eines Paketnamens, mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden.

apt-cache dotty PAKET1 [PAKET2]  

Auswertung von dotty

Zur Umwandlung der Ausgabe wird dot aus dem Paket Graphviz - Graph Visualization Software 🇬🇧 genutzt:

  • graphviz

Paketliste zum Kopieren:

sudo apt-get install graphviz 

Oder mit apturl die Pakete installieren. Link: apt://graphviz

Dotty kann keine größeren Zusammenhänge darstellen. Um die Berechnung in Grenzen zu halten, hilft folgende APT-Einstellung:

APT::Cache::GivenOnly "true";

in der APT-Konfiguration.

Die Option kann aber auch direkt beim Aufruf übergeben werden.

apt-cache xvcg

xvcg erstellt aus den Abhängigkeiten der genannten Pakete eine Vorlage, die mit xvcg zu einem Graph weiterverarbeitet werden kann. Die Nutzung ist mit einer Ausgabeumleitung[4] sinnvoll. xvcg benötigt die Angabe mindestens eines Paketnamens, mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden. Die Weiterverarbeitung benötigt die VCG Tools.

apt-cache xvcg PAKET1 [PAKET2]  

apt-cache policy

policy zeigt ohne Angabe eines Paketnamens eine Übersicht der Prioritäten der einzelnen Paketquellen an, mit Angabe von Paketnamen eine Übersicht der verfügbaren Versionen und der Prioritäten ihrer Quellen. Mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden. In diesem Fall werden die Informationen nacheinander ausgegeben.

apt-cache policy 

oder

apt-cache policy PAKET1 [PAKET2]  

apt-cache madison

madison zeigt eine tabellarische Übersicht, der in den Paketquellen verfügbaren Versionen eines Programms, an. madison benötigt die Angabe mindestens eines Paketnamens, mehrere Paketnamen müssen durch Leerzeichen voneinander getrennt angegeben werden. In diesem Fall werden die Informationen nacheinander ausgegeben.

apt-cache madison PAKET1 [PAKET2]  

Optionen

Kommandozeilenoptionen zu apt-cache
Lange Option Kürzel Beschreibung
--pkg-cache -p Angabe der Datei, in der der Paketcache gespeichert wird.
--src-cache -s Angabe der Datei, in der der Paketcache beim Herunterladen zwischengespeichert wird.
--quiet -q Ausgabe erzeugen, die weiterverarbeitet werden kann, z.B. Unterdrückung des Fortschrittsbalkens. -qq unterdrückt mehr Meldungen als -q.
--important -i Nur Abhängigkeiten und deren Abhängigkeiten in unmet und depends anzeigen.
--no-pre-depends
--no-depends
--no-recommends
--no-suggests
--no-conflicts
--no-breaks
--no-replaces
--no-enhances
Beeinflussen die Ausgabe von depends und rdepends
--full -f Ausgabe der kompletten Paketeinträge bei der Suche.
--all-versions -a Ausgabe aller verfügbaren Versionen (Kandidaten) bei der Suche nach einem Paket.
--no-all-versions Ausgabe der neuesten verfügbaren Version (Kandidat) bei der Suche nach einem Paket.
--generate -g Cache wird bei jedem Aufruf regeneriert. (Standard)
--no-generate Cache wird ohne automatische Regeneration benutzt.
--names-only -n Beschränkt die Suche auf die Paketnamen. Standard: Suche in Paketnamen und -beschreibung.
--all-names Zwingt pkgnames, auch virtuelle Pakete und fehlende Abhängigkeiten auszugeben.
--recurse Ermöglicht depends und rdepends eine rekursive Ausgabe, so dass alle Abhängigkeiten in einer Ausgabe erscheinen.
--installed Beschränkt die Ausgabe von depends und rdepends auf installierte Pakete.
--help -h Gibt einen kurzen Hilfetext aus und beendet das Programm.
--version -v Gibt die Version aus und beendet das Programm.
--config-file -c Ermöglicht die Angabe einer alternativen Konfigurationsdatei, die von der Standardkonfiguration abweicht.
--option -o Ermöglicht die Angabe einzelner abweichender Optionen bei Benutzung der Standardkonfiguration.

Beispiele

Bezug zu einem Paket

Steht ein Paket im Bezug zu einem anderen Paket, wird dies im Beschreibungstext erwähnt.

apt-cache -f search PROGRAMM 

sucht nach PROGRAMM in allen Paketnamen und -beschreibungen und gibt anschließend die kompletten Informationen aus.

Erweiterungspakete

Durch konsequente Namensgebung "Programm-Erweiterung" können verfügbare Erweiterungen mit pkgnames gefunden werden:

apt-cache pkgnames PROGRAMM 

gibt alle Paketnamen aus, die mit PROGRAMM anfangen, somit auch die verfügbaren Erweiterungen.

Ausgabe der Abhängigkeiten eines Pakets

apt-cache depends PAKET  

Ausgabe der Paketstruktur mit dott y

Im Beispiel wird das Paket xterm untersucht und der Graph als PNG ausgegeben.

apt-cache -o APT::Cache::GivenOnly=true dotty xterm | dot -Tpng > beispiel.png 

Die Ausgabe von apt-cache wird mit einer Umleitung an das Graphviz-Werkzeug dot übergeben, um eine Grafik (hier im PNG-Format, andere Formate sind möglich, siehe Manpage von dot) zu erzeugen.

Oder auch mit rekursiven Abhängigkeiten:

export PACKAGE=xterm && apt-cache -o APT::Cache::GivenOnly=true dotty $PACKAGE `apt-cache depends $PACKAGE --installed| grep "Hängt ab von:" | cut -d " " -f6` | dot -Tpng > beispiel.png