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)