apt-get
war das erste Frontend – befehlszeilenbasiert – das innerhalb des Projekts entwickelt wurde.
synaptic
, aptitude
(das sowohl eine Schnittstelle im Textmodus wie eine graphische – wenn auch noch unvollständig – beinhaltet), wajig
, usw. Die meistempfohlene Schnittstelle, apt-get
, ist diejenige, die während der Debian-Installation verwendet wird und die auch wir in den Beispielen in diesem Abschnitt verwenden wollen. Bemerkenswert ist, dass die Befehlszeilen-Syntax von aptitude
sehr ähnlich ist. Wenn es größere Unterschiede zwischen aptitude
und apt-get
gibt, werden diese Unterschiede im Detail erläutert.
apt-get update
erledigt werden. Abhängig von der Geschwindigkeit Ihrer Internetverbindung kann diese Operation eine Weile dauern, da dies bedeutet, eine gewisse Anzahl von Packages
/Sources
/Translation-language-code
-Dateien, die mit der Entwicklung von Debian nach und nach größer und größer wurden (mindestens 10 MB für die Daten des Abscnitts main
). Selbstverständlich erfordert die Installation von einem CD-ROM Satz keinerlei Herunterladen – in diesem Fall ist die Operation sehr schnell.
apt-get install Paket
und apt-get remove Paket
. In beiden Fällen installiert APT automatisch die nötigen Abhängigkeiten oder löscht die Pakete, die von dem zu entfernenden Paket abhängen. Der Befehl apt-get purge Paket
ist mit einer vollständigen Deinstallation verbunden – auch die Konfigurationsdateien werden gelöscht.
sources.list
mehrere Distributionen enthält, ist es möglich, die Version des zu installierenden Pakets anzugeben. Eine bestimmte Versionsnummer kann mit aptitude install paket
=version
angefordert werden, aber die Angabe ihrer Urspungsdistribution (Stable, Testing oder Unstable) – mit apt-get install paket
/distribution
– wird für gewöhnlich bevorzugt. Mit diesem Befehl ist es möglich, zu einer älteren Paketversion zurückzukehren (falls Sie zum Beispiel wissen, dass sie gut funktioniert), vorausgesetzt sie ist noch in einer der von der Datei sources.list
genannten Quellen verfügbar. Ansonsten kann das Archiv snapshot.debian.org
zu Hilfe kommen (siehe die Seitenleiste WEITERE SCHRITTE Alte Paketversionen: snapshot.debian.org
).
Beispiel 6.3. Installation der unstable Version von spamassassin
#
apt-get install spamassassin/unstable
apt-get upgrade
oder aptitude safe-upgrade
(natürlich nach apt-get update
). Dieser Befehl sucht nach installierten Paketen, die aktualisiert werden können, ohne irgendwelche Pakete zu entfernen. Mit anderen Worten, es ist das Ziel, eine minimal invasive Aktualisierung sicher zu stellen. apt-get
ist ein wenig anspruchsvoller als aptitude
, weil es sich weigert, Pakete zu installieren, die zuvor nicht installiert waren.
apt-get
wählt grundsätzlich die neueste Versionsnummer aus (außer bei Paketen aus Experimental und stable-backports, die standardmäßig ignoriert werden, unabhängig von ihrer Versionsnummer). Falls Sie in Ihrer sources.list
Testing oder Unstable angegeben haben, wird apt-get upgrade
den größten Teil Ihres Stable-Systems auf Testing oder Unstable umstellen, was möglicherweise nicht Ihre Absicht war.
apt-get
in einer bestimmten Distribution nach aktualisierten Paketen suchen zu lassen, benutzen Sie die Option -t
oder --target-release
gefolgt vom Namen der gewünschten Distribution (zum Beispiel: apt-get -t stable upgrade
). Um das Angeben dieser Option bei jedem Aufruf von apt-get
zu vermeiden, können Sie APT::Default-Release "stable";
der Datei /etc/apt/apt.conf.d/local
hinzufügen.
apt-get dist-upgrade
benutzen („Distributions-Aktualisierung“). Mit dieser Anweisung vollzieht apt-get
die Aktualisierung selbst dann, wenn es einige veraltete Pakete entfernen oder neue Abhängigkeiten installieren muss. Dies ist ebenso der Befehl, den Benutzer verwenden, die täglich mit Debians Unstable-Veröffentlichung arbeiten und deren Entwicklung tagtäglich verfolgen. Es ist so einfach, dass es kaum einer Erklärung bedarf: APTs Ansehen begründet sich in seiner großartigen Funktionalität.
aptitude full-upgrade
ist der entsprechende aptitude
-Befehl obwohl dist-upgrade
ebenfalls akzeptiert wird (wiewohl überholt).
/etc/apt/apt.conf.d/
festzulegen. Erinnern Sie sich beispielsweise daran, dass es APT möglich ist, dpkg
anzuweisen, durch Dateikonflikte hervorgerufene Fehler zu ignorieren, indem Sie DPkg::Options { "--force-overwrite"; }
angeben.
Acquire::http::proxy "http://IhrProxy
:3128"
hinzu. Für einen FTP-Proxy schreiben Sie Acquire::ftp::proxy "ftp://IhrProxy
"
. Um mehr über die Konfigurationsoptionen heraus zu finden, lesen Sie die Handbuchseite apt.conf(5) mit dem Befehl man apt.conf
(für Einzelheiten zu Handbuchseiten siehe Abschnitt 7.1.1, „Handbuchseiten“).
-t
oder die Konfigurationsanweisung APT::Default-Release
festgelegt).
/etc/apt/preferences
Einträge mit den Namen der betroffenen Pakete, ihrer Version und Herkunft, sowie ihrer neuen Priorität hinzufügen.
/etc/apt/preferences
prüft, betrachtet es zuerst die spezifischsten Einträge (oftmals die Einträge, die das betreffende Paket beschreiben) und die allgemeineren (dies beinhaltet beispielsweise alle Pakete einer Distribution). Wenn mehrere allgemeine Einträge existieren, wird der erste Treffer genutzt. Die zur Verfügung stehenden Auswahlkriterien umfassen den Paketnamen und die zur Verfügung stellenden Quelle. Jede Paketquelle wird durch die Informationen in einer Release
-Datei beschrieben, die APT zusammen mit den Packages
-Dateien herunter lädt. Sie umfasst die Herkunft (bei Paketen der offiziellen Spiegel normalerweise "Debian", es können aber auch Personen- oder Organisationsnamen sein, falls es sich um Paketdepots Dritter handelt) und den Distributionsnamen (normalerweise Stable, Testing, Unstable oder Experimental bei den Debian von bereitgestellten Standarddistributionen) zusammen mit der Version (zum Beispiel 5.0 für Debian Lenny). Betrachten wir die Syntax und Mechanismus anhand einiger Praxisbeispiele.
/etc/apt/preferences
vornehmen:
Package: * Pin: release a=stable Pin-Priority: 900 Package: * Pin: release o=Debian Pin-Priority: -10
a=stable
bestimmt den Namen der ausgewählten Distribution. o=Debian
beschränkt den Umfang auf Pakete mit der Herkunft "Debian".
Package: perl Pin: version 5.14* Pin-Priority: 1001
man apt_preferences
anzeigen lassen können.
apt-get
versucht, die Pakete von anderen Distributionen zu übernehmen. Nachdem man vielleicht ein Stable System installiert hat, möchte man evtl. ein Software Paket aus Testing oder Unstable ausprobieren, ohne all zu weit vom ursprünglichen Zustand des Systems abzuweichen.
apt-get
verwaltet ein solches Nebeneinander sehr gut und beschränkt die Risiken sehr effektiv. Die beste Vorgehensweise ist, alle benutzten Distributionen in /etc/apt/sources.list
einzutragen (es gibt Leute, die immer alle drei Distributionen eintragen, aber beachten Sie, dass Unstable nur für erfahrene Anwender vorgesehen ist) und die Referenzdistribution mit dem APT::Default-Release
Parameter fest zu legen (siehe Abschnitt 6.2.3, „Das System aktualisieren“).
sources.list
-Datei gelistet. In diesem Fall können Sie apt-get install package
/testing
nutzen, um ein Paket aus Testing zu installieren. Sollte die Installation auf Grund von nicht auflösbaren Abhängigkeiten scheitern, lassen sich diese Abhängigkeiten in Testing durch Angabe des -t testing
Parameters lösen. Dies gilt gleichermassen für Unstable.
upgrade
und dist-upgrade
) in Stable vorgenommen, ausgenommen Pakete, die bereits auf eine andere Distribution aktualisiert wurden: Diese folgen den Aktualisierungen der anderen Distributionen. Wir erklären dieses Verhalten mit Hilfe der von APT gesetzten Standardprioritäten weiter unten. Benutzen Sie apt-cache policy
(siehe Seitenleiste), um die gesetzten Prioritäten zu überprüfen.
/etc/apt/preferences
für kein Paket eine Priorität größer als 1000 erzwingt).
/etc/apt/preferences
anpassen:
Package: * Pin: release a=unstable Pin-Priority: 490
apt-get
(die ursprünglich typisch für aptitude
war), ist das Verfolgen der über Abhängigkeiten installierten Pakete. Diese Pakete werden "automatisch" genannt und beinhalten beispielsweise oft Bibliotheken.
apt-get autoremove
kann man diese Pakete loswerden. aptitude
kennt diesen Befehl nicht, da es diese automatisch entfernt, sobald sie erkannt werden. Beide Programme zeigen die betroffenen Pakete in einer übersichtlichen List an.
apt-mark auto Paket
markiert das betreffenbde Paket als automatisch, während apt-mark manual Paket
das Gegenteil tut. aptitude markauto
und aptitude unmarkauto
arbeiten gleichermaßen, obwohl sie mehr Möglichkeiten bieten, viele Pakete auf einmal zu markieren (siehe Abschnitt 6.4.1, „aptitude
“). Die konsolenbasierte interaktive Benutzerschnittstelle von aptitude
macht es ebenfalls leicht, das "automatisch"-Flag zu überprüfen.
aptitude why Paket
benutzen (apt-get
hat keine entsprechende Funktion):
$ aptitude why python-debian
i aptitude Recommends apt-xapian-index
i A apt-xapian-index Depends python-debian (>= 0.1.15)