APT.CONF(5)

NAME
apt.conf - Konfigurationsdatei für APT

BESCHREIBUNG

apt.conf ist die Hauptkonfigurationsdatei für die APT-Werkzeugsammlung. Alle Werkzeuge benutzen die Konfigurationsdatei und einen gemeinsamen Befehlszeilenauswerter, um eine einheitliche Umgebung bereitzustellen. Wenn ein APT-Werkzeug startet, liest es die in der Umgebungsvariablen APT_CONFIG (falls vorhanden) angegebene Konfiguration, dann die Dateien in Dir::Etc::Parts, dann die durch Dir::Etc::main angegebene Konfigurationsdatei und übernimmt am Ende die Befehlszeilenoptionen, um Konfigurationsdirektiven zu überschreiben und möglicherweise sogar weitere Konfigurationsdateien zu laden.

The configuration file is organized in a tree with options organized into functional groups. Option specification is given with a double colon notation, for instance APT::Get::Assume-Yes is an option within the APT tool group, for the Get tool. Options do not inherit from their parent groups.

Syntactically the configuration language is modeled after what the ISC tools such as bind and dhcp use. Lines starting with // are treated as comments (ignored), as well as all text between /* and */, just like C/C++ comments. Each line is of the form APT::Get::Assume-Yes "true";. The trailing semicolon and the quotes are required. The value must be on one line, and there is no kind of string concatenation. It must not include inside quotes. The behavior of the backslash "\" and escaped characters inside a value is undefined and it should not be used. An option name may include alphanumerical characters and the "/-:._+" characters. A new scope can be opened with curly braces, like:

    APT {
      Get {
        Assume-Yes "true";
        Fix-Broken "true";
      };
    };

mit eingefügten Zeilenumbrüchen, um es leserlicher zu gestalten. Listen können erstellt werden, indem ein Geltungsbereich geöffnet wird und eine einzelne, von Anführungszeichen, denen ein Semikolon folgt, eingeschlossene Zeichenkette eingefügt wird. Es können mehrere Einträge eingefügt werden, jeweils getrennt durch ein Semikolon.

    DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};

Im Allgemeinen bietet die Beispielkonfigurationsdatei in /usr/share/doc/apt/examples/apt.conf /usr/share/doc/apt/examples/configure-index.gz eine gute Anleitung, wie dies aussehen könnte.

Die Namen der Konfigurationselemente sind nicht von Groß- und Kleinschreibung abhängig. Deshalb könnten Sie im vorherigen Beispiel auch dpkg::pre-install-pkgs benutzen.

Namen für die Konfigurationsdatei sind optional, wenn eine Liste, wie sie im Beispiel DPkg::Pre-Install-Pkgs oberhalb gesehen werden kann, definiert ist. Wenn Sie keinen neuen Namen angeben, wird ein neuer Eintrag der Liste lediglich eine neue Option hinzufügen. Wenn Sie einen Namen eingeben, können Sie die Option, wie jede andere Option, überschreiben, indem Sie der Option erneut einen neuen Wert zuweisen.

Two specials are allowed, #include (which is deprecated and not supported by alternative implementations) and #clear: #include will include the given file, unless the filename ends in a slash, then the whole directory is included. #clear is used to erase a part of the configuration tree. The specified element and all its descendants are erased. (Note that these lines also need to end with a semicolon.)

Der #clear-Befehl ist der einzige Weg, eine Liste oder einen kompletten Geltungsbereich zu löschen. Erneutes Öffnen eines Geltungsbereichs oder der unten beschriebene ::-Stil werden vorherige Einträge nicht überschreiben. Optionen können nur überschrieben werden, indem ein neuer Wert an sie adressiert wird – Listen und Geltungsbereiche können nicht überschrieben, sondern nur bereinigt werden.

Alle APT-Werkzeuge bringen eine Option -o mit, die es einer beliebigen Installationsdirektiven erlaubt, auf der Befehlszeile angegeben zu werden. Die Syntax ist ein vollständiger Optionsname (APT::Get::Assume-Yes zum Beispiel), gefolgt von einem Gleichheitszeichen und dann dem neuen Wert der Option. Listen können ebenfalls durch Anhängen von abschließenden :: zur Namensliste hinzugefügt werden. (Wenn Ihnen das merkwürdig vorkommt: Die Geltungsbereichs-Syntax kann nicht auf der Befehlszeile benutzt werden.)

Beachten Sie, dass Sie :: nur benutzen können, um ein Element pro Zeile an eine Liste anzuhängen und dass Sie es nicht nicht in Verbindung mit einer Geltungsbereichs-Syntax benutzen sollten. (Die Geltungsbereichssysyntax fügt implizit :: ein) Die Benutzung der Syntax von beiden zusammen wird einen Fehler auslösen, den einige Anwender ungünstigerweise weitergeben an eine Option mit dem unüblichen Namen »::«, der wie jede andere Option mit einem Namen agiert. Dies leitet viele Probleme ein, einschließlich, dass der Anwender, der mehrere Zeilen in dieser falschen Syntax in der Hoffnung etwas an die Liste anzuhängen schreibt, das Gegenteil von nur der letzten Zuweisung zu diese Option »::« erreicht. Bevorstehende APT-Versionen werden Fehler ausgeben und die Arbeit stoppen, wenn sie auf diese falsche Verwendung stoßen. Korrigieren Sie deshalb nun solche Anweisungen, solange sich APT nicht explizit darüber beklagt.

DIE APT-GRUPPE

Diese Gruppe von Optionen steuert das allgemeine Verhalten von APT, ebenso wie es die Optionen für alle Werkzeuge enthält.

Architecture
    Systemarchitektur; 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.

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«, »lenny«, »squeeze«, »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
    Defaults to on which will cause APT to install essential and important packages as fast as possible in the install/upgrade operation. This is done to limit the effect of a failing dpkg(1) call: If this option is disabled APT does treat an important package in the same way as an extra package: Between the unpacking of the important package A and his configuration can then be many other unpack or configuration calls, e.g. for package B which has no relation to A, but causes the dpkg call to fail (e.g. because maintainer script of package B generates an error) which results in a system state in which package A is unpacked but unconfigured - each package depending on A is now no longer guaranteed to work as their dependency on A is not longer satisfied. The immediate configuration marker is also applied to all dependencies which can generate a problem if the dependencies e.g. form a circle as a dependency with the immediate flag is comparable with a Pre-Dependency. So in theory it is possible that APT encounters a situation in which it is unable to perform immediate configuration, error out and refers to this option so the user can deactivate the immediate configuration temporary to be able to perform an install/upgrade again. Note the use of the word "theory" here as this problem was only encountered by now in real world a few times in non-stable distribution versions and caused by wrong dependencies of the package in question or by a system in an already broken state, so you should not blindly disable this option as the mentioned scenario above is not the only problem immediate configuration can help to prevent in the first place. Before a big operation like dist-upgrade is run with this option disabled it should be tried to explicitly install the package APT is unable to configure immediately, but please make sure to report your problem also to your distribution and to the APT team with the buglink below so they can work on improving or correcting the upgrade process.

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-Depend-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, bash oder etwas, was davon abhängt, sind.

Cache-Limit
    APT benutzt eine Zwischenspeicherdatei mit fester Größe, um die »verfügbar«-Informationen zu speichern. Dies setzt die Größe dieses Zwischenspeichers (in Bytes).

Build-Essential
    Definiert, welche(s) Paket(e) als essentielle Bauabhängigkeiten betrachtet werde.

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 und die URI-Steuerprogramme.

PDiffs
    Versuchen, Deltas, die PDiffs genannt werden, für Paket- oder Quelldateien herunterzuladen, statt der kompletten Dateien. Vorgabe ist True.

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
    Symbolische Verweise für Quellarchive benutzen. Wenn dies auf true gesetzt ist, werden Quellarchive, wenn möglich, symbolisch verknüpft, anstatt kopiert zu werden. True ist die Vorgabe.

http
    HTTP-URIs; http::Proxy ist der zu benutzende Standard-HTTP-Proxy. Er wird standardmäßig in der Form http://[[Anwender][:Passwort]@]Host[:Port]/ angegeben. Durch Host-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 wird nur für Indexdateien gesendet und sagt dem Zwischenspeicher, dass er seine Objekte erneuern soll, die älter als die angegebene Zahl in Sekunden sind. Debian aktualisiert seine Indexdateien täglich, so dass die Vorgabe ein Tag ist. No-Store gibt an, dass der Zwischenspeicher diese Anfragen niemals speichern soll, es ist nur für Archivdateien gesetzt. Dies könnte nützlich sein, um Verunreinigungen des Proxy-Zwischenspeichers mit sehr großen .deb-Dateien zu verhindern. Beachten Sie: Squid 2.0.2 unterstützt keine dieser Optionen.

    Die Option timeout stellt den Zeitnehmer für die Zeitüberschreitung ein, die von der Methode benutzt wird. Dies wird auf alle Dinge, einschließlich Verbindungs- und Datenzeitüberschreitungen, angewandt.

    One setting is provided to control the pipeline depth in cases where the remote server is not RFC conforming or buggy (such as Squid 2.0.2). Acquire::http::Pipeline-Depth can be a value from 0 to 5 indicating how many outstanding requests APT should send. A value of zero MUST be specified if the remote host does not properly linger on TCP connections - otherwise data corruption will occur. Hosts which require this are in violation of RFC 2068.

    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, soviel wie möglich von der Bandbreite zu benutzen. (Beachten Sie, dass diese Optionen implizit das Herunterladen von mehreren Servern zur gleichen Zeit deaktiviert.)

    Acquire::http::User-Agent can be used to set a different User-Agent for the http download method as some proxies allow access for clients only if the client uses a known identifier.

https
    HTTPS URIs. Cache-control, Timeout, AllowRedirect, Dl-Limit and proxy options are the same as for http method and will also default to the options from the http method if they are not explicitly set for https. Pipeline-Depth option is not supported yet.

    Die Unteroption CaInfo gibt den Ort an, an dem Informationen über vertrauenswürdige Zertifikate bereitgehalten werden. <host>::CaInfo ist die entsprechende per-Host-Option. Die boolsche Unteroption Verify-Peer entscheidet, ob das Host-Zertifikat des Servers mit den vertrauenswürdigen Zertifikaten geprüft wird oder nicht. <host>::Verify-Peer ist die entsprechende per-Host-Option. Die boolsche Unteroption Verify-Host entscheidet, ob der Host-Name des Servers geprüft wird oder nicht. <host>::Verify-Host ist die entsprechende per-Host-Option. SslCert entscheidet, welches Zertifikat zur Client-Authentifizierung benutzt wird. <host>::SslCert ist die entsprechende per-Host-Option. SslKey entscheidet, welche privaten Schlüssel für die Client-Authentifizierung benutzt werden. <host>::SslKey ist die entsprechende per-Host-Option. SslForceVersion überschreibt die zu benutzende Standard-SSL-Version. Es kann die Zeichenketten »TLSv1« oder »SSLv3« enthalten. <host>::SslForceVersion ist die entsprechende per-Host-Option.

ftp
    FTP-URIs; ftp::Proxy ist der zu benutzende Standard-FTP-Proxy. Er wird standardmäßig in der Form ftp://[[Anwender][:Passwort]@]Host[:Port]/ angegeben. pro-Host-Proxys kann außerdem in der Form ftp::Proxy::<host> angegeben werden. Hierbei bedeutet das spezielle Schlüsselwort DIRECT, dass keine Proxys benutzt werden. Falls keine der obigen Einstellungen angegeben wurde, wird die Umgebungsvariable ftp_proxy benutzt. Um einen FTP-Proxy zu benutzen, müssen Sie in der Konfigurationsdatei das Skript ftp::ProxyLogin setzen. Dieser Eintrag gibt die Befehle an, die gesendet werden müssen, um dem Proxy-Server mitzuteilen, womit er sich verbinden soll. Um ein Beispiel zu erhalten, wie das gemacht wird, lesen Sie bitte /usr/share/doc/apt/examples/configure-index.gz. Die Platzhaltervariablen sind $(PROXY_USER), $(PROXY_PASS), $(SITE_USER), $(SITE_PASS), $(SITE) und $(SITE_PORT). Jede wird von ihrem entsprechenden URI-Bestandteil genommen.

    Die Option timeout stellt den Zeitnehmer für die Zeitüberschreitung ein, die von der Methode benutzt wird. Dies wird auf alle Dinge, einschließlich Verbindungs- und Datenzeitüberschreitungen, angewandt.

    Mehrere Einstellungen werden zum Steuern des passiven Modus bereitgestellt. Generell ist es sicher, den passiven Modus eingeschaltet zu lassen, er funktioniert in nahezu jeder Umgebung. Jedoch erfordern einige Situationen, dass der passive Modus ausgeschaltet und stattdessen Port-Modus-FTP benutzt wird. Dies kann global für Verbindungen gemacht werden, die durch einen Proxy oder über einen bestimmten Host gehen (Lesen Sie die Beispielskonfiguration, um Beispiele zu erhalten).

    Es ist möglich FTP über HTTP zu leiten, indem die Umgebungsvariable ftp_proxy auf eine HTTP-Url gesetzt wird – lesen Sie die Besprechung der HTTP-Methode oberhalb bezüglich der Syntax. Sie können dies nicht in der Konfigurationsdatei setzen und es wird wegen der geringen Effizienz nicht empfohlen FTP über HTTP zu benutzen.

    Die Einstellung ForceExtended steuert die Benutzung der RFC2428-Befehle EPSV und EPRT. Die Vorgabe ist false, was bedeutet, dass diese Befehle nur benutzt werden, wenn die Steuerverbindung IPv6 ist. Dies auf true zu stellen erzwingt die Benutzung selbst auf IPv4-Verbindungen. Beachten Sie, dass die wenigsten FTP-Server RFC2428 unterstützen.

cdrom
    CDROM-URIs; Die einzige Einstellung für CDROM-URIs ist der Einhängepunkt cdrom::Mount, der der Einhängepunkt des CDROM-Laufwerks sein muss, 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 aufgelistet werden kann (so wie beim Einhängen per SMB und alten Mount-Paketen). Die Syntax besteht darin,

        /cdrom/::Mount "foo";

    in den CDROM-Block einzufügen. Der abschließende Schrägstrich ist wichtig. Aushängebefehle können per UMount angegeben werden.

gpgv
    GPGV-URIs; Die einzige Option für GPGV-URIs ist die Option zusätzliche Parameter an gpgv weiterzuleiten. gpgv::Options Zusätzliche Parameter werden an gpgv weitergeleitet.

CompressionTypes
    Die List der Kompressionstypen die von den »aquire«-Methoden verstanden werden. Dateien wie Packages können in verschiedenen Kompressionsformaten verfügbar sein. Standardmäßig können die »aquire«-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:

        Acquire::CompressionTypes::Dateierweiterung "Methodenname";

    Außerdem kann die Untergruppe Order benutzt werden, um zu definieren, in welcher Reihenfolge das »aquire«-System die komprimierten Dateien herunterzuladen versucht. Das »aquire«-System wird die erste versuchen und mit dem nächsten Kompressionstyp in dieser Liste bei einem Fehler fortfahren. Um daher einen nach dem anderen Typ vorzuziehen, fügen Sie einfach den bevorzugten Typ zuerst in die Liste – noch nicht hinzugefügte Standardtypen werden zur Laufzeit an das Ende der Liste angehängt, so kann z.B.

        Acquire::CompressionTypes::Order:: "gz";

    verwandt werden, um gzip-komprimierte Dateien über bzip2 und lzma zu bevorzugen. Falls lzma vor gzip und bzip2 vorgezogen werden soll, sollte die Konfigurationseinstellung so aussehen:

        Acquire::CompressionTypes::Order { "lzma"; "gz"; };

    . 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 Einstellung existiert, wird die Methode nur benutzt, wenn die Datei existiert, z.B. für die (integrierte) bzip2-Methode ist die Einstellung

        Dir::Bin::bzip2 "/bin/bzip2";

    . Beachten Sie, dass diese auf der Befehlszeile eingegebenen Einträge an das Ende der Liste angehängt werden, die in den Konfigurationsdateien angegeben wurde, aber vor den Vorgabeeinträgen. Um einen Eintrag in diesem Fall vor einem, über die in der Konfigurationsdatei angegebenen, 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.

    Obwohl es möglich ist, einen leeren Komprimierungstyp zu der Reihenfolgenliste hinzuzufügen, versteht dies APT in der aktuellen Version nicht richtig und wird viele Warnungen wegen nicht heruntergeladener Dateien anzeigen – diese Warnungen sind meistens inkorrekte Treffer. Zukünftige Versionen werden möglicherweise eine Möglichkeit enthalten, um wirklich unkomprimierte Dateien vorzuziehen, um den Gebrauch lokaler Spiegel zu unterstützen.

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-Statusdatei. preferences ist der Name der APT-Einstellungsdatei. 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 der Ort, an den heruntergeladene Archive platziert werden, Dir::Cache::archives. Die Generierung von Zwischenspeichern kann ausgeschaltet werden, indem ihre Namen leer gelassen werden. Dies wird den Start verlangsamen, aber Plattenplatz sparen. Es ist vermutlich vorzuziehen, statt des »pkgcache«s den »srcpkgcache« 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.

APT IN DSELECT

Wenn APT als eine dselect(1)-Methode benutzt wird, steuern mehrere Konfigurationsdirektiven das Standardverhalten. Diese stehen im Abschnitt DSelect.

Clean
    Zwischenspeicherbereinigungsmodus; 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.

Optionen
    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 AUFRUFT

Mehrere Konfigurationsdirektiven steuern, wie APT dpkg(1) aufruft. Diese stehen im Abschnitt DPkg.

Optionen
    Dies ist eine Liste von Optionen, die an Dpkg ü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 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 auf der Standardeingabe die Dateinamen aller .deb-Dateien, die es installieren wird, ü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 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öriger Optionen)

APT kann Dpkg auf eine Art aufrufen, auf die aggressiv Gebrauch von Triggern über mehrere Dpkg-Aufrufe gemacht wird. Ohne weitere Optionen wird Dpkg Trigger nur während seiner eigenen Ausführung benutzen. Diese Optionen zu benutzen, kann daher die zum Installieren/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 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 aktuell in der halben (oder mehr) Zeit auf dem Status 100% stehen, während es aktuell alle Pakete konfiguriert.

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 um Hilfe zu fragen. Lesen Sie z.B. dpkg --audit. Eine defensive Optionenkombination wäre

    DPkg::NoTriggers "true";
    PackageManager::Configure "smart";
    DPkg::ConfigurePending "true";
    DPkg::TriggersPending "true";

DPkg::NoTriggers
    Add the no triggers flag to all dpkg calls (except the ConfigurePending call). See dpkg(1) if you are interested in what this actually means. In short: dpkg will not run the triggers when this flag is present unless it is explicitly called to do so in an extra call. Note that this option exists (undocumented) also in older apt versions with a slightly different meaning: Previously these option only append --no-triggers to the configure calls to dpkg - now apt will add these flag also to the unpack and remove calls.

PackageManager::Configure
    Valid values are "all", "smart" and "no". "all" is the default value and causes APT to configure all packages explicit. The "smart" way is it to configure only packages which need to be configured before another package can be unpacked (Pre-Depends) and let the rest configure by dpkg with a call generated by the next option. "no" on the other hand will not configure anything and totally rely on dpkg for configuration (which will at the moment fail if a Pre-Depends is encountered). Setting this option to another than the all value will implicitly activate also the next option per default as otherwise the system could end in an unconfigured status which could be unbootable!

DPkg::ConfigurePending
    If this option is set apt will call dpkg --configure --pending to let dpkg handle all required configurations and triggers. This option is activated automatic per default if the previous option is not set to all, but deactivating could be useful if you want to run APT multiple times in a row - e.g. in an installer. In these sceneries you could deactivate this option in all but the last run.

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.

PackageManager::UnpackAll
    Da die Konfiguration an das Ende von Dpkg verschoben werden kann, kann versucht werden, nur die Entpackserien von kritischen Notwendigkeiten, z.B. von Pre-Depends, anzuweisen. Vorgabe ist true und daher die »alte« Methode zum Sortieren nach allem in mehreren Schritten. Obwohl in früheren Versionen von APT beide Methoden enthalten waren, wurde die OrderCritical-Methode nicht benutzt, so dass diese Methode sehr experimentell ist und weitere Verbesserungen benötigt, bevor sie wirklich nützlich wird.

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 immediate-Markierung 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 CDROM-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
    Informationen über den Zugriffsprozess auf Paketsammlungen ausgeben, die auf CD-ROMs gespeichert sind.

Debug::BuildDeps
    Beschreibt den Prozess der Auflösung von Bauabhängigkeiten in apt-get(8).

Debug::Hashes
    Jeden kryptografischen Hash ausgeben, der von den apt-Bibliotheken generiert wurde.

Debug::IdentCDROM
    Keine Informationen von statfs einschließen, 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
    Jegliches Sperren von Dateien ausschalten. Dies wird zum Beispiel erlauben, dass zwei Instanzen von “apt-get update” zur gleichen Zeit laufen.

Debug::pkgAcquire
    Protokollieren, wenn Elemente aus der globalen Warteschlange zum Herunterladen hinzugefügt oder entfernt werden.

Debug::pkgAcquire::Auth
    Statusmeldungen und Fehler ausgeben, die sich auf das Prüfen von Prüfsummen und kryptografischen Signaturen von heruntergeladenen Dateien beziehen.

Debug::pkgAcquire::Diffs
    Informationen über das Herunterladen und Anwenden von Paketindexlisten-Diffs und Fehler, die die Paketindexlisten-Diffs betreffen, ausgeben.

Debug::pkgAcquire::RRed
    Informationen ausgeben, die sich auf das Patchen von Paketlisten von APT beziehen, wenn Index-Diffs anstelle vollständiger Indizes heruntergeladen werden.

Debug::pkgAcquire::Worker
    Alle Interaktionen mit Unterprozessen protokollieren, die aktuell Downloads durchführen.

Debug::pkgAutoRemove
    Alle Ereignisse protokollieren, die sich auf den automatisch-installiert-Status von Paketen und auf das Entfernen von nicht benutzten Paketen beziehen.

Debug::pkgDepCache::AutoInstall
    Fehlersuchmeldungen generieren, 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ähren 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::pkgInitConfig
    Die Vorgabekonfiguration beim Start auf der Standardfehlerausgabe ausgeben.

Debug::pkgDPkgPM
    Wenn dpkg(1) aufgerufen wird, Ausgabe der genauen Befehlszeile mit der es aufgerufen wurde, mit Argumenten, die durch einzelne Leerzeichen getrennt sind.

Debug::pkgDPkgProgressReporting
    Alle von dpkg(1) empfangenen Daten über einen Status-Datei-Deskriptor und alle während deren Auswertung gefundenen Fehler ausgeben.

Debug::pkgOrderList
    Eine Aufzeichnung des Algorithmus generieren, der über die Reihenfolge entscheidet, in der apt Pakete an dpkg(1) weiterleiten soll.

Debug::pkgPackageManager
    Statusmeldungen ausgeben, die die Schritte nachverfolgen, die beim Aufruf von dpkg(1) ausgeführt werden.

Debug::pkgPolicy
    Die Priorität jeder Paketliste beim Start ausgeben.

Debug::pkgProblemResolver
    Die Ausführung des Abhängigkeitenverfolgers aufzeichnen (dies wird nur auf das angewandt, was geschieht, wenn ein komplexes Abhängigkeitsproblem aufgetreten ist).

Debug::pkgProblemResolver::ShowScores
    Eine Liste aller installierten Pakete mit ihren berechneten Bewertungen, die vom pkgProblemResolver benutzt werden, ausgeben. Die Beschreibung des Pakets ist die gleiche, wie in Debug::pkgDepCache::Marker beschrieben.

Debug::sourceList
    Die Informationen über die in /etc/apt/vendors.list gelesenen Anbieter ausgeben.

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.conf
    APT-Konfigurationsdatei. Konfigurationselement: Dir::Etc::Main.

/etc/apt/apt.conf.d/
    APT-Konfigurationsdatei-Fragmente. Konfigurationselement: Dir::Etc::Parts.

SIEHE AUCH

apt-cache(8), apt-config(8), apt_preferences(5).

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 angefertigt in Zusammenarbeit mit dem Debian German-l10n-Team debian-l10n-german@lists.debian.org.

AUTHORS

Jason Gunthorpe

APT-Team

Daniel Burrows <dburrows@debian.org>
    Erste Dokumentation von Debug::*.

NOTES

1.  APT-Fehlerseite
    http://bugs.debian.org/src:apt