Diese APT-Transportmethode implementiert kein Protokoll, um auf lokale oder ferne Depots selbst zuzugreifen, beschafft jedoch eine Spiegelserverliste und leitet alle Anfragen an den/die Spiegel, der/die aus der Liste herausgegriffen wurde(n). Der Zugriff erfolgt über andere Transportprotokolle wie apt-transport-http(1). Die Grundfunktionalität ist seit APT 0.7.24 verfügbar, war jedoch bis APT 1.6 nicht dokumentiert. APT 1.6 enthält eine komplette Neuentwicklung der Transportmethode und der unterstützten Funktionalitäten. Beachten Sie, dass eine Transportmethode niemals durch einen Benutzer direkt aufgerufen wird, jedoch von APT-Werkzeugen basierend auf der Konfiguration des Benutzers.
Falls das Beschaffen einer Datei mittels eines Spiegelservers fehlschlägt, stellt die Methode sicher, dass automatisch ein anderer möglicher Spiegelserver der Liste ausprobiert wird, entweder bis die Datei geholt wurde oder bis kein Spiegelserver auf der Liste mehr übrig ist. Damit werden transparent Serverausfallzeiten und ähnliche Probleme gehandhabt.
Die Konsequenzen für die Sicherheit aufgrund der Transportmethode basieren auf Sicherheitserwägungen, die mit der Transportmethode verbunden sind, die zum Holen der Spiegelserverliste verwendet wird, und welche Transportmethoden beim Zugriff auf den/die ausgewählten Spiegelserver durch die Transportmethode beteiligt sind.
Diese Transportmethode hat derzeit keine Konfigurationsoptionen. Die Auswahl des Spiegelservers basiert ganz auf den angebotenene Spiegelservern auf der Spiegelserverliste und den Dateien, die APT holen möchte.
Eine Spiegelserverliste enthält mindestens eine Zeile. Jede Zeile gibt einen URI für einen Spiegelserver an. Leere Zeilen und die, die mit einem Rautezeichen (#) beginnen, werden ignoriert. Ein URI beginnt immer mit einem URI-Schema, das angibt, welche Transportmethode für diesen Spiegelserver benutzt wird. Falls der URI beispielsweise mit http: anfängt, ist die zuständige Transportmethode apt-transport-http(1), was spezielle Anforderungen an das Format des verbleibenden Teils des URI stellen kann.
Metadaten über einen Spiegelserver können in derselben Zeile angegeben werden, vom URI durch einen Tabulator getrennt. Mehrere Elemente der Metadaten können ihrerseits durch Leerzeichen oder Tabulatoren getrennt werden. (Dies ist eine fortschrittliche Funktionalität, die erst seit APT 1.6 verfügbar ist. Ältere APT-Versionen scheitern bei der Auswertung von Spiegelserverlisten, die diese Funktionalität verwenden.)
Seit APT 1.6 wird auch die Verwendung komprimierter Spiegelserverlisten unterstützt. Beachten Sie, dass der Dateiname der Spiegelserverliste den verwendeten Komprimierungsalgorithmus angeben muss; es wird keine automatische Bestimmung anhand des Dateiinhalts durchgeführt.
Wie im Format angegeben, können an einen Spiegelserver zusätzliche Metadaten angehängt werden, um zu verhindern, dass ein Spiegelserver ausgewählt wird, um eine Datei zu beschaffen, die diesen Metadaten nicht entspricht. Auf diese Weise kann die Spiegelserverliste z.B. Teilspiegelserver enthalten, die nur bestimmte Architekturen bereitstellen, und APT wird für Dateien, die eine nicht aufgeführte Architektur benötigen, automatisch einen anderen Spiegelserver auswählen. Unterstützt werden Beschränkungen für die Architektur (arch), den Codenamen der Veröffentlichung (codename), Bestandteil des Depots, in dem sich die Datei befindet (component), die zur Datei passende Sprache (lang), Suite-Name der Veröffentlichung (suite) und Typ der Datei (type).
Falls für einen Spiegel keine Priorität über den Metadatenschlüssel priority angegeben wurde, ist die Reihenfolge, in der die Spiegelserver ausgewählt werden, zufällig. Falls eine bestimmte Zusammenstellung von Spiegelservern zuerst vor anderen Zusammenstellungen ausprobiert werden soll, kann die Priorität explizit gesetzt werden. Die Spiegelserver mit der niedrigsten Nummer werden zuerst ausprobiert. Spiegelserver, die keine explizit gesetzte Priorität haben, werden standardmäßig auf die höchstmögliche Nummer gesetzt und daher zuletzt ausprobiert. Die Auswahl zwischen Spiegelservern mit derselben Priorität erfolgt wiederum zufällig.
Die Verfügbarkeit und Auswahl von Transportmethoden in einer Spiegelserverliste wird durch die Zugriffsart von APT auf die Spiegelserverliste beschränkt. Falls eine lokale Transportmethode wie file oder copy benutzt wird, kann die Spiegelserverliste auch lokale Ressourcen enthalten, während eine Spiegelserverliste, auf die per http zugegriffen wird, dies nicht kann. Eine Spiegelserverliste kann nicht zusätzlich eine weitere Spiegelserverliste oder andere verpackte Transportmethoden (wie apt-transport-tor) enthalten. Sie finden in der Dokumentation dieser Transportmethoden, wie sie mit der Spiegelservermethode benutzt werden.
Beachten Sie, dass APT-Versionen vor 1.6 keine andere Transportmethode als http unterstützten.
Eine einfache Beispielspiegelserverliste, die von allen APT-Versionen mit einer Spiegelservermethode (>= 0.7.24) unterstützt wird, in der der Client einen von drei Spiegelservern aussuchen kann:
Angenommen, eine Datei mit diesem Inhalt wäre als /etc/apt/mirrorlist.txt auf Ihrem Rechner gespeichert. Sie kann (seit APT 1.6) wie folgt in sources.list(5) benutzt werden:
deb mirror+file:/etc/apt/mirrorlist.txt bullseye main
Alle Versionen der Spiegelservermethode unterstützen eine Spiegelserverliste, auf die mittels HTTP zugegriffen werden kann. Wird davon ausgegangen, dass sie unter http://apt.example.org/mirror.lst verfügbar ist, kann obiger Sources.list-Eintrag kann stattdessen auch wie folgt geschrieben werden:
deb mirror://apt.example.org/mirror.lst bullseye main
Beachten Sie, das seit APT 1.6 die Verwendung von mirror+http der Einheitlichkeit wegen mirror vorgezogen werden sollte. Die Funktionalität ist dieselbe.
Wie in der Formatdefinition erklärt, unterstützen dies APT-Versionen vor 1.6 nicht und das Auswerten der Spiegelserverliste wird scheitern. Die Beispielspiegelserverliste ist absichtlich komplex, um einige Aspekte der Auswahl zu zeigen. Die folgende Einstellung wird angenommen: Der erste Spiegelserver ist ein lokaler Spiegelserver, auf den mit der File-Methode zugegriffen wird, aber möglicherweise unvollständig. Der zweite Spiegelserver hat eine gute Verbindung, ist aber ein Teilspiegelserver in sofern, dass er nur Dateien der Architekturen amd64 und all enthält. Die verbleibenden Spiegelserver sind Durchschnittsserver, die nur kontaktiert werden sollen, wenn die vorherigen nicht funktionieren.
file:/srv/local/debian/mirror/ priority:1 type:index http://partial.example.org/mirror/ priority:2 arch:amd64 arch:all type:deb http://ftp.us.debian.org/debian/ type:deb http://ftp.de.debian.org/debian/ type:deb https://deb.debian.org/debian/
In dieser Einstellung mit dieser Spiegelserverliste wird der erste Spiegelserver benutzt, um alle Indexdateien herunterzuladen, unter der Annahme, dass auf die Spiegelserverliste selbst über eine lokale Transportmethode wie file zugegriffen wird. Falls dies nicht so ist, auf den Spiegelserver aus einem anderen Grund nicht zugegriffen werden kann oder er die angeforderte Datei nicht enthält, wird ein anderer Spiegelserver benutzt, um die Datei zu beschaffen, was vom Typ der Datei abhängt: Eine Indexdatei wird durch den letzten Spiegelserver auf der Liste bereitgestellt, während ein Paket der Architektur amd64 durch den zweiten und z.B. der Architektur i386 durch einen der letzten drei.
m[blue]APT-Fehlerseitem[][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.
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.
APT-Team