Nutzen Sie Pakete aus verschiedenen Paketquellen in
/etc/apt/sources.list (siehe Abschnitt 3.4, „Die Datei /etc/apt/sources.list verstehen“), ist
es hilfreich zu wissen, woher APT ein Paket bei der Installation oder
Aktualisierung entnehmen würde. Bei der Beantwortung dieser Frage helfen
Ihnen die Programme apt-cache, apt-show-versions, apt und
aptitude weiter – aber jedes auf seine Art.
Dazu rufen Sie apt-cache mit dem Schalter policy und ohne Angabe
eines Pakets auf. Das Programm untersucht daraufhin jede einzelne
Paketquelle, die Sie in /etc/apt/sources.list eingetragen haben. Das
Ergebnis der Analyse ist zweispaltig. In der linken Spalte erscheint ein
Zahlenwert zur Priorität des jeweiligen Eintrags, wie er von
apt-pinning genutzt wird (siehe dazu Kapitel 23, Paketformate mischen). In der
rechten Spalte sehen Sie die Paketquelle anhand der heruntergeladenen,
lokalen Paketliste mit zusätzlichen Informationen wie bspw. der
Veröffentlichung oder des Distributionsbereichs. Nachfolgende
Darstellung zeigt die Ausgabe für eine Standardinstallation von Debian
Wheezy in der Version 7.5 mit dem Nutzungsschwerpunkt Deutschland.
Bewertung der Paketquellen mit apt-cache policy.
$ apt-cache policy
Paketdateien:
100 /var/lib/dpkg/status
release a=now
500 http://security.debian.org/ wheezy/updates/non-free Translation-en
500 http://security.debian.org/ wheezy/updates/main Translation-en
500 http://security.debian.org/ wheezy/updates/contrib Translation-en
500 http://security.debian.org/ wheezy/updates/non-free i386 Packages
release v=7.0,o=Debian,a=stable,n=wheezy,l=Debian-Security,c=non-free
origin security.debian.org
500 http://security.debian.org/ wheezy/updates/contrib i386 Packages
release v=7.0,o=Debian,a=stable,n=wheezy,l=Debian-Security,c=contrib
origin security.debian.org
500 http://security.debian.org/ wheezy/updates/main i386 Packages
release v=7.0,o=Debian,a=stable,n=wheezy,l=Debian-Security,c=main
origin security.debian.org
500 http://ftp.de.debian.org/debian/ wheezy/non-free Translation-en
500 http://ftp.de.debian.org/debian/ wheezy/main Translation-en
500 http://ftp.de.debian.org/debian/ wheezy/main Translation-de_DE
500 http://ftp.de.debian.org/debian/ wheezy/main Translation-de
500 http://ftp.de.debian.org/debian/ wheezy/contrib Translation-en
500 http://ftp.de.debian.org/debian/ wheezy/non-free i386 Packages
release v=7.5,o=Debian,a=stable,n=wheezy,l=Debian,c=non-free
origin ftp.de.debian.org
500 http://ftp.de.debian.org/debian/ wheezy/contrib i386 Packages
release v=7.5,o=Debian,a=stable,n=wheezy,l=Debian,c=contrib
origin ftp.de.debian.org
500 http://ftp.de.debian.org/debian/ wheezy/main i386 Packages
release v=7.5,o=Debian,a=stable,n=wheezy,l=Debian,c=main
origin ftp.de.debian.org
Mit Pinning verwaltete Pakete:
$
Geben Sie hingegen beim Aufruf als Parameter einen Paketnamen an, prüft
apt-cache, ob das Paket bereits auf Ihrem System installiert ist oder
ob es ein neueres Paket gibt und falls ja, von welchem Paketmirror das
Paket in diesem Fall käme.
Beispiel 1 zeigt das Vorgehen anhand des Pakets gdm3. Im
vorliegenden Fall ist dieses bereits installiert (Status von dpkg)
Falls es das noch nicht wäre, käme das Paket aus dem deutschen
Debian-Repository.
Verfügbarkeit für das Paket gdm3 feststellen.
$ apt-cache policy gdm3
gdm3:
Installiert: 3.4.1-8
Installationskandidat: 3.4.1-8
Versionstabelle:
*** 3.4.1-8 0
500 http://ftp.de.debian.org/debian/ wheezy/main i386 Packages
100 /var/lib/dpkg/status
$
Beispiel 2 betrifft das Paket linux-libc-dev. Dieses ist bereits in Version 3.2.51-1 installiert, aber es gibt eine aktuellere Variante (3.2.57-3) sowie zusätzlich eine Sicherheitsaktualisierung (Security-Update) mit der Versionsnummer 3.2.46-1+deb7u1. In diesem Fall ist die Version 3.2.57-3 der Installationskandidat, da dieses Paket die aktuellste Variante darstellt.
Verfügbarkeit für das Paket linux-libc-dev feststellen.
$ apt-cache policy linux-libc-dev
linux-libc-dev:
Installiert: 3.2.51-1
Installationskandidat: 3.2.57-3
Versionstabelle:
3.2.57-3 0
500 http://ftp.de.debian.org/debian/ wheezy/main i386 Packages
*** 3.2.51-1 0
100 /var/lib/dpkg/status
3.2.46-1+deb7u1 0
500 http://security.debian.org/ wheezy/updates/main i386 Packages
$
Als Beispiel 3 steht das Paket kteatime im Fokus. Dieses ist noch nicht installiert und könnte nachgezogen werden. Dabei käme das Paket aus dem deutschen Debian-Repository.
Verfügbarkeit für das Paket kteatime feststellen.
$ apt-cache policy kteatime
kteatime:
Installiert: (keine)
Installationskandidat: 4:4.8.4-1
Versionstabelle:
4:4.8.4-1 0
500 http://ftp.de.debian.org/debian/ wheezy/main i386 Packages
$
Hier spielen die Programme apt-cache, rmadison, aptitude, apt und
apt-show-versions ihre Stärken aus. Darauf gehen wir ausführlich in
Abschnitt 8.13, „Verfügbare Versionen eines Paketes anzeigen“ ein.