APT.CONF(5) | APT | APT.CONF(5) |
NAME¶
apt.conf - Konfigurationsdatei für APTBESCHREIBUNG¶
/etc/apt/apt.conf ist die Hauptkonfigurationsdatei, die sich alle Werkzeuge der APT-Suite teilen, es ist jedoch beileibe nicht der einzige Ort, an dem Optionen gesetzt werden können. Die Suite benutzt außerdem einen gemeinsamen Befehlszeilenauswerter, um eine einheitliche Umgebung bereitzustellen. Wenn ein APT-Werkzeug startet, wird es die Konfigurationsdateien in der folgenden Reihenfolge lesen: 1.die Datei, die durch die Umgebungsvariable
APT_CONFIG angegeben wird (falls gesetzt)
2.alle Dateien in Dir::Etc::Parts in
aufsteigender alphanumerischer Reihenfolge, die entweder keine oder
»conf« als Dateinamenserweiterung haben und die nur alphanumerische
Zeichen, Bindestriche (-), Unterstriche (_) und Punkte (.) enthalten.
Andernfalls wird APT einen Hinweis ausgeben, dass es eine Datei ignoriert hat,
falls die Datei nicht auf ein Muster in der Konfigurationsliste
Dir::Ignore-Files-Silently passt – in diesem Fall wird sie
stillschweigend ignoriert.
3.die Hauptkonfigurationsdatei, die durch
Dir::Etc::main angegeben wird
4.die Befehlszeilenoptionen werden angewandt,
um die Konfigurationsdirektiven zu überschreiben oder um sogar mehrere
Konfigurationsdateien zu laden.
SYNTAX¶
Die Konfigurationsdatei ist in einem Baum mit Optionen organisiert, die in funktionellen Gruppen organisiert sind. Optionsspezifikation wird mit einer doppelten Doppelpunktschreibweise angegeben, zum Beispiel ist APT::Get::Assume-Yes eine Option innerhalb der APT-Werkzeuggruppe für das Werkzeug Get. Optionen werden nicht von ihren Elterngruppe geerbt. Syntaktisch ist die Konfigurationssprache dem nachempfunden, was die ISC-Werkzeuge, wie bind und dhcp, benutzen. Zeilen, die mit // beginnen, werden als Kommentar betrachtet (und ignoriert), ebenso wie jeglicher Text zwischen /* und */, wie bei C/C++-Kommentaren. Jede Zeile hat die Form APT::Get::Assume-Yes "true";. Die Anführungszeichen und abschließenden Strichpunkte werden benötigt. Der Wert muss in einer Zeile stehen und es gibt keine Möglichkeit Zeichenketten aneinander zu hängen. Werte dürfen keine Rückwärtsschrägstriche oder zusätzliche Anführungszeichen enthalten. Optionsnamen werden aus alphanumerischen Zeichen und den Zeichen »/-:._+« gebildet. Ein neuer Geltungsbereich kann mit geschweiften Klammern geöffnet werden, wie:APT { Get { Assume-Yes "true"; Fix-Broken "true"; }; };
DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
DIE APT-GRUPPE¶
Diese Gruppe von Optionen steuert das allgemeine Verhalten von APT, ebenso wie es die Optionen für alle Werkzeuge enthält. ArchitectureSystemarchitektur; setzt die Architektur die
benutzt wird, wenn Dateien heruntergeladen und Paketlisten ausgewertet werden.
Die interne Vorgabe ist die Architektur für die APT kompiliert
wurde.
Architectures
alle Architekturen, die das System
unterstützt. Zum Beispiel sind CPUs, die amd64-Befehlssätze
implementieren (auch x86-64 genannt), ebenso in der Lage, Programme
auszuführen, die für i386-Befehlssätze (x86) kompiliert wurden.
Diese Liste wird benutzt, wenn Dateien abgerufen und Paketlisten ausgewertet
werden. Die interne Vorgabe ist immer die native Architektur des Systems
(APT::Architecture) und fremde Architekturen werden der vorgegebenen Liste
hinzugefügt, wenn sie per dpkg --print-architectures registriert
werden.
Default-Release
Standard-Release von dem Pakete installiert
werden, wenn mehr als eine Version verfügbar ist. Enthält
Release-Name, Codename oder Release-Version. Beispiele: »stable«,
»testing, »unstable«, »wheezy«, »jessie«,
»4.0«, »5.0*«. Siehe auch apt_preferences(5).
Ignore-Hold
Halten von Paketen ignorieren. Diese globale
Option veranlasst den Problemlöser, gehaltene Pakete beim Treffen von
Entscheidungen zu ignorieren.
Clean-Installed
standardmäßig auf on (ein). Wenn es
auf on gesetzt wird, wird die automatische Bereinigungsfunktion alle Pakete
entfernen, die nicht länger aus dem Zwischenspeicher heruntergeladen
werden können. Wenn es auf off gesetzt wird, dann werden außerden
die Pakete, die lokal installiert sind, vom Bereinigen ausgeschlossen –
beachten Sie jedoch, dass APT keine direkten Möglichkeiten bereitstellt,
um sie erneut zu installieren.
Immediate-Configure
ist standardmäßig aktiviert, was APT
veranlassen wird, essentielle und wichtige Pakete so bald wie möglich in
einer Installations-/Aktualisierungstransaktion zu installieren, um die
Auswirkungen eines scheiternden dpkg(1)-Aufrufs zu begrenzen. Falls
diese Option deaktiviert ist, betrachtet APT ein wichtiges Paket auf die
gleiche Weise wie ein zusätzliches Paket: Zwischen dem Entpacken des
Pakets A und seiner Konfiguration können viele andere Entpack- oder
Konfigurationsaufrufe für andere, nicht zugehörige Pakete B, C etc.
liegen. Falls dies zum Scheitern des dpkg(1)-Aufrufs führt (z.B.
weil Betreuerskripte des Pakets B einen Fehler erzeugen), führt dies zu
einem Systemstatus, in dem Paket A entpackt, aber nicht konfiguriert ist,
daher ist nicht länger gewährleistet, dass irgendein Paket, das von
A abhängt, weiter funktioniert, da seine Abhängigkeit von A nicht
länger erfüllt wird.
Außerdem wird die unmittelbare Konfigurationsmarkierung im potenziell
problematischen Fall zirkulärer Abhängigkeiten angewandt, da eine
Abhängigkeit mit der Unmittelbarmarkierung einer Vorabhängigkeit
entspricht. Theoretisch ermöglicht dies APT, eine Situation zu erkennen,
in der es keine unmittelbare Konfiguration durchführen kann, abzubrechen
und dem Anwender vorzuschlagen, dass er die Option zeitweise deaktivieren
soll, um ein Fortsetzen der Transaktion zu ermöglichen. Beachten Sie hier
das Wort »theoretisch«; im wahren Leben ist dieses Problem selten in
unstabilen Distributionsversionen aufgetreten und es wurde durch falsche
Abhängigkeiten des fraglichen Pakets verursacht oder durch ein System in
einem beschädigten Zustand; daher sollten Sie diese Option nicht blind
deaktivieren, da das zuvor erwähnte Szenario nicht das einzige Problem
ist, das es an erster Stelle verhindern kann.
Bevor eine umfangreiche Transaktion wie dist-upgrade mit dieser ausgeschalteten
Option ausgeführt wird, sollten Sie versuchen, explizit install für
das Paket auszuführen, das APT nicht unmittelbar konfigurieren kann.
Stellen Sie aber bitte sicher, dass Sie Ihr Problem außerdem an Ihre
Distribution und an das APT-Team mit dem Fehlerverweis unten melden, so dass
sie an der Verbesserung und Korrektur des Upgrade-Prozesses arbeiten
können.
Force-LoopBreak
Schalten Sie diese Option niemals ein,
außer wenn Sie wirklich wissen, was Sie tun. Es erlaubt APT
temporär ein essentielles Paket zu entfernen, um eine
Conflicts/Conflicts- oder Conflicts/Pre-Depends-Schleife zwischen zwei
essentiellen Paketen zu unterbrechen. Solch eine Schleife sollte niemals
existieren und ist ein schwerwiegender Fehler. Diese Option wird
funktionieren, wenn die essentiellen Pakete nicht tar, gzip,
libc, dpkg, dash oder etwas, was davon abhängt,
sind.
Cache-Start, Cache-Grow, Cache-Limit
APT benutzt seit Version 0.7.26 eine
Zwischenspeicherdatei für Speicherabbilder mit veränderlicher
Größe um verfügbare Informationen zu speichern. Cache-Start
dient als Hinweis, auf welche Größe der Zwischenspeicher wachsen
wird und enthält daher den Betrag, welchen Speicher APT beim Start
abruft. Die Vorgabe ist 20971520 Byte (~20 MB). Beachten Sie, dass diese
Speichermenge für APT verfügbar sein muss, da es sonst unschön
scheitert. Für Geräte mit eingeschränktem Speicher sollten
diese Werte vermindert werden, während sie für Systeme mit vielen
konfigurierten Quellen erhöht werden sollte. Cache-Grow definiert in Byte
mit einer Vorgabe von 1048576 (~1 MB) um wieviel die Größe des
Zwischenspeichers vergößert werden soll, falls der durch Cache-Start
vorreservierte nicht ausreicht. Dieser Wert wird wieder und wieder verwandt
bis entweder der Zwischenspeicher groß genug ist, um alle Informationen
zu speichern oder die Zwischenspeichergröße das Cache-Limit
erreicht. Vorgabe für Cache-Limit ist 0, was bedeutet, dass es kein Limit
gibt. Falls Cache-Grow auf 0 gesetzt ist, kann der Zwischenspeicher nicht
automatisch wachsen.
Build-Essential
definiert, welche Pakete als essentielle
Bauabhängigkeiten betrachtet werden.
Get
Der Get-Unterabschnitt steuert das
apt-get(8)-Werkzeug. Lesen Sie bitte dessen Dokumentation, um weitere
Informationen über die Optionen hier zu erhalten.
Cache
Der Cache-Unterabschnitt steuert das
apt-cache(8)-Werkzeug. Lesen Sie bitte dessen Dokumentation, um weitere
Informationen über die Optionen hier zu erhalten.
CDROM
Der CDROM-Unterabschnitt steuert das
apt-cdrom(8)-Werkzeug. Lesen Sie bitte dessen Dokumentation, um weitere
Informationen über die Optionen hier zu erhalten.
DIE ERWERBGRUPPE¶
Die Acquire-Gruppe der Optionen steuert das Herunterladen von Paketen ebenso wie die verschiedenen »Beschaffungsmethoden«, die für das Herunterladen selbst zuständig sind (siehe auch sources.list(5)). Check-Valid-UntilDie sicherheitsbezogene Option wird als
»true« vorgegeben, da es Wiederholungsangriffe über einen
langen Zeitraum verhindert, einer Überprüfung für eine
Release-Datei ein Ablaufdatum zu geben und zum Beispiel Anwendern auch hilft,
länger nicht aktualisierte Spiegel zu erkennen – diese Funktion
hängt jedoch von der Richtigkeit der Zeiteinstellung auf dem
Anwendersystem ab. Archivbetreuer sind aufgefordert, Release-Dateien mit der
Kopfzeile Valid-Until zu erstellen. Falls sie das nicht tun oder ein
strengerer Wert gewünscht wird, kann die Option Max-ValidTime unten
benutzt werden.
Max-ValidTime
maximale Zeit (in Sekunden) nach der Erzeugung
(die in der Kopfzeile Date angegeben ist), die die Datei Release als
gültig angesehen wird. Falls die Release-Datei selbst eine
Valid-Until-Kopfzeile enthält, wird das frühere der beiden Daten als
Ablaufdatum verwandt. Vorgabe ist 0, was für »für immer
gültig« steht. Archivspezifische Einstellungen können durch
Anhängen der Archivbezeichnung an den Optionsnamen vorgenommen
werden.
Min-ValidTime
minimale Zeit (in Sekunden), nach der
Erzeugung (die in der Kopfzeile Date angegeben ist), die die Datei Release als
gültig angesehen wird. Benutzen Sie dies, falls Sie einen selten
aktualisierten (lokalen) Spiegel eines häufiger aktualisierten Archivs
mit einer Valid-Until-Kopfzeile haben, anstatt die Überprüfung des
Ablaufdatums komplett zu deaktivieren. Archivspezifische Einstellungen
können und sollten durch Anhängen der Archivbezeichnung an den
Optionsnamen vorgenommen werden.
PDiffs
versucht Unterschiede, die PDiffs genannt
werden, für Indexe (wie Packages-Dateien) herunterzuladen, statt der
kompletten Dateien. Vorgabe ist True.
Es sind außerdem zwei Unteroptionen verfügbar, um die Benutzung von
PDiffs zu begrenzen: FileLimit kann verwandt werden, um die maximale Anzahl
von PDiff-Dateien anzugeben, die zum Aktualisieren einer Datei heruntergeladen
werden sollen. Andererseits gibt SizeLimit die maximale Prozentzahl der
Größe aller Patches im Vergleich zur Zieldatei an. Wenn eine dieser
Begrenzungen überschritten wird, wird die komplette Datei anstelle der
Patche heruntergeladen.
Queue-Mode
Warteschlangenmodus; Queue-Mode kann entweder
host oder access sein, wodurch festgelegt wird, wie APT ausgehende
Verbindungen parallelisiert. host bedeutet, dass eine Verbindung pro
Zielrechner geöffnet wird, access bedeutet, dass eine Verbindung pro
URI-Art geöffnet wird.
Retries
Anzahl der auszuführenden erneuten
Versuche. Wenn dies nicht Null ist, wird APT fehlgeschlagene Dateien in der
angegebenen Zahl erneut versuchen.
Source-Symlinks
benutzt symbolische Verweise für
Quellarchive. Falls dies auf true gesetzt ist, werden Quellarchive, wenn
möglich, symbolisch verknüpft, anstatt kopiert zu werden. True ist
die Vorgabe.
http
http::Proxy ist der zu benutzende
Standard-HTTP-Proxy. Er wird standardmäßig in der Form
http://[[Anwender][:Passwort]@]Rechner[:Port]/ angegeben. Durch
Rechner-Proxies kann außerdem in der Form http::Proxy::<host> mit
dem speziellen Schlüsselwort DIRECT angegeben werden, dass keine Proxies
benutzt werden. Falls keine der obigen Einstellungen angegeben wurde, wird die
Umgebungsvariable http_proxy benutzt.
Für die Steuerung des Zwischenspeichers mit HTTP/1.1-konformen
Proxy-Zwischenspeichern stehen drei Einstellungen zur Verfügung. No-Cache
teilt dem Proxy mit, dass er unter keinen Umständen seine
zwischengespeicherten Antworten benutzen soll, Max-Age setzt das maximal
erlaubte Alter einer Indexdatei im Zwischenspeicher des Proxys (in Sekunden).
No-Store gibt an, dass der Proxy die angefragten Archivdateien nicht in seinem
Zwischenspeicher ablegen soll. Das kann verwandt werden, um zu verhindern,
dass der Proxy seinen Zwischenspeicher mit (großen) .deb-Dateien
verunreinigt.
Die Option timeout stellt den Zeitnehmer, der von der Methode benutzt wird.
Dieser Wert wird auf die Verbindungs- sowie die Datenzeitüberschreitungen
angewandt.
Die Einstellung Acquire::http::Pipeline-Depth kann verwandt werden, um
HTTP-Weiterleitung zu aktivieren (RFC 2616 Abschnitt 8.1.2.2), was z.B. bei
Verbindungen mit hoher Latenz vorteilhaft sein kann. Sie gibt an, wieviele
Anfragen in eine Weiterleitung gesandt werden. Frühere APT-Versionen
hatten eine Vorgabe von 10 für diese Einstellung, aber der Vorgabewert
ist nun 0 (=deaktiviert), um Probleme mit der immer weiter anwachsenden Zahl
von Webservern und Proxies zu vermeiden, die nicht der HTTP/1.1-Spezifikation
entsprechen.
Acquire::http::AllowRedirect steuert, ob APT Umleitungen folgen wird, was
standardmäßig aktiviert ist.
Die benutzte Bandbreite kann durch Acquire::http::Dl-Limit eingeschränkt
werden, was Ganzzahlwerte in Kilobyte akzeptiert. Der Vorgabewert ist 0, was
die Beschränkung ausschaltet und versucht, sämtliche verfügbare
Bandbreite zu benutzen. (Beachten Sie, dass diese Optionen implizit das
Herunterladen von mehreren Servern zur gleichen Zeit deaktiviert.)
Acquire::http::User-Agent kann benutzt werden, um einen unterschiedlichen
User-Agent für die HTTP-Download-Methode zu setzten, da einige Proxys den
Clients nur dann Zugriff gewähren, wenn der Client einen bekannten
Bezeichner verwendet.
https
Die Optionen Cache-control, Timeout,
AllowRedirect, Dl-Limit und proxy funktionieren für HTTPS-URIs auf die
gleiche Weise wie für die Methode http und haben die gleichen
Vorgabewerte, falls sie nicht explizit gesetzt wurden. Die Option
Pipeline-Depth wird noch nicht unterstützt.
Die Unteroption CaInfo gibt den Ort an, an dem Informationen über
vertrauenswürdige Zertifikate bereitgehalten werden. <host>::CaInfo
ist die entsprechende Option pro Rechner. Die boolsche Unteroption Verify-Peer
entscheidet, ob das Rechnerzertifikat des Servers mit den
vertrauenswürdigen Zertifikaten geprüft werden soll oder nicht.
<host>::Verify-Peer ist die entsprechende Option pro Rechner. Die
boolsche Unteroption Verify-Host entscheidet, ob der Rechnername des Servers
geprüft werden soll oder nicht. <host>::Verify-Host ist die
entsprechende Option pro Rechner. SslCert entscheidet, welches Zertifikat zur
Client-Authentifizierung benutzt wird. <host>::SslCert ist die
entsprechende Option pro Rechner. SslKey entscheidet, welcher private
Schlüssel für die Client-Authentifizierung benutzt werden.
<host>::SslKey ist die entsprechende Option pro Rechner. SslForceVersion
überschreibt die zu benutzende Standard-SSL-Version. Es kann die beiden
Zeichenketten »TLSv1« oder »SSLv3« enthalten. Die
entsprechende Option pro Rechner ist <host>::SslForceVersion.
ftp
Für URIs, die die Methode cdrom
verwenden, ist die einzige Option der Einhängepunkt, cdrom::Mount, der
der Einhängepunkt des CD-ROM-Laufwerks sein muss (oder der DVD oder was
auch immer), wie er in /etc/fstab angegeben wurde. Es ist möglich,
alternative Ein- und Aushängebefehle anzugeben, falls Ihr
Einhängepunkt nicht in der fstab aufgeführt werden kann. Die Syntax
besteht darin,
in den cdrom-Block einzufügen. Der abschließende Schrägstrich ist
wichtig. Aushängebefehle können per UMount angegeben werden.
gpgv
/cdrom/::Mount "foo";
Die einzige Konfigurationsoption für
GPGV-URIs ist gpgv::Options, um zusätzliche Parameter an Gpgv
weiterzuleiten.
CompressionTypes
Liste der Kompressionstypen die von den
»acquire«-Methoden verstanden werden. Dateien wie Packages
können in verschiedenen Kompressionsformaten verfügbar sein.
Standardmäßig können die »acquire«-Methoden
bzip2-, lzma- und gzip-komprimierte Dateien
dekomprimieren. Mit dieser Einstellung können spontan weiter Formate
hinzugefügt oder die benutzte Methode geändert werden. Die Syntax
dafür lautet:
Außerdem kann die Untergruppe Order benutzt werden, um zu definieren, in
welcher Reihenfolge das Beschaffungssystem die komprimierten Dateien
herunterzuladen versucht. Das Beschaffungssystem wird die erste ausprobieren
und bei einem Fehler mit dem nächsten Kompressionstyp in dieser Liste
fortfahren. Um daher einen Typ einem anderen vorzuziehen, fügen Sie
einfach den bevorzugten Typ an erster Stelle in die Liste ein – noch
nicht hinzugefügte Standardtypen werden implizit an das Ende der Liste
angehängt, so kann z.B.
verwandt werden, um gzip-komprimierte Dateien gegenüber bzip2
und lzma zu bevorzugen. Falls lzma vor gzip und
bzip2 bevorzugt werden soll, sollte die Konfigurationseinstellung so
aussehen:
. Es ist nicht nötig, bz2 explizit zur Liste hinzuzufügen, da es
automatisch hinzufügt wird.
Beachten Sie, dass Dir::Bin:: Methodenname zur Laufzeit geprüft
wird. Falls diese Option gesetzt ist, wird die Methode nur benutzt, wenn die
Datei existiert, z.B. ist die integrierte Einstellung für die
bzip2-Methode:
. Beachten Sie auch, dass auf der Befehlszeile eingegebene Einträge an das
Ende der Liste angehängt werden, die in den Konfigurationsdateien
angegeben wurde, aber vor den Standardeinträgen. Um einen Typ in diesem
Fall gegenüber einem, der über die Konfigurationsdatei angegebenen
wurde, zu bevorzugen, können Sie diese Option direkt setzen – nicht
im Listenstil. Dies wird die definierte Liste nicht überschreiben, es
wird diesen Typ nur vor die Liste setzen.
Der besondere Typ uncompressed kann benutzt werden, um unkomprimierten Dateien
einen Vorrang zu geben, beachten Sie jedoch, dass die meisten Archive keine
unkomprimierten Dateien bereitstellen, so dass dies meist nur für lokale
Spiegel benutzt werden kann.
GzipIndexes
Acquire::CompressionTypes:: Dateierweiterung "Methodenname";
Acquire::CompressionTypes::Order:: "gz";
Acquire::CompressionTypes::Order { "lzma"; "gz"; };
Dir::Bin::bzip2 "/bin/bzip2";
Wenn gzip-komprimierte Indizes heruntergeladen
werden (Packages, Sources, oder Translations), speichere sie lokal mit
gzip-Komprimierung. Dies spart eine Menge Festplattenplatz, aber benötigt
mehr CPU-Ressourcen bei der Erstellung des lokalen Paket-Caches. Vorgabe ist
False.
Languages
Der Unterabschnitt Languages steuert, welche
Translation-Dateien heruntergeladen werden und in welcher Reihenfolge APT
versucht, die Beschreibungsübersetzungen anzuzeigen. APT wird versuchen,
die erste verfügbare Beschreibung für die zuerst aufgelistete
Sprache anzuzeigen. Sprachen können durch ihre kurzen oder langen
Sprachcodes definiert sein. Beachten Sie, dass nicht alle Archive
Translation-Dateien für jede Sprache bereitstellen – insbesondere
sind die langen Sprachcodes selten.
Die Standardliste beinhaltet »environment« und »en«.
»environment« hat hier eine besondere Bedeutung: Es wird zur
Laufzeit durch die Sprachcodes ersetzt, die aus der Umgebungsvariable
LC_MESSAGES extrahiert wurden. Es wird außerdem sicherstellen, dass diese
Codes nicht zweimal in der Liste enthalten sind. Falls LC_MESSAGES auf
»C« gesetzt ist, wird nur die Datei Translation-en (falls
verfügbar) benutzt. Um APT zu zwingen, keine Übersetzungsdatei zu
verwenden, benutzen Sie die Einstellung Acquire::Languages=none.
»none« ist ein weiterer Code mit besonderer Bedeutung, der die Suche
nach einer passenden Translation-Datei stoppen wird. Dies weist APT an, diese
Übersetzungen auch herunterzuladen, ohne sie tatsächlich zu
verwenden, es sei denn, die Umgebungsvariable gibt diese Sprachen an. Daher
wird die folgende Beispielkonfiguration in einer englischen Lokalisierung zu
der Reihenfolge »en,de« und in einer deutschen Lokalisierung zu
»de,en« führen. Beachten Sie, dass »fr«
heruntergeladen, aber nicht benutzt wird, falls APT nicht in einer
französischen Lokalisierung benutzt wird (wobei die Reihenfolge »fr,
de, en« wäre).
Hinweis: Um Problemen vorzubeugen, die daher kommen, dass APT in
unterschiedlichen Umgebungen ausgeführt wird (z.B. durch verschiedene
Benutzer oder durch andere Programme) werden alle Übersetzungsdateien,
die in /var/lib/apt/lists/ gefunden werden, an das Ende der Liste
hinzugefügt (nach einem impliziten »none«).
Acquire::Languages { "environment"; "de"; "en"; "none"; "fr"; };
VERZEICHNISSE¶
Der Dir::State-Abschnitt hat Verzeichnisse, die zu lokalen Statusinformationen gehören. lists ist das Verzeichnis, in das heruntergeladene Paketlisten platziert werden und status ist der Name der dpkg(1) Statusdatei. preferences ist der Name der APT-preferences-Datei. Dir::State enthält das Standardverzeichnis, das allen Unterelementen vorangestellt wird, falls sie nicht mit / oder ./ beginnen. Dir::Cache enthält Orte, die zu lokalen Zwischenspeicherinformationen gehören, so wie die beiden Paketzwischenspeicher srcpkgcache und pkgcache, sowie den Ort, an den heruntergeladene Archive platziert werden, Dir::Cache::archives. Die Generierung von Zwischenspeichern kann ausgeschaltet werden, indem ihre Namen auf leere Zeichenketten gesetzt werden. Dies wird den Start verlangsamen, aber Plattenplatz sparen. Es ist vermutlich vorzuziehen, statt des »srcpkgcache«s den »pkgcache« auszuschalten. Wie Dir::State ist das Standardverzeichnis in Dir::Cache enthalten. Dir::Etc enthält den Ort der Konfigurationsdateien, sourcelist gibt den Ort der Quellliste und main ist die Standardkonfigurationsdatei (Einstellung hat keine Auswirkung, außer wenn sie aus der in APT_CONFIG angegebenen Konfigurationsdatei erfolgt). Die Dir::Parts-Einstellung liest in allen Konfigurationsteilen in lexikalischer Reihenfolge vom angegebenen Verzeichnis. Nachdem dies geschehen ist, wird die Hauptkonfigurationsdatei geladen. Auf binäre Programme wird von Dir::Bin verwiesen. Dir::Bin::Methods gibt den Ort des Methodensteuerungsprogramms an und gzip, bzip2, lzma, dpkg, apt-get, dpkg-source, dpkg-buildpackage und apt-cache geben den Ort des jeweiligen Programms an. Das Konfigurationselement RootDir hat eine besondere Bedeutung. Falls es gesetzt ist, sind alle Pfad relativ zu RootDir, sogar Pfade, die absolut angegeben wurden. So wird zum Beispiel, wenn RootDir auf /tmp/staging und Dir::State::status auf /var/lib/dpkg/status gesetzt ist, nach der Statusdatei in /tmp/staging/var/lib/dpkg/status nachgesehen. Die Liste Ignore-Files-Silently kann benutzt werden, um anzugeben welche Dateien APT beim Auswerten der Dateien im Verzeichnisteil stillschweigend ignorieren sollte. Standardmäßig werden Dateien, die auf .disabled, ~, .bak oder .dpkg-[a-z]+ endenn stillschweigend ignoriert. Wie beim letzten Vorgabewert gesehen, kann die Syntax für reguläre Ausdrücke für diese Muster verwandt werden.APT IN DSELECT¶
Wenn APT als eine dselect(1)-Methode benutzt wird, steuern mehrere Konfigurationsdirektiven das Standardverhalten. Diese stehen im Abschnitt DSelect. CleanZwischenspeicherbereinigungsmodus; Dieser Wert
kann entweder »always«, »prompt«, »auto«,
»pre-auto« oder »never« sein. »always« und
»prompt« werden, nachdem das Upgrade durchgeführt wurde, alle
Pakete aus dem Zwischenspeicher entfernen, »prompt« (die Vorgabe)
tut dies bedingt. »auto« entfernt nur jene Pakete, die nicht
länger heruntergeladen werden können (zum Beispiel, weil sie durch
eine neue Version ersetzt wurden). »pre-auto« führt diese
Aktion vor dem Herunterladen neuer Pakete durch.
options
Die Inhalte dieser Variablen werden als
Befehlszeilenoptionen an apt-get(8) übermittelt, wenn es für
die Installationsphase durchlaufen wird.
Updateoptions
Die Inhalte dieser Variable werden als
Befehlszeilenoptionen an apt-get(8) übermittelt, wenn es für
die Aktualisierungsphase durchlaufen wird.
PromptAfterUpdate
Falls true, wird die Aktualisierungsoption [U]
in dselect(1) immer nachfragen, um fortzufahren. Vorgabe ist es, nur
bei Fehlern nachzufragen.
WIE APT DPKG(1) AUFRUFT¶
Mehrere Konfigurationsdirektiven steuern, wie APT dpkg(1) aufruft. Diese stehen im Abschnitt DPkg. optionsDies ist eine Liste von Optionen, die an
dpkg(1) übermittelt werden. Die Optionen müssen unter
Benutzung der Listenschreibweise angegeben werden und jedes Listenelement wird
als einzelnes Argument an dpkg(1) übermittelt.
Pre-Invoke, Post-Invoke
Dies ist eine Liste von Shell-Befehlen, die
vor/nach dem Aufruf von dpkg(1) ausgeführt werden. Wie options
muss dies in Listenschreibweise angegeben werden. Die Befehle werden der
Reihenfolge nach mit /bin/sh aufgerufen, sollte einer fehlschlagen, wird APT
abgebrochen.
Pre-Install-Pkgs
Dies ist eine Liste von Shell-Befehlen, die
vor dem Aufruf von dpkg(1) ausgeführt werden. Wie options muss
dies in Listenschreibweise angegeben werden. Die Befehle werden der
Reihenfolge nach mit /bin/sh aufgerufen, sollte einer fehlschlagen, wird APT
abgebrochen. APT wird den Befehlen die Dateinamen aller .deb-Dateien, die es
installieren wird, auf der Standardeingabe übergeben, einen pro Zeile.
Version 2 dieses Protokolls gibt mehr Informationen aus, einschließlich der
Protokollversion, dem APT-Konfigurationsraum und den Paketen, Dateien und den
Versionen, die geändert werden. Version 2 wird durch Setzen von
DPkg::Tools::options::cmd::Version auf 2 eingeschaltet. cmd ist ein Befehl,
der an Pre-Install-Pkgs gegeben wird.
Run-Directory
APT wechselt mit chdir in dieses Verzeichnis,
bevor dpkg(1) aufgerufen wird, die Vorgabe ist /.
Build-options
Diese Optionen werden an
dpkg-buildpackage(1) beim Kompilieren von Paketen übermittelt.
Standardmäßig wird das Signieren augeschaltet und alle Programme
werden erstellt.
Dpkd-Trigger-Benutzung (und zugehörige Optionen)¶
APT kann dpkg(1) auf eine Art aufrufen, in der aggressiv Gebrauch von Triggern über mehrere dpkg(1)-Aufrufe hinweg gemacht wird. Ohne weitere Optionen wird dpkg(1) Trigger nur einmal bei jeder Ausführung benutzen. Diese Optionen zu aktivieren, kann daher die zum Installieren oder Upgrade benötigte Zeit verkürzen. Beachten Sie, dass geplant ist, diese Optionen in Zukunft standardmäßig zu aktivieren, aber da es die Art, wie APT dpkg(1) aufruft, drastisch ändert, benötigt es noch viele weitere Tests. Diese Optionen sind daher aktuell noch experimentell und sollten nicht in produktiven Umgebungen benutzt werden. Außerdem unterbricht es die Fortschrittsanzeige, so dass alle Oberflächen derzeit die halbe (oder mehr) Zeit auf dem Status 100% stehen, während tatsächlich alle Pakete konfiguriert werden. Beachten Sie, dass es nicht gewährleistet ist, dass APT diese Optionen unterstützen wird oder dass diese Optionen in der Zukunft keinen (großen) Ärger machen. Wenn Sie die allgemeinen Risiken und Probleme mit diesen Optionen verstanden haben, aber tapfer genug sind, sie testen zu helfen, erstellen Sie eine neue Konfigurationsdatei und testen Sie eine Kombination von Optionen. Bitte berichten Sie auf Englisch jegliche Fehler, Probleme und Verbesserungen, denen Sie begegnen und stellen Sie sicher, dass Sie alle von Ihnen benutzten Optionen in Ihren Berichten vermerken. Zum Zweck der Fehlersuche könnte es außerdem nützlich sein, dpkg(1) um Hilfe zu fragen. Lesen Sie z.B. dpkg --audit. Eine defensive Optionenkombination wäreDPkg::NoTriggers "true"; PackageManager::Configure "smart"; DPkg::ConfigurePending "true"; DPkg::TriggersPending "true";
fügt die keine-Trigger-Markierung zu
allen dpkg(1) Aufrufen hinzu (ausgenommen den ConfigurePending-Aufruf).
Siehe dpkg(1), wenn Sie interessiert sind, was dies tatsächlich
bedeutet. In Kürze: dpkg(1) wird die Trigger nicht ausführen,
dann ist diese Markierung vorhanden, außer sie wird explizit aufgerufen,
um dies in einem gesonderten Aufruf zu tun. Beachten Sie, dass diese Option
außerdem in älteren APT-Versionen mit einer geringfügig anderen
Bedeutung existiert (nicht dokumentiert): Vorher hing diese Option nur
--no-triggers an die Konfigurationsaufrufe für dpkg(1) an –
nun wird APT diese Markierung außerdem an die »unpack«- und
»remove«-Aufrufe anhängen.
PackageManager::Configure
Gültige Werte sind »all«,
»smart« und »no«. Der Standardwert ist »all«,
was APT veranlasst, alle Pakete zu konfigurieren. Die Art von
»smart« ist es, nur die Pakete zu konfigurieren, die konfiguriert
werden müssen, bevor ein anderes Paket entpackt werden kann
(Pre-Depends), und den Rest von dpkg(1) mit einem Aufruf, der durch die
Option ConfigurePending (siehe unten) generiert wurde, konfigurieren zu
lassen. Im Gegensatz dazu wird »no« nichts konfigurieren und sich
völlig auf die Konfiguration durch dpkg(1) verlassen (was im
Moment fehlschlägt, falls ein Pre-Depends vorkommt). Diese Option auf
etwas anderes als all zu setzen, wird außerdem implizit
standardmäßig die nächste Option aktivieren, da das System
anderenfalls in einem nicht konfigurierten Status enden könnte und
möglicherweise nicht mehr startbar ist.
DPkg::ConfigurePending
Wenn diese Option gesetzt ist, wird APT
dpkg --configure --pending aufrufen, um dpkg(1) alle
benötigten Konfigurationen und Trigger handhaben zu lassen. Diese Option
ist als Vorgabe automatisch aktiviert, wenn die vorherige Option nicht auf all
gesetzt ist, aber Deaktivieren könnte nützlich sein, wenn Sie APT
mehrmals hintereinander ausführen möchten – z.B. in einem
Installationsprogramm. In diesen Szenarien könnten Sie diese Option
außer in allen außer der letzten Ausführung deaktivieren.
DPkg::TriggersPending
nützlich für smart-Konfiguration, da
ein Paket mit ausstehenden Triggern nicht als installed angesehen wird und
Dpkg es als aktuell entpackt betrachtet, was ein Hemmschuh für
Pre-Dependencies ist (siehe Debian-Fehler #526774). Beachten Sie, dass dies
alle Trigger ausführt, nicht nur die Trigger, die zum Konfigurieren
dieses Pakets benötigt werden.
OrderList::Score::Immediate
Essentielle Pakete (und ihre
Abhängigkeiten) sollten sofort nach dem Entpacken konfiguriert werden. Es
ist eine gute Idee, dies ziemlich früh im Upgrade-Prozess zu tun, da
diese Konfigurationsaufrufe aktuell außerdem DPkg::TriggersPending
benötigen, das eine Reihe von Triggern ausführt (die
möglicherweise nicht gebraucht werden). Essentielle Pakete haben als
Vorgabe eine hohe Bewertung, aber die Unmittelbarmarkierung ist relativ
niedrig (ein Paket, das Pre-Depends hat, wird höher bewertet). Diese
Option und die anderen in der gleichen Gruppe können benutzt werden, um
die Bewertung zu ändern. Das folgende Beispiel zeigt die Einstellungen
mit ihren Vorgabewerten.
OrderList::Score { Delete 500; Essential 200; Immediate 10; PreDepends 50; };
PERIODISCHE- UND ARCHIVOPTIONEN¶
APT::Periodic- und APT::Archives-Gruppen von Optionen konfigurieren das Verhalten periodischer APT-Aktualisierungen, die vom Skript /etc/cron.daily/apt durchgeführt werden. Lesen Sie die Kopfzeilen dieses Skripts, um eine kurze Dokumentation dieser Optionen zu erhalten.FEHLERSUCHOPTIONEN¶
Einschalten von Optionen im Abschnitt Debug:: wird veranlassen, dass Fehlersuchinformationen an die Standardfehlerausgabe des Programms gesendet werden, das die apt-Bibliotheken benutzt oder besondere Programmmodi einschaltet, die in erster Linie für das Fehlersuchverhalten von apt nützlich sind. Die meisten dieser Optionen sind für den normalen Anwender uninteressant, aber ein paar könnten es sein:•
Debug::pkgProblemResolver schaltet die Ausgabe über die von dist-upgrade,
upgrade, install, remove, purge getroffenen Entscheidungen ein.
•
Debug::NoLocking schaltet jegliches Sperren von Dateien aus. Dies kann benutzt
werden, um einige Operationen (zum Beispiel apt-get -s install) als nicht
root-Anwender auszuführen.
•
Debug::pkgDPkgPM gibt die aktuelle Befehlszeile jedesmal aus, wenn apt
dpkg(1) aufruft.
•
Debug::IdentCdrom schaltet das Einbeziehen von statfs-Daten in CD-ROM-IDs
aus.
Eine vollständige Liste der Fehlersuchoptionen von APT folgt.
Debug::Acquire::cdrom
gibt Informationen aus, die sich auf Zugriffe
von cdrom://-Quellen beziehen.
Debug::Acquire::ftp
gibt Informationen aus, die sich auf das
Herunterladen von Paketen per FTP beziehen.
Debug::Acquire::http
gibt Informationen aus, die sich auf das
Herunterladen von Paketen per HTTP beziehen.
Debug::Acquire::https
gibt Informationen aus, die sich auf das
Herunterladen von Paketen per HTTPS beziehen.
Debug::Acquire::gpgv
gibt Informationen aus, die sich auf das
Prüfen kryptografischer Signaturen mittels gpg beziehen.
Debug::aptcdrom
gibt Informationen über den
Zugriffsprozess auf Paketsammlungen aus, die auf CD-ROMs gespeichert
sind.
Debug::BuildDeps
beschreibt den Prozess der Auflösung von
Bauabhängigkeiten in apt-get(8).
Debug::Hashes
gibt jeden kryptografischen Hash aus, der von
den apt-Bibliotheken generiert wurde.
Debug::IdentCDROM
schließt keine Informationen von statfs
ein, und zwar die Anzahl der benutzten und freien Blöcke auf dem
CD-ROM-Dateisystem, wenn eine ID für eine CD-ROM generiert wird.
Debug::NoLocking
schaltet jegliches Sperren von Dateien aus.
Dies wird zum Beispiel erlauben, dass zwei Instanzen von „apt-get
update“ zur gleichen Zeit laufen.
Debug::pkgAcquire
protokolliert, wenn Elemente aus der globalen
Warteschlange zum Herunterladen hinzugefügt oder entfernt werden.
Debug::pkgAcquire::Auth
gibt Statusmeldungen und Fehler aus, die sich
auf das Prüfen von Prüfsummen und kryptografischen Signaturen von
heruntergeladenen Dateien beziehen.
Debug::pkgAcquire::Diffs
gibt Informationen über das Herunterladen
und Anwenden von Paketindexlisten-Diffs und Fehler, die die
Paketindexlisten-Diffs betreffen, aus.
Debug::pkgAcquire::RRed
gibt Informationen aus, die sich auf das
Patchen von Paketlisten von APT beziehen, wenn Index-Diffs anstelle
vollständiger Indizes heruntergeladen werden.
Debug::pkgAcquire::Worker
protokolliert alle Interaktionen mit
Unterprozessen, die aktuell Downloads durchführen.
Debug::pkgAutoRemove
protokolliert alle Ereignisse, die sich auf
den automatisch-installiert-Status von Paketen und auf das Entfernen von nicht
benutzten Paketen beziehen.
Debug::pkgDepCache::AutoInstall
generiert Fehlersuchmeldungen, die
beschreiben, welche Pakete automatisch installiert werden, um
Abhängigkeiten aufzulösen. Dies entspricht dem anfangs
durchgeführten auto-install-Durchlauf, z.B. in apt-get install und nicht
dem vollständigen apt-Abhängigkeitsauflöser. Lesen Sie
dafür Debug::pkgProblemResolver.
Debug::pkgDepCache::Marker
generiert Fehlersuchmeldungen, die
beschreiben, welches Paket als
»keep«/»install«/»remove« markiert ist,
während der ProblemResolver seine Arbeit verrichtet. Jedes
Hinzufügen oder Löschen kann zusätzliche Aktionen
auslösen. Sie werden nach zwei eingerückten Leerzeichen unter dem
Originaleintrag angezeigt. Jede Zeile hat das Format MarkKeep, MarkDelete oder
MarkInstall gefolgt von Paketname <a.b.c -> d.e.f | x.y.z>
(Abschnitt) wobei a.b.c die aktuelle Version des Paketes ist, d.e.f die
Version ist, die zur Installation vorgesehen ist und x.y.z eine neuere Version
ist, die aber nicht zur Installation vorgesehen ist (aufgrund einer niedrigen
Pinning-Bewertung). Die letzten beiden können weggelassen werden, wenn es
keine gibt oder wenn sie die gleiche Version haben, wie die, die installiert
ist. section ist der Name des Abschnitts, in dem das Paket erscheint.
Debug::pkgDPkgPM
gibt, wenn dpkg(1) aufgerufen wird, die
genauen Befehlszeile mit der es aufgerufen wurde, mit Argumenten, die durch
einzelne Leerzeichen getrennt sind, aus.
Debug::pkgDPkgProgressReporting
gibt alle von dpkg(1) empfangenen Daten
über einen Status-Datei-Deskriptor und alle während deren Auswertung
gefundenen Fehler aus.
Debug::pkgOrderList
generiert eine Aufzeichnung des Algorithmus,
der über die Reihenfolge entscheidet, in der apt Pakete an dpkg(1)
weiterleiten soll.
Debug::pkgPackageManager
gibt Statusmeldungen aus, die die Schritte
nachverfolgen, die beim Aufruf von dpkg(1) ausgeführt
werden.
Debug::pkgPolicy
gibt die Priorität jeder Paketliste beim
Start aus.
Debug::pkgProblemResolver
verfolgt die Ausführung des
Abhängigkeitsauflösers (dies wird nur auf das angewandt, was
geschieht, wenn ein komplexes Abhängigkeitsproblem aufgetreten
ist).
Debug::pkgProblemResolver::ShowScores
gibt eine Liste aller installierten Pakete mit
ihren berechneten Bewertungen, die vom pkgProblemResolver benutzt werden, aus.
Die Beschreibung des Pakets ist die gleiche, wie in Debug::pkgDepCache::Marker
beschrieben.
Debug::sourceList
gibt die Informationen über die in
/etc/apt/vendors.list gelesenen Anbieter aus.
BEISPIELE¶
/usr/share/doc/apt/examples/configure-index.gz ist eine Konfigurationsdatei, die Beispielwerte für alle möglichen Optionen zeigen.DATEIEN¶
/etc/apt/apt.confAPT-Konfigurationsdatei.
Konfigurationselement: Dir::Etc::Main.
/etc/apt/apt.conf.d/
APT-Konfigurationsdatei-Fragmente.
Konfigurationselement: Dir::Etc::Parts.
SIEHE AUCH¶
FEHLER¶
APT-Fehlerseite[1]. Wenn Sie einen Fehler in APT berichten möchten, lesen Sie bitte /usr/share/doc/debian/bug-reporting.txt oder den reportbug(1)-Befehl. Verfassen Sie Fehlerberichte bitte auf Englisch.ÜBERSETZUNG¶
Die deutsche Übersetzung wurde 2009 von Chris Leick <c.leick@vollbio.de> in Zusammenarbeit mit dem deutschen l10n-Team von Debian <debian-l10n-german@lists.debian.org> angefertigt. Beachten Sie, dass diese Übersetzung Teile enthalten kann, die nicht übersetzt wurden. Dies ist so, damit kein Inhalt verloren geht, wenn die Übersetzung hinter dem Originalinhalt hinterherhängt.AUTOREN¶
Jason Gunthorpe APT-Team Daniel Burrows <dburrows@debian.org>ursprüngliche Dokumentation von
Debug::*.
FUßNOTEN¶
- 1.
- APT-Fehlerseite
09 Juni 2012 | APT 0.9.7.9 |