Mit
apt-cache
können die verschiedensten Abfragen zu den
bekannten Paketen (also auch zu den noch nicht installierten) erstellt werden. Dies
beschränkt sich nicht nur auf Paketnamen oder die zu einem Paket gehörenden Dateinamen,
sondern es können auch Informationen zu den Metadaten erfragt werden.
Wenn Sie nicht die Option -h
oder --help
benutzen, muss mindestens eines der folgenden
Kommandos angegeben werden.
add
fügt die angegebene Package-Datei dem Package-Cache hinzu.
gencaches
Diese Option bewirkt das Gleiche wie apt-get check
. Es werden die Source- und
Package-Caches aus den Informationen in /etc/apt/sources.list
und /var/lib/dpkg/status
erstellt.
showpkg
Diese Option zeigt Informationen über die weiterhin auf der
Kommandozeile angegebenen Pakete. Es werden die verfügbaren Versionen
der Pakete sowie die gesamten Abhängigkeiten dieser Pakete angezeigt.
Hierbei wird zwischen so genannten „Forward“-Dependencies
und „Reverse“-Dependencies unterschieden.
Forward-Dependencies (dies sind die im normalen Sprachgebrauch
verwendeten Abhängigkeiten) beziehen sich auf die Pakete, die das
angefragte Paket benötigt, um einwandfrei zu funktionieren.
Reverse-Dependecies beschreiben die Pakete, die das angefragte Paket
benötigen, um zu funktionieren. Ein Beispiel: apt-cache showpkg bash
gibt folgendes
Ergebnis aus:
Package: bash Versions: 2.05a-12(/var/lib/apt/lists/192.168.1.1_home_ftp_debian_dists_sid_ main_binary-i386_Packages)(/var/lib/dpkg/status) 2.05a-11(/var/lib/apt/lists/192.168.1.1_home_ftp_debian_dists_woody_ main_binary-i386_Packages) Reverse Depends: kernel-patch-ltt,bash 2.0 kernel-patch-lkcd,bash 2.0 kernel-patch-kdb,bash 2.0 kernel-patch-acl,bash 2.0 horde2,bash cron-apt,bash 2.03-6 common-lisp-controller,bash 2.04-9 cdcontrol,bash 2.0 bash-doc,bash 2.03-1 bash-builtins,bash 2.05a-12 base-files,bash 2.03-3 txt2regex,bash 2.04 openmosix,bash 2.0 mosix,bash 2.0 mkrboot,bash mason,bash kernel-patch-ulog,bash 2.0 kernel-patch-ttl,bash 2.0 kernel-patch-ltt,bash 2.0 kernel-patch-kiobuf-bigmem,bash 2.0 kernel-patch-kiobuf,bash 2.0 kernel-patch-kdb,bash 2.0 kernel-patch-irc,bash 2.0 kernel-patch-badram,bash 2.0 htmlheadline,bash 2.04-1 horde,bash 2.03-6 gopherweblink,bash gibraltar-bootsupport,bash foomatic-bin,bash 2.05 diffmon,bash 2.0 cron-apt,bash 2.03-6 common-lisp-controller,bash 2.04-9 colorgcc,bash cdcontrol,bash 2.0 bug,bash 2.04-1 bash-doc,bash 2.03-1 bash-builtins,bash 2.05a-11 base-files,bash 2.03-3 Dependencies: 2.05a-12 - base-files (2 2.1.12) libc6 (2 2.2.4-4) libncurses5 (2 5.2.20020112a-1) grep-dctrl (0 (null)) bash-completion (0 (null)) bash-doc (1 2.05-1) bash-completion (0 (null)) 2.05a-11 - base-files (2 2.1.12) libc6 (2 2.2.4-4) libncurses5 (2 5.2.20020112a-1) bash-completion (0 (null)) bash-doc (1 2.05-1) bash-completion (0 (null)) Provides: 2.05a-12 - 2.05a-11 - Reverse Provides:
Es müssen also, damit dieses Paket funktioniert, mindestens die unter
„Dependencies“ aufgeführten Pakete installiert sein.
Eine weitere wichtige Information sind die „Reverse
Depends“. Dies sind Pakete, die von diesem Paket (bash
) abhängen.
stats
Über den aktuellen Cache wird eine Statistik ausgegeben. Es sind keine weiteren Argumente notwendig. Folgende Informationen werden ausgegeben:
fr@sushi:~$ apt-cache stats Total Package Names : 8953 (358k) Normal Packages: 6872 Pure Virtual Packages: 259 Single Virtual Packages: 176 Mixed Virtual Packages: 115 Missing: 1531 Total Distinct Versions: 9133 (438k) Total Dependencies: 47613 (1143k) Total Ver/File relations: 19322 (309k) Total Provides Mappings: 1889 (37.8k) Total Globbed Strings: 110 (1273) Total Dependency Version space: 179k Total Slack space: 86.3k Total Space Accounted for: 2374k
Total Package Names - Anzahl der Paketnamen, die im Cache gefunden wurden.
Normal Packages - Dies sind Pakete, deren Namen in einer Abhängigkeit zu einem anderen Paket stehen; hierunter fällt eine große Zahl der Pakete.
Pure Virtual Packages - Anzahl der
„virtuellen“ Paketnamen im Cache. Dies sind Pakete, die
ein Paket zur Verfügung stellen, deren Name aber nichts mit diesem zu tun
hat. Als Beispiel sei hier mail-transport-agent
genannt: Einige
Pakete (beispielsweise exim
, qmail
und sendmail
) stellen das Paket mail-transport-agent
zur Verfügung, es
gibt aber kein Programm mit dem Namen mail-transport-agent
.
Single Virtual Packages - Dies ist die Anzahl der
Pakete, die ein virtuelles Paket zur Verfügung stellen, das aber nur
einmal im Cache auftaucht. Das virtuelle Paket X11-text-viewer
wird beispielsweise nur
von xless
zur Verfügung gestellt.
Mixed Virtual Packages - Anzahl der Pakete, die
sowohl als virtuelle als auch als reale Pakete vorhanden sind. debconf
ist als reales Paket vorhanden,
wird aber auch von debconf-tiny
zur Verfügung gestellt.
Missing - Pakete, die in einer Abhängigkeit benannt werden, aber nicht im Cache zu finden sind. Dies kann vorkommen, wenn kein Zugriff auf eine komplette Debian Distribution gegeben ist oder wenn Pakete aus der Distribution entfernt wurden.
Total Distinct Versions - Die Anzahl der Paketversionen im Cache. Diese ist im Normalfall gleich der Anzahl der gesamten Pakete. Wenn jedoch zwei Distributionen (beispielsweise „stable“ und „testing“) benutzt werden, kann es vorkommen, dass mehrere Versionen eines Pakets verfügbar sind. In diesem Fall kann die Zahl deutlich über der der gesamten Pakete liegen.
Total Dependencies - Die Anzahl der gesamten Abhängigkeiten zwischen allen Paketen im Cache.
Total Ver/File relations - Die Gesamtzahl an Version/Datei-Beziehungen.
Total Provides Mappings - Die Gesamtzahl an Bereitstellungen von Mappings.
Total Globbed Strings - Gesamtanzahl von Mustern
Total Dependency Version space - Gesamtmenge an Abhängigkeits/Versionsspeicher.
Total Slack space - Gesamtmenge an Slack Speicher.
Total Space Accounted for - Gesamtmenge des Speichers.
dump
Zeigt eine kurze Information zu jedem Paket an. Dies ist für den normalen Benutzer wenig sinnvoll und ist zur Fehlersuche für Entwickler gedacht.
dumpavail
Zeigt eine Liste der verfügbaren Pakete.
unmet
Zeigt eine Zusammenfassung aller nicht erfüllten Abhängigkeiten.
show
Hat einen ähnlichen Effekt wie das Kommando dpkg --print-avail
und zeigt die
Paketinformationen für die angegebenen Pakete.
search
Führt eine Volltextsuche über alle verfügbaren Paketdateien durch. Es
können reguläre Ausdrücke benutzt werden. Die Paketnamen und
Beschreibungen werden nach dem Suchbegriff durchsucht, und es werden der
Paketname und die Kurzbeschreibung der entsprechenden Pakete ausgegeben.
Wenn die Option --full
angegeben wird, entspricht die
Ausgabe der von show
. Mit der Option --names-only
wird die Paketbeschreibung
nicht durchsucht; die Suche beschränkt sich auf den Paketnamen.
Mehrere Suchargumente können angegeben werden und werden dann über eine UND-Verknüpfung ausgewertet.
depends
Zeigt alle Abhängigkeiten eines Pakets an. Weiterhin werden alle anderen Pakete angezeigt, die die geforderten Abhängigkeiten erfüllen können.
fr@sushi:~$ apt-cache depends bash bash Depends: base-files PreDepends: libc6 PreDepends: libncurses5 Suggests: grep-dctrl Conflicts: <bash-completion> Replaces: bash-doc Replaces: <bash-completion>
policy
Die Option policy
zeigt zu einem Paket die
installierte sowie die verfügbaren Versionen aus den erreichbaren
Quellen an.
fr@sushi:~$ apt-cache policy bash bash: Installed: 2.05b-5 Candidate: 2.05b-5 Version Table: *** 2.05b-5 0 500 ftp://ftp.freenet.de sid/main Packages 100 /var/lib/dpkg/status 2.05b-3 0 500 ftp://ftp.freenet.de testing/main Packages 500 ftp://ftp.freenet.de sarge/main Packages 2.05a-11 0 500 ftp://ftp.freenet.de woody/main Packages
pkgnames
Zeigt eine Liste aller Paketnamen. Optional kann eine Zeichenkette angegeben werden, die als Suchpräfix verwendet wird.
dotty
Dieser Option kann eine Liste von Paketnamen mitgegeben
werden. Die Ausgabe erfolgt in einem Format, das vom Programm dot
aus dem Paket GraphVis (http://www.research.att.com/sw/tools/graphviz/)
gelesen werden kann. GraphVis ist auch als Debian Paket verfügbar, kann
also mittels apt-get
installiert werden. Mit dieser
Option und dem Programm dot
kann eine grafische Darstellung der
Paketabhängigkeiten erstellt werden. Normalerweise werden alle
Abhängigkeiten verfolgt, was zu sehr großen Dateien führen kann.
Um die Grafik etwas zu verkleinern, kann die Zeile
APT::Cache::GivenOnly "true";
in der APT-Konfigurationsdatei /etc/apt/apt.conf
hinzugefügt werden. Dies bewirkt, dass nur die auf der
Kommandozeile angegebenen Pakete ausgewertet werden. Es kann passieren,
dass eine sehr lange Liste von Paketen zum Abbruch des Programmes führt.
Das Ergebnis ist eine Grafik, die unterschiedliche Symbole für Pakete verwendet. Normale Pakete werden als schwarzes Rechteck dargestellt. Direkt abhängige Pakete (provides) werden als Trapez dargestellt. Diamant-förmige Pakete sind mixed-provides, und fehlende Pakete werden als Hexagon dargestellt. Orange-farbene Rechtecke bedeuten, dass die rekursive Suche abgebrochen wurde. Blaue Linien stellen Pre-Dependencies dar, und grüne Linien stehen für Konflikte.
Hier zwei kleine Beispiele dafür, wie diese Option sinnvoll eingesetzt werden kann:
apt-cache dotty vim | dot -Tps > packgraph.ps apt-cache dotty $(dpkg --get-selections | grep -v deinstall \ | awk 'print $1') | dot -Tps > packgraph.ps
Beide Beispiele erzeugen eine Postscript-Datei packgraph.ps
. Diese kann beispielsweise
mit dem Programm gv
angezeigt werden.
© 1999 - 2024 | Das Debian GNU/Linux Anwenderhandbuch von Frank Ronneburg steht unter einer Creative Commons Namensnennung-Nicht Kommerziell-Keine Bearbeitung 3.0 Deutschland Lizenz.