Zum Inhalt springen

/etc/apt/sources.list: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
'''{{BASEPAGENAME}}''' - Beschreibung
sources.list - Liste konfigurierter APT-Datenquellen


== Beschreibung ==
== Beschreibung ==
Zeile 75: Zeile 75:


</noinclude>
</noinclude>


= MAN =
= MAN =
{| class="wikitable"
== BESCHREIBUNG ==
|SOURCES.LIST(5)
Die Quellenliste /etc/apt/sources.list und die in /etc/apt/sources.list.d/ enthaltenen Dateien wurden entworfen, um eine beliebige Anzahl aktiver Quellen und unterschiedlicher Quellmedien zu unterstützen
|APT
* Die Dateien führen eine Quelle je Zeile auf (einzeiliger Stil) oder enthalten mehrzeilige Absätze, die eine oder mehrere Quellen pro Absatz definieren (Deb822-Stil), bei der die bevorzugte Quelle zuerst aufgeführt wird (im Fall, dass eine einzelne Version von mehr als einer Quelle verfügbar ist)
|SOURCES.LIST(5)
* Die Informationen über die konfigurierten Quellen werden durch '''apt-get update''' (oder einem vergleichbaren Befehl einer anderen APT-Oberfläche) beschafft
|}
 
= NAME =
sources.list - Liste konfigurierter APT-Datenquellen
 
= BESCHREIBUNG =
Die Quellenliste /etc/apt/sources.list und die in   /etc/apt/sources.list.d/ enthaltenen Dateien wurden entworfen, um eine   beliebige Anzahl aktiver Quellen und unterschiedlicher Quellmedien zu   unterstützen. Die Dateien führen eine Quelle je Zeile auf   (einzeiliger Stil) oder enthalten mehrzeilige Absätze, die eine oder   mehrere Quellen pro Absatz definieren (Deb822-Stil), bei der die bevorzugte   Quelle zuerst aufgeführt wird (im Fall, dass eine einzelne Version   von mehr als einer Quelle verfügbar ist). Die Informationen   über die konfigurierten Quellen werden durch '''apt-get update'''   (oder einem vergleichbaren Befehl einer anderen APT-Oberfläche)   beschafft.


= SOURCES.LIST.D =
== SOURCES.LIST.D ==
Das Verzeichnis /etc/apt/sources.list.d stellt eine   Möglichkeit bereit, sources.list-Einträge in separaten Dateien   hinzuzufügen. Zwei verschiedene Formate sind, wie in den beiden   nächsten Abschnitten erklärt, erlaubt. Dateinamen   müssen abhängig vom enthaltenen Format entweder eine .list-   oder .sources-Endung haben. Die Dateinamen dürfen nur Buchstaben (a-z   und A-Z), Ziffern (0-9), Unterstrich (_), Bindestrich (-) und Punkt (.)   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.
Das Verzeichnis /etc/apt/sources.list.d stellt eine Möglichkeit bereit, sources.list-Einträge in separaten Dateien hinzuzufügen
* Zwei verschiedene Formate sind, wie in den beiden nächsten Abschnitten erklärt, erlaubt
* Dateinamen müssen abhängig vom enthaltenen Format entweder eine .list- oder .sources-Endung haben
* Die Dateinamen dürfen nur Buchstaben (a-z und A-Z), Ziffern (0-9), Unterstrich (_), Bindestrich (-) und Punkt (.) 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


Der empfohlene Dateiname ist   /etc/apt/sources.list.d/''Lieferant''.sources, wobei ''Lieferant'' das   Ergebnis von '''dpkg-vendor --query Vendor | tr A-Z a-z''' im   deb822-artigen Format ist. Ubuntu verwendet beispielsweise   /etc/apt/sources.list.d/ubuntu.sources.
Der empfohlene Dateiname ist /etc/apt/sources.list.d/''Lieferant''.sources, wobei ''Lieferant'' das Ergebnis von '''dpkg-vendor --query Vendor | tr A-Z a-z''' im deb822-artigen Format ist
* Ubuntu verwendet beispielsweise /etc/apt/sources.list.d/ubuntu.sources


= FORMAT MIT EINZEILIGEM STIL =
== FORMAT MIT EINZEILIGEM STIL ==
Dateien in diesem Format haben die Endung .list. Jede Zeile, die   eine Quelle angibt, beginnt mit einem Typ (z.B. deb-src), gefolgt von   Optionen und Argumenten für diesen Typ. Individuelle Einträge   können nicht auf einer Folgezeile fortgesetzt werden. Leere Zeilen   werden ignoriert und ein #-Zeichen irgendwo in einer Zeile kennzeichnet den   Rest der Zeile als Kommentar. Ein Eintrag kann folglich durch   Auskommentieren der ganzen Zeile deaktiviert werden. Falls Optionen   bereitgestellt werden sollen, werden sie durch Leerräume getrennt und   alle zusammen in quadratische Klammern ([]) eingeschlossen. Sie sind in der   Zeile nach dem Typ enthalten und mit einem Leerraum von ihm getrennt. Falls   eine Option mehrere Werte erlaubt, werden diese voneinander per Komma (,)   getrennt. Ein Optionsname wird von seinem (seinen) Wert(en) durch ein   Gleichheitszeichen (=) getrennt. Optionen mit mehreren Werten haben   außerdem -= und += als Trenner, die statt den vorgegebenen Wert durch   den (die) angegebenen Wert(e) zu ersetzen, den vorgegebenen Wert   ändern und den (die) übergebenen Wert(e) entfernen oder   einschließen.
Dateien in diesem Format haben die Endung .list
* Jede Zeile, die eine Quelle angibt, beginnt mit einem Typ (z.&nbsp;B.&nbsp;deb-src), gefolgt von Optionen und Argumenten für diesen Typ
* Individuelle Einträge können nicht auf einer Folgezeile fortgesetzt werden
* Leere Zeilen werden ignoriert und ein #-Zeichen irgendwo in einer Zeile kennzeichnet den Rest der Zeile als Kommentar
* Ein Eintrag kann folglich durch Auskommentieren der ganzen Zeile deaktiviert werden
* Falls Optionen bereitgestellt werden sollen, werden sie durch Leerräume getrennt und alle zusammen in quadratische Klammern ([]) eingeschlossen
* Sie sind in der Zeile nach dem Typ enthalten und mit einem Leerraum von ihm getrennt
* Falls eine Option mehrere Werte erlaubt, werden diese voneinander per Komma (,) getrennt
* Ein Optionsname wird von seinem (seinen) Wert(en) durch ein Gleichheitszeichen (=) getrennt
* Optionen mit mehreren Werten haben außerdem -= und += als Trenner, die statt den vorgegebenen Wert durch den (die) angegebenen Wert(e) zu ersetzen, den vorgegebenen Wert ändern und den (die) übergebenen Wert(e) entfernen oder einschließen


Dies ist das traditionelle, von allen APT-Versionen   unterstützte Format. Beachten Sie, dass nicht alle unten   beschriebenen Optionen von allen Versionen von APT unterstützt   werden. Beachten Sie außerdem, dass einige ältere Anwendungen,   die dieses Format selbst auswerten, möglicherweise nicht erwarten,   dass Optionen auftauchen, da diese vor der Einführung der   Unterstützung mehrerer Architekturen nicht üblich waren.
Dies ist das traditionelle, von allen APT-Versionen unterstützte Format
* Beachten Sie, dass nicht alle unten beschriebenen Optionen von allen Versionen von APT unterstützt werden
* Beachten Sie außerdem, dass einige ältere Anwendungen, die dieses Format selbst auswerten, möglicherweise nicht erwarten, dass Optionen auftauchen, da diese vor der Einführung der Unterstützung mehrerer Architekturen nicht üblich waren


Dieses Format ist veraltet und wird schließlich entfernt,   aber frühestens 2029.
Dieses Format ist veraltet und wird schließlich entfernt, aber frühestens 2029


= FORMAT IM DEB822-STIL =
== FORMAT IM DEB822-STIL ==
Dateien in diesem Format haben die Endung .sources. Dieses Format   hat eine ähnliche Syntax wie andere von Debian und seinen Derivaten   benutzte Dateien, wie Metadatendateien, die APT von den konfigurierten   Quellen herunterlädt oder der Datei debian/control in einem   Debian-Quellpaket. Individuelle Einträge werden durch eine leere   Zeile getrennt; zusätzliche leere Zeilen werden ignoriert und   #-Zeichen am Anfang einer Zeile kennzeichnen die ganze Zeile als Kommentar.    Ein Eintrag kann daher deaktiviert werden, indem jede Zeile, die zum Absatz   gehört, auskommentiert wird. Es ist üblicherweise jedoch   einfacher, dem Absatz das Feld »Enabled: no«   hinzuzufügen, um den Eintrag zu deaktivieren. Durch Entfernen des   Feldes oder indem es auf »yes« gesetzt wird, wird es wieder   aktiviert. Optionen haben dieselbe Syntax wie jedes andere Feld: ein   Feldname, durch einen Doppelpunkt (:) und optionale Leerräume von   ihren (ihrem) Wert(en) getrennt. Beachten Sie insbesondere, dass mehrere   Werte durch Leerräume (wie Leerzeichen, Tabulatoren und   Zeilenumbrüche) getrennt werden, nicht durch Kommas, wie im   einzeiligen Format. Felder mit mehreren Werten wie Architectures haben   obendrein Architectures-Add und Architectures-Remove, um den Vorgabewert zu   ändern, statt ihn zu ersetzen.
Dateien in diesem Format haben die Endung .sources
* Dieses Format hat eine ähnliche Syntax wie andere von Debian und seinen Derivaten benutzte Dateien, wie Metadatendateien, die APT von den konfigurierten Quellen herunterlädt oder der Datei debian/control in einem Debian-Quellpaket
* Individuelle Einträge werden durch eine leere Zeile getrennt; zusätzliche leere Zeilen werden ignoriert und #-Zeichen am Anfang einer Zeile kennzeichnen die ganze Zeile als Kommentar
* Ein Eintrag kann daher deaktiviert werden, indem jede Zeile, die zum Absatz gehört, auskommentiert wird
* Es ist üblicherweise jedoch einfacher, dem Absatz das Feld »Enabled: no« hinzuzufügen, um den Eintrag zu deaktivieren
* Durch Entfernen des Feldes oder indem es auf »yes« gesetzt wird, wird es wieder aktiviert
* Optionen haben dieselbe Syntax wie jedes andere Feld: ein Feldname, durch einen Doppelpunkt (:) und optionale Leerräume von ihren (ihrem) Wert(en) getrennt
* Beachten Sie insbesondere, dass mehrere Werte durch Leerräume (wie Leerzeichen, Tabulatoren und Zeilenumbrüche) getrennt werden, nicht durch Kommas, wie im einzeiligen Format
* Felder mit mehreren Werten wie Architectures haben obendrein Architectures-Add und Architectures-Remove, um den Vorgabewert zu ändern, statt ihn zu ersetzen


Dies ist ein neues Format, das von APT selbst seit Version 1.1.   unterstützt wird. Ältere Versionen ignorieren solche Dateien,   wie vorher beschrieben, mit einer Benachrichtigung. Es ist vorgesehen,   dieses Format schrittweise zum Standardformat zu machen und das vorher   beschriebene Format mit dem einzeiligen Stil zu missbilligen, da das neue   für Menschen und Maschinen gleichermaßen einfacher zu   erstellen, zu erweitern und zu ändern ist, insbesondere dann, wenn   viele Quellen und/oder Optionen beteiligt sind. Entwickler, die mit   APT-Quellen arbeiten und/oder sie auswerten, sind dringend ermutigt, dieses   Format zu unterstützen und das APT-Team zu kontaktieren, um diese   Arbeit zu koordinieren und weiterzugeben. Benutzer können dieses   Format bereits übernehmen, es könnten jedoch Probleme mit   Software auftreten, die dieses Format noch nicht unterstützen.
Dies ist ein neues Format, das von APT selbst seit Version 1.1.&nbsp;unterstützt wird. Ältere Versionen ignorieren solche Dateien, wie vorher beschrieben, mit einer Benachrichtigung
* Es ist vorgesehen, dieses Format schrittweise zum Standardformat zu machen und das vorher beschriebene Format mit dem einzeiligen Stil zu missbilligen, da das neue für Menschen und Maschinen gleichermaßen einfacher zu erstellen, zu erweitern und zu ändern ist, insbesondere dann, wenn viele Quellen und/oder Optionen beteiligt sind
* Entwickler, die mit APT-Quellen arbeiten und/oder sie auswerten, sind dringend ermutigt, dieses Format zu unterstützen und das APT-Team zu kontaktieren, um diese Arbeit zu koordinieren und weiterzugeben
* Benutzer können dieses Format bereits übernehmen, es könnten jedoch Probleme mit Software auftreten, die dieses Format noch nicht unterstützen


= DIE TYPEN »DEB« UND »DEB-SRC«: ALLGEMEINES FORMAT =
== DIE TYPEN »DEB« UND »DEB-SRC«: ALLGEMEINES FORMAT ==
Der deb-Typ beschreibt ein typisches zweistufiges Debian-Archiv,   Distribution/Bestandteil. Distribution ist typischerweise eine   Programmsammlung wie stable oder testing oder ein Codename wie trixie oder   forky während Bestandteil entweder main, contrib, non-free oder   non-free-firmware ist. Der deb-src-Typ beschreibt den Quellcode einer   Debian-Distribution in der gleichen Form wie den deb-Typ. Eine deb-src-Zeile   wird benötigt, um Quellindizes herunterzuladen.
Der deb-Typ beschreibt ein typisches zweistufiges Debian-Archiv, Distribution/Bestandteil
* Distribution ist typischerweise eine Programmsammlung wie stable oder testing oder ein Codename wie trixie oder forky während Bestandteil entweder main, contrib, non-free oder non-free-firmware ist
* Der deb-src-Typ beschreibt den Quellcode einer Debian-Distribution in der gleichen Form wie den deb-Typ
* Eine deb-src-Zeile wird benötigt, um Quellindizes herunterzuladen


Das Format für zwei Einträge im einzeiligen Stil,   die die deb- und deb-src-Typen benutzen, ist:
Das Format für zwei Einträge im einzeiligen Stil, die die deb- und deb-src-Typen benutzen, ist:
  deb [ Option1=Wert1 Option2=Wert2 ] URI Suite [Bestandteil1] [Bestandteil2] [...]
  deb [ Option1=Wert1 Option2=Wert2 ] URI Suite [Bestandteil1] [Bestandteil2] [...]
  deb-src [ Option1=Wert1 Option2=Wert2 ] URI Suite [Bestandteil1] [Bestandteil2] [...]
  deb-src [ Option1=Wert1 Option2=Wert2 ] URI Suite [Bestandteil1] [Bestandteil2] [...]
Der alternative Eintrag sieht im Format des Deb822-Stils etwa so   aus:
Der alternative Eintrag sieht im Format des Deb822-Stils etwa so aus:
      Types: deb deb-src


   
  Types: deb deb-src
      URIs: URI
URIs: URI
Suites: Suite
Components: [Bestandteil1] [Bestandteil2] [...]
Option1: Wert1
Option2: Wert2


Der URI für den deb-Typ muss die Basis der Debian-Distribution angeben, wo APT die Informationen findet, die es benötigt
      Suites: Suite
* Suite kann einen genauen Pfad angeben
* In diesem Fall müssen die Bestandteile weggelassen werden und Suite muss mit einem Schrägstrich (/) enden
* Dies ist nützlich, wenn nur ein bestimmtes Unterverzeichnis des vom URI angegebenen Archivs von Interesse ist
* Wenn Suite keinen genauen Pfad angibt, muss mindestens ein Bestandteil angegeben sein


Suite darf außerdem eine Variable, $(ARCH), enthalten, die zur Debian-Architektur (wie amd64 oder armel) expandiert wird, die auf dem System benutzt wird
      Components: [Bestandteil1] [Bestandteil2] [...]
* Dies erlaubt es, architekturunabhängige sources.list-Dateien zu benutzen
* Im Allgemeinen ist dies nur von Interesse, wenn ein genauer Pfad angegeben wird, andernfalls wird APT automatisch einen URI mit der aktuellen Architektur erstellen


Insbesondere im Format im einzeiligen Stil könnte es nötig sein, da pro Zeile nur eine Distribution angegeben werden kann, mehrere Zeilen für den gleichen URI zu haben, falls eine Untermenge aller verfügbarer Distributionen oder Bestandteile von diesem Ort gewünscht wird
      Option1: Wert1
* APT wird die URI-Liste sortieren, nachdem es intern eine komplette Zusammenstellung erstellt hat und es wird beispielsweise mehrere Bezüge zum gleichen Internet-Rechner zu einer einzigen Verbindung zusammenfassen, so dass es nicht ineffizient eine Verbindung herstellt, sie schließt, sonst etwas tut und dann erneut eine Verbindung zum gleichen Rechner herstellt
* APT parallelisiert außerdem Verbindungen zu verschiedenen Rechnern, um effektiver mit Sites mit niedriger Bandbreite umzugehen


Es ist wichtig, die Quellen in der Reihenfolge ihrer Bevorzugung aufzulisten, die bevorzugte Quelle zuerst
      Option2: Wert2
* Typischerweise resultiert dies in einer Sortierung nach Geschwindigkeit, vom schnellsten zum langsamsten (CD-ROM, gefolgt von Rechnern im lokalen Netzwerk, gefolgt von Internet-Rechnern, zum Beispiel)


Die Quellen für Ihre Distribution könnten zum Beispiel im veralteten Format mit einzeiligem Stil so aussehen:
   
Der URI für den deb-Typ muss die Basis der    Debian-Distribution angeben, wo APT die Informationen findet, die es    benötigt. Suite kann einen genauen Pfad angeben. In diesem Fall    müssen die Bestandteile weggelassen werden und Suite muss mit einem    Schrägstrich (/) enden. Dies ist nützlich, wenn nur ein    bestimmtes Unterverzeichnis des vom URI angegebenen Archivs von Interesse    ist. Wenn Suite keinen genauen Pfad angibt, muss mindestens ein Bestandteil    angegeben sein.
 
Suite darf außerdem eine Variable, $(ARCH), enthalten, die    zur Debian-Architektur (wie amd64 oder armel) expandiert wird, die auf dem    System benutzt wird. Dies erlaubt es, architekturunabhängige    sources.list-Dateien zu benutzen. Im Allgemeinen ist dies nur von Interesse,    wenn ein genauer Pfad angegeben wird, andernfalls wird APT automatisch einen    URI mit der aktuellen Architektur erstellen.
 
Insbesondere im Format im einzeiligen Stil könnte es    nötig sein, da pro Zeile nur eine Distribution angegeben werden kann,    mehrere Zeilen für den gleichen URI zu haben, falls eine Untermenge    aller verfügbarer Distributionen oder Bestandteile von diesem Ort    gewünscht wird. APT wird die URI-Liste sortieren, nachdem es intern    eine komplette Zusammenstellung erstellt hat und es wird beispielsweise    mehrere Bezüge zum gleichen Internet-Rechner zu einer einzigen    Verbindung zusammenfassen, so dass es nicht ineffizient eine Verbindung    herstellt, sie schließt, sonst etwas tut und dann erneut eine    Verbindung zum gleichen Rechner herstellt. APT parallelisiert    außerdem Verbindungen zu verschiedenen Rechnern, um effektiver mit    Sites mit niedriger Bandbreite umzugehen.
 
Es ist wichtig, die Quellen in der Reihenfolge ihrer Bevorzugung    aufzulisten, die bevorzugte Quelle zuerst. Typischerweise resultiert dies in    einer Sortierung nach Geschwindigkeit, vom schnellsten zum langsamsten    (CD-ROM, gefolgt von Rechnern im lokalen Netzwerk, gefolgt von    Internet-Rechnern, zum Beispiel).
 
Die Quellen für Ihre Distribution könnten zum   Beispiel im veralteten Format mit einzeiligem Stil so aussehen:
  deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] <nowiki>http://deb.debian.org/debian</nowiki> trixie main contrib non-free non-free-firmware
  deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] <nowiki>http://deb.debian.org/debian</nowiki> trixie main contrib non-free non-free-firmware
  deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] <nowiki>http://deb.debian.org/debian</nowiki> trixie-updates main contrib non-free non-free-firmware
  deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] <nowiki>http://deb.debian.org/debian</nowiki> trixie-updates main contrib non-free non-free-firmware
Zeile 157: Zeile 176:
  Components: main contrib non-free non-free-firmware
  Components: main contrib non-free non-free-firmware
  Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
  Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
.


= DIE TYPEN DEB UND DEB-SRC: OPTIONEN =
== DIE TYPEN DEB UND DEB-SRC: OPTIONEN ==
Jeder Quelleneintrag kann Optionen haben, die angegeben wurden, um   zu ändern, auf welche Quelle zugegriffen wird und wie Daten von ihr   beschafft werden. Format, Syntax und Namen der Optionen weichen, wie   beschrieben, zwischen dem Format mit einzeiligem Stil und dem Format mit   Deb822-Stil voneinander ab, für beide sind jedoch dieselben Optionen   verfügbar. Der Einfachheit halber wird der Deb822-Feldname   aufgeführt und der einzeilige Name in Klammern bereitgestellt. Denken   Sie daran, dass Sie ergänzend zum expliziten Setzen von Optionen mit   mehreren Werten auch die Möglichkeit haben, sie basierend auf dem   Vorgabewert zu ändern, aber diese Namen werden hier nicht explizit   aufgeführt. Nicht unterstützte Optionen werden stillschweigend   von allen APT-Versionen ignoriert.
Jeder Quelleneintrag kann Optionen haben, die angegeben wurden, um zu ändern, auf welche Quelle zugegriffen wird und wie Daten von ihr beschafft werden
* Format, Syntax und Namen der Optionen weichen, wie beschrieben, zwischen dem Format mit einzeiligem Stil und dem Format mit Deb822-Stil voneinander ab, für beide sind jedoch dieselben Optionen verfügbar
* Der Einfachheit halber wird der Deb822-Feldname aufgeführt und der einzeilige Name in Klammern bereitgestellt
* Denken Sie daran, dass Sie ergänzend zum expliziten Setzen von Optionen mit mehreren Werten auch die Möglichkeit haben, sie basierend auf dem Vorgabewert zu ändern, aber diese Namen werden hier nicht explizit aufgeführt
* Nicht unterstützte Optionen werden stillschweigend von allen APT-Versionen ignoriert


'''Architectures''' ('''arch''') ist eine Option mit mehreren Werten, die definiert, für welche Architekturen Informationen heruntergeladen werden sollen. Falls diese Option nicht gesetzt ist, ist die Voreinstellung alle durch die Konfigurationsoption '''APT::Architectures''' definierten Architekturen.
*'''Architectures''' ('''arch''') ist eine Option mit mehreren Werten, die definiert, für welche Architekturen Informationen heruntergeladen werden sollen
* Falls diese Option nicht gesetzt ist, ist die Voreinstellung alle durch die Konfigurationsoption '''APT::Architectures''' definierten Architekturen


'''Languages''' ('''lang''') ist eine Option mit mehreren Werten, die definiert, für welche Sprachen Informationen, wie etwa übersetzte Paketbeschreibungen, heruntergeladen werden sollenFalls diese Option nicht gesetzt ist, werden sie für alle durch die Konfigurationsoption '''Acquire::Languages''' definierten Sprachen heruntergeladen.
*'''Languages''' ('''lang''') ist eine Option mit mehreren Werten, die definiert, für welche Sprachen Informationen, wie etwa übersetzte Paketbeschreibungen, heruntergeladen werden sollen
* Falls diese Option nicht gesetzt ist, werden sie für alle durch die Konfigurationsoption '''Acquire::Languages''' definierten Sprachen heruntergeladen


'''Targets''' ('''target''') ist eine Option mit mehreren Werten, die definiert, welche Herunterladeziele APT aus dieser Quelle versucht zu beschaffen. Ist sie nicht angegeben, wird die Voreinstellung durch den Konfigurationsbereich '''Acquire::IndexTargets''' spezifiziert (Ziele werden im Feld Created-By durch ihren Namen angegeben)Außerdem können Ziele mittels des Felds Identifier als Option mit einem Wahrheitswert aktiviert oder deaktiviert werden, anstatt diese Option mit mehreren Werten zu benutzen.
*'''Targets''' ('''target''') ist eine Option mit mehreren Werten, die definiert, welche Herunterladeziele APT aus dieser Quelle versucht zu beschaffen
* Ist sie nicht angegeben, wird die Voreinstellung durch den Konfigurationsbereich '''Acquire::IndexTargets''' spezifiziert (Ziele werden im Feld Created-By durch ihren Namen angegeben)
* Außerdem können Ziele mittels des Felds Identifier als Option mit einem Wahrheitswert aktiviert oder deaktiviert werden, anstatt diese Option mit mehreren Werten zu benutzen


'''PDiffs''' ('''pdiffs''') ist ein yes-/no- (Ja-/Nein-)Wert, der steuert, ob APT versuchen soll, PDiffs zum Aktualisieren alter Indexe zu benutzen, statt die ganzen neuen Indexe herunterzuladen. Der Wert dieser Option wird ignoriert, falls das Depot die Verfügbarkeit von PDiffs nicht ankündigt. Sie ist auf den Wert der Option mit demselben Namen für eine bestimmte Indexdatei voreingestellt, die im Gültigkeitsbereich '''Acquire::IndexTargets''' definiert ist und die ihrerseits wiederum auf den Wert der Konfigurationsoption '''Acquire::PDiffs''' voreingestellt ist, deren Vorgabe yes ist.
*'''PDiffs''' ('''pdiffs''') ist ein yes-/no- (Ja-/Nein-)Wert, der steuert, ob APT versuchen soll, PDiffs zum Aktualisieren alter Indexe zu benutzen, statt die ganzen neuen Indexe herunterzuladen
* Der Wert dieser Option wird ignoriert, falls das Depot die Verfügbarkeit von PDiffs nicht ankündigt
* Sie ist auf den Wert der Option mit demselben Namen für eine bestimmte Indexdatei voreingestellt, die im Gültigkeitsbereich '''Acquire::IndexTargets''' definiert ist und die ihrerseits wiederum auf den Wert der Konfigurationsoption '''Acquire::PDiffs''' voreingestellt ist, deren Vorgabe yes ist


'''By-Hash''' ('''by-hash''') kann die Werte yes, no oder force haben und steuert, ob APT versuchen soll, Indexe über einen URI zu beschaffen, der aus einer Hash-Summe der erwarteten Datei konstruiert wird, statt über einen gut bekannten stabilen Dateinamen. Damit können unpassende Hash-Summen vermieden werden, dies erfordert jedoch einen Spiegelserver, der dies unterstützt. Ein yes- oder no-Wert aktiviert/deaktiviert die Verwendung dieser Funktionalität, falls diese Quelle ihre Unterstützung anzeigt, während force die Funktionalität ungeachtet der Angabe der Quelle aktiviert. Sie ist auf den Wert der Option mit demselben Namen für eine bestimmte Indexdatei voreingestellt, die im Gültigkeitsbereich '''Acquire::IndexTargets''' definiert ist und die ihrerseits wiederum auf den Wert der Konfigurationsoption '''Acquire::By-Hash''' voreingestellt ist, deren Vorgabe yes ist.
*'''By-Hash''' ('''by-hash''') kann die Werte yes, no oder force haben und steuert, ob APT versuchen soll, Indexe über einen URI zu beschaffen, der aus einer Hash-Summe der erwarteten Datei konstruiert wird, statt über einen gut bekannten stabilen Dateinamen
* Damit können unpassende Hash-Summen vermieden werden, dies erfordert jedoch einen Spiegelserver, der dies unterstützt
* Ein yes- oder no-Wert aktiviert/deaktiviert die Verwendung dieser Funktionalität, falls diese Quelle ihre Unterstützung anzeigt, während force die Funktionalität ungeachtet der Angabe der Quelle aktiviert
* Sie ist auf den Wert der Option mit demselben Namen für eine bestimmte Indexdatei voreingestellt, die im Gültigkeitsbereich '''Acquire::IndexTargets''' definiert ist und die ihrerseits wiederum auf den Wert der Konfigurationsoption '''Acquire::By-Hash''' voreingestellt ist, deren Vorgabe yes ist


Überdies gibt es Optionen, die, falls sie gesetzt sind,   ''alle'' Quellen mit demselben URI und derselben Suite beeinflussen,   daher müssen sie auf alle solchen Einträgen gesetzt werden und   können nicht zwischen verschiedenen Bestandteilen unterschieden   werden. APT wird versuchen, solche Anomalien aufzuspüren und Fehler   auszugeben.
Überdies gibt es Optionen, die, falls sie gesetzt sind, ''alle'' Quellen mit demselben URI und derselben Suite beeinflussen, daher müssen sie auf alle solchen Einträgen gesetzt werden und können nicht zwischen verschiedenen Bestandteilen unterschieden werden
* APT wird versuchen, solche Anomalien aufzuspüren und Fehler auszugeben


'''Allow-Insecure''' ('''allow-insecure'''), '''Allow-Weak''' ('''allow-weak''') und '''Allow-Downgrade-To-Insecure''' ('''allow-downgrade-to-insecure''') sind Wahrheitswerte, deren Voreinstellung no ist. Falls sie auf yes gesetzt sind, umgehen sie Teile von apt-secure(8) und sollten daher nicht leichtfertig benutzt werden.
*'''Allow-Insecure''' ('''allow-insecure'''), '''Allow-Weak''' ('''allow-weak''') und '''Allow-Downgrade-To-Insecure''' ('''allow-downgrade-to-insecure''') sind Wahrheitswerte, deren Voreinstellung no ist
* Falls sie auf yes gesetzt sind, umgehen sie Teile von apt-secure(8) und sollten daher nicht leichtfertig benutzt werden


'''Trusted''' ('''trusted''') ist ein Wert, der drei Status annehmen kann. APT entscheidet standardmäßig, ob ein Paket als vertrauenswürdig angesehen wird oder ob eine Warnung erscheinen soll, bevor z.B. Pakete aus dieser Quelle installiert werden. Diese Option kann benutzt werden, um diese Entscheidung außer Kraft zu setzen. Der Wert yes sagt APT, dass es diese Quelle immer als vertrauenswürdig ansehen soll, sogar dann, wenn sie die Authentifizierungsprüfungen nicht erfolgreich durchläuft. Sie deaktiviert Teile von apt-secure(8) und sollte daher nur in einem lokalen und vertrauenswürdigen Umfeld (falls überhaupt) verwendet werden, da die Sicherheit andernfalls verletzt wird. Der Wert no tut das Gegenteil. Er sorgt dafür, dass die Quelle als nicht vertrauenswürdig behandelt wird, sogar dann, wenn sie die Authentifizierungsprüfungen erfolgreich durchläuft. Der Vorgabewert kann nicht explizit gesetzt werden.
*'''Trusted''' ('''trusted''') ist ein Wert, der drei Status annehmen kann
* APT entscheidet standardmäßig, ob ein Paket als vertrauenswürdig angesehen wird oder ob eine Warnung erscheinen soll, bevor z.B
* Pakete aus dieser Quelle installiert werden
* Diese Option kann benutzt werden, um diese Entscheidung außer Kraft zu setzen
* Der Wert yes sagt APT, dass es diese Quelle immer als vertrauenswürdig ansehen soll, sogar dann, wenn sie die Authentifizierungsprüfungen nicht erfolgreich durchläuft
* Sie deaktiviert Teile von apt-secure(8) und sollte daher nur in einem lokalen und vertrauenswürdigen Umfeld (falls überhaupt) verwendet werden, da die Sicherheit andernfalls verletzt wird
* Der Wert no tut das Gegenteil
* Er sorgt dafür, dass die Quelle als nicht vertrauenswürdig behandelt wird, sogar dann, wenn sie die Authentifizierungsprüfungen erfolgreich durchläuft
* Der Vorgabewert kann nicht explizit gesetzt werden


'''Signed-By''' ('''signed-by''') ist eine Option, die erfordert, dass ein Depot die apt-secure(8)-Prüfung mit einem bestimmten Satz von Schlüsseln, statt mit allen vertrauenswürdigen Schlüsseln, durchläuft, die für APT konfiguriert sind. Sie wird als eine Liste absoluter Pfade zu Schlüsselbunddateien angegeben (müssen für den Systembenutzer _apt zugreif- und lesbar sein, stellen Sie also sicher, dass jedermann Leserechte für die Datei hat) sowie Fingerabdrücke von Schlüsseln, um diese aus Schlüsselbunden auszuwählen. Die empfohlenen Orte für Schlüsselbunde sind /usr/share/keyrings für von Paketen verwaltete Schlüsselbunde und /etc/apt/keyrings für vom Systembetreiber verwaltete Schlüsselbunde. Falls keine Schlüsselbunddateien festgelegt sind, ist die Vorgabe der Schlüsselbund trusted.gpg und alle Schlüsselbunde in dem Verzeichnis trusted.gpg.d/. Falls kein Fingerabdruck angegeben wurde, werden alle Schlüssel in den Schlüsselbunden ausgewählt. Ein Fingerabdruck wird außerdem alle Signaturen eines Unterschlüssels dieses Schlüssels akzeptieren, falls dies nicht gewünscht wird, kann ein Ausrufezeichen (!) an den Fingerabdruck angehängt werden, um dieses Verhalten zu deaktivieren. Die Option ist auf den Wert der Option mit demselben Namen voreingestellt, falls sie in der vorher beschafften Release-Datei dieses Depots gesetzt ist (allerdings können dadurch nur Fingerabdrücke angegeben werden). Andernfalls werden alle Schlüssel in den vertrauenswürdigen Schlüsselbunden als gültige Unterzeichner für dieses Depot angesehen. Die Option kann auch direkt gesetzt werden, um einen öffentlichen GPG-Schlüsselblock einzubetten. Es bedarf besonderer Vorsicht, die leere Zeile mit einleitenden Leerzeichen und ».« zu kodieren:
*'''Signed-By''' ('''signed-by''') ist eine Option, die erfordert, dass ein Depot die apt-secure(8)-Prüfung mit einem bestimmten Satz von Schlüsseln, statt mit allen vertrauenswürdigen Schlüsseln, durchläuft, die für APT konfiguriert sind
* Sie wird als eine Liste absoluter Pfade zu Schlüsselbunddateien angegeben (müssen für den Systembenutzer _apt zugreif- und lesbar sein, stellen Sie also sicher, dass jedermann Leserechte für die Datei hat) sowie Fingerabdrücke von Schlüsseln, um diese aus Schlüsselbunden auszuwählen
* Die empfohlenen Orte für Schlüsselbunde sind /usr/share/keyrings für von Paketen verwaltete Schlüsselbunde und /etc/apt/keyrings für vom Systembetreiber verwaltete Schlüsselbunde
* Falls keine Schlüsselbunddateien festgelegt sind, ist die Vorgabe der Schlüsselbund trusted.gpg und alle Schlüsselbunde in dem Verzeichnis trusted.gpg.d/
* Falls kein Fingerabdruck angegeben wurde, werden alle Schlüssel in den Schlüsselbunden ausgewählt
* Ein Fingerabdruck wird außerdem alle Signaturen eines Unterschlüssels dieses Schlüssels akzeptieren, falls dies nicht gewünscht wird, kann ein Ausrufezeichen (!) an den Fingerabdruck angehängt werden, um dieses Verhalten zu deaktivieren
* Die Option ist auf den Wert der Option mit demselben Namen voreingestellt, falls sie in der vorher beschafften Release-Datei dieses Depots gesetzt ist (allerdings können dadurch nur Fingerabdrücke angegeben werden)
* Andernfalls werden alle Schlüssel in den vertrauenswürdigen Schlüsselbunden als gültige Unterzeichner für dieses Depot angesehen
* Die Option kann auch direkt gesetzt werden, um einen öffentlichen GPG-Schlüsselblock einzubetten
* Es bedarf besonderer Vorsicht, die leere Zeile mit einleitenden Leerzeichen und ».« zu kodieren:
  Types: deb
  Types: deb
  URIs: <nowiki>https://deb.debian.org</nowiki>
  URIs: <nowiki>https://deb.debian.org</nowiki>
Zeile 185: Zeile 235:
  Signed-By:
  Signed-By:


  -----BEGIN PGP PUBLIC KEY BLOCK-----


   
  -----BEGIN PGP PUBLIC KEY BLOCK-----
  .
mDMEYCQjIxYJKwYBBAHaRw8BAQdAD/P5Nvvnvk66SxBBHDbhRml9ORg1WV5CvzKY
CuMfoIS0BmFiY2RlZoiQBBMWCgA4FiEErCIG1VhKWMWo2yfAREZd5NfO31cFAmAk
IyMCGyMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQREZd5NfO31fbOwD6ArzS
dM0Dkd5h2Ujy1b6KcAaVW9FOa5UNfJ9FFBtjLQEBAJ7UyWD3dZzhvlaAwunsk7DG
3bHcln8DMpIJVXht78sL
=IE0r
-----END PGP PUBLIC KEY BLOCK-----
*'''Check-Valid-Until''' ('''check-valid-until''') ist ein yes-/no- (Ja-/Nein-)Wert, der steuert, ob APT versuchen soll, Wiederholungsangriffe zu erkennen
* Ein Depotersteller kann eine Zeit festlegen, bis zu der die im Depot bereitgestellten Daten als gültig angesehen werden und, falls dieser Zeitpunkt erreicht ist, aber keine neuen Daten bereitgestellt wurden, die Daten als ungültig angesehen werden und ein Fehler ausgelöst wird
* Neben einer Steigerung der Sicherheit, da ein böswilliger Angreifer nicht fortlaufend alte Daten senden kann, um einen Benutzer vom Upgrade auf eine neue Version abzuhalten, hilft dies Benutzern auch, Spiegelserver zu erkennen, die nicht länger aktualisiert werden
* Einige Depots, wie die historischen Archive, werden jedoch absichtlich nicht mehr aktualisiert, daher kann diese Prüfung durch Setzen dieser Option auf no deaktiviert werden
* Voreingestellt ist der Wert der Konfigurationsoption '''Acquire::Check-Valid-Until''', die ihrerseits die Voreinstellung yes hat


*'''Valid-Until-Min''' ('''valid-until-min''') und '''Valid-Until-Max''' ('''valid-until-max''') können benutzt werden, um die Dauer in Sekunden zu verlängern oder zu verkürzen, in der die Daten des Depots als gültig angesehen werden. -Max kann insbesondere dann nützlich sein, wenn das Depot kein Valid-Until-Feld in seiner Release-Datei bereitstellt, indem Sie Ihren eigenen Wert setzen können, während -Min benutzt werden kann, um die Gültigkeitsdauer auf selten aktualisierten (lokalen) Spiegelservern für ein häufig aktualisiertes aber weniger oft erreichbares Archiv (das auch in der sources.list steht) zu erhöhen anstatt die Prüfung ganz zu deaktivieren
  mDMEYCQjIxYJKwYBBAHaRw8BAQdAD/P5Nvvnvk66SxBBHDbhRml9ORg1WV5CvzKY
* Voreingestellt sind die Werte der Konfigurationsoptionen '''Acquire::Min-ValidTime''' und '''Acquire::Max-ValidTime''', die standardmäßig jeweils nicht gesetzt sind


'''Check-Date''' ('''check-date''') ist ein Ja-/Nein-Wert, der steuert, ob APT berücksichtigen soll, ob die Zeit auf der Maschine korrekt ist und deshalb zeitbezogene Prüfungen durchführen soll, wie die Prüfung, ob eine Release-Datei nicht aus der Zukunft stammt
  CuMfoIS0BmFiY2RlZoiQBBMWCgA4FiEErCIG1VhKWMWo2yfAREZd5NfO31cFAmAk
* Sie zu deaktivieren deaktiviert auch die oben erwähnte Option '''Check-Valid-Until'''


'''Date-Max-Future''' ('''date-max-future''') steuert, wie weit aus der Zukunft ein Depot liegen darf
  IyMCGyMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQREZd5NfO31fbOwD6ArzS
* Voreingestellt ist der Wert der Konfigurationsoption '''Acquire::Max-FutureTime''', die standardmäßig zehn Sekunden beträgt


'''InRelease-Path''' ('''inrelease-path''') legt den Pfad zur InRelease-Datei relativ zur normalen Position einer InRelease-Datei fest
  dM0Dkd5h2Ujy1b6KcAaVW9FOa5UNfJ9FFBtjLQEBAJ7UyWD3dZzhvlaAwunsk7DG
* Standardmäßig ist diese Option nicht gesetzt und APT wird versuchen, eine InRelease-Datei zu holen oder, falls dies fehlschlägt, eine Release-Datei und die zugehörige Release.gpg-Datei
* Durch das Setzen dieser Option wird der angegebene Pfad anstelle der InRelease-Datei probiert und der Rückgriff auf Release-Dateien wird deaktiviert


'''Snapshot''' ('''snapshot''') allows selecting an earlier version of the archive from the snapshot service
  3bHcln8DMpIJVXht78sL
* Supported values are: enable (default) to allow selecting a snapshot with the '''--snapshot''' option, ID, or disable to exclude the repository


Schnappschusskennungen sind normalwerweise Zeitstempel in der Form JJJJMMDDTHHMMSSZ, wie 20220102T030405Z, was den 2
  =IE0r
* Januar 2022 um 03:04:05 UTC darstellt
* Server können allerdings zusätzliche Kennungstypen unterstützen und APT führt aktuell keine Überprüfungen durch


== URI-BESCHREIBUNG ==
  -----END PGP PUBLIC KEY BLOCK-----
•'''Check-Valid-Until'''  ('''check-valid-until''') ist ein yes-/no- (Ja-/Nein-)Wert, der steuert, ob  APT versuchen soll, Wiederholungsangriffe zu erkennen. Ein Depotersteller kann  eine Zeit festlegen, bis zu der die im Depot bereitgestellten Daten als  gültig angesehen werden und, falls dieser Zeitpunkt erreicht ist, aber  keine neuen Daten bereitgestellt wurden, die Daten als ungültig  angesehen werden und ein Fehler ausgelöst wird. Neben einer Steigerung  der Sicherheit, da ein böswilliger Angreifer nicht fortlaufend alte  Daten senden kann, um einen Benutzer vom Upgrade auf eine neue Version  abzuhalten, hilft dies Benutzern auch, Spiegelserver zu erkennen, die nicht  länger aktualisiert werden. Einige Depots, wie die historischen  Archive, werden jedoch absichtlich nicht mehr aktualisiert, daher kann diese  Prüfung durch Setzen dieser Option auf no deaktiviert werden.  Voreingestellt ist der Wert der Konfigurationsoption  '''Acquire::Check-Valid-Until''', die ihrerseits die Voreinstellung yes  hat.
 
•'''Valid-Until-Min''' ('''valid-until-min''')  und '''Valid-Until-Max''' ('''valid-until-max''') können benutzt  werden, um die Dauer in Sekunden zu verlängern oder zu  verkürzen, in der die Daten des Depots als gültig angesehen  werden. -Max kann insbesondere dann nützlich sein, wenn das Depot kein  Valid-Until-Feld in seiner Release-Datei bereitstellt, indem Sie Ihren eigenen  Wert setzen können, während -Min benutzt werden kann, um die  Gültigkeitsdauer auf selten aktualisierten (lokalen) Spiegelservern  für ein häufig aktualisiertes aber weniger oft erreichbares  Archiv (das auch in der sources.list steht) zu erhöhen anstatt die  Prüfung ganz zu deaktivieren. Voreingestellt sind die Werte der  Konfigurationsoptionen '''Acquire::Min-ValidTime''' und  '''Acquire::Max-ValidTime''', die standardmäßig jeweils nicht  gesetzt sind.
 
•'''Check-Date''' ('''check-date''') ist ein  Ja-/Nein-Wert, der steuert, ob APT berücksichtigen soll, ob die Zeit  auf der Maschine korrekt ist und deshalb zeitbezogene Prüfungen  durchführen soll, wie die Prüfung, ob eine Release-Datei nicht  aus der Zukunft stammt. Sie zu deaktivieren deaktiviert auch die oben  erwähnte Option '''Check-Valid-Until'''.
 
•'''Date-Max-Future''' ('''date-max-future''')  steuert, wie weit aus der Zukunft ein Depot liegen darf. Voreingestellt ist  der Wert der Konfigurationsoption '''Acquire::Max-FutureTime''', die  standardmäßig zehn Sekunden beträgt.
 
•'''InRelease-Path''' ('''inrelease-path''')  legt den Pfad zur InRelease-Datei relativ zur normalen Position einer  InRelease-Datei fest. Standardmäßig ist diese Option nicht  gesetzt und APT wird versuchen, eine InRelease-Datei zu holen oder, falls dies  fehlschlägt, eine Release-Datei und die zugehörige  Release.gpg-Datei. Durch das Setzen dieser Option wird der angegebene Pfad  anstelle der InRelease-Datei probiert und der Rückgriff auf  Release-Dateien wird deaktiviert.
 
•'''Snapshot''' ('''snapshot''') allows  selecting an earlier version of the archive from the snapshot service.  Supported values are: enable (default) to allow selecting a snapshot with the  '''--snapshot''' option, ID, or disable to exclude the repository.
 
Schnappschusskennungen sind normalwerweise Zeitstempel in der Form    JJJJMMDDTHHMMSSZ, wie 20220102T030405Z, was den 2. Januar 2022 um 03:04:05    UTC darstellt. Server können allerdings zusätzliche    Kennungstypen unterstützen und APT führt aktuell keine    Überprüfungen durch.
 
= URI-BESCHREIBUNG =
Die derzeit erkannten URI-Typen sind:
Die derzeit erkannten URI-Typen sind:


'''http''' (apt-transport-http(1))
'''http''' (apt-transport-http(1))


Das Schema »http« gibt einen HTTP-Server für ein Archiv an und ist die am häufigsten verwendete MethodeDer URI kann Anmeldeinformationen direkt enthalten, falls das Archiv dies erfordert, vorzugsweise sollte jedoch apt_auth.conf(5) benutzt werdenDie Methode unterstützt auch SOCKS5- und HTTP(S)-Proxys, die entweder über APT-spezifische Konfiguration eingerichtet werden oder durch die Umgebungsvariable '''http_proxy''', die (unter der Annahme, dass ein HTTP-Proxy Authentifizierung verlangt) das Format ''<nowiki>http://Benutzer:Passwort@Server:Port/</nowiki>'' hat. Die Einzelheiten der Authentifizierung für Proxys können auch über apt_auth.conf(5) bereitgestellt werden.
Das Schema »http« gibt einen HTTP-Server für ein Archiv an und ist die am häufigsten verwendete Methode
* Der URI kann Anmeldeinformationen direkt enthalten, falls das Archiv dies erfordert, vorzugsweise sollte jedoch apt_auth.conf(5) benutzt werden
* Die Methode unterstützt auch SOCKS5- und HTTP(S)-Proxys, die entweder über APT-spezifische Konfiguration eingerichtet werden oder durch die Umgebungsvariable '''http_proxy''', die (unter der Annahme, dass ein HTTP-Proxy Authentifizierung verlangt) das Format ''<nowiki>http://Benutzer:Passwort@Server:Port/</nowiki>'' hat
* Die Einzelheiten der Authentifizierung für Proxys können auch über apt_auth.conf(5) bereitgestellt werden


Beachten Sie, dass diese Formen der Authentifizierung unsicher   sind, da die ganze Kommunikation mit dem fernen Server (oder Proxy)   unverschlüsselt ist, so dass ein Angreifer mit ausreichenden   Fähigkeiten die Anmeldung sowie alle anderen Interaktionen beobachten   und aufzeichnen kann. Der Angreifer kann die Kommunikation ''nicht''   verändern, da das Datensicherheitsmodell von APT unabhängig   von der gewählten Transportmethode ist. Einzelheiten finden Sie unter   apt-secure(8).
Beachten Sie, dass diese Formen der Authentifizierung unsicher sind, da die ganze Kommunikation mit dem fernen Server (oder Proxy) unverschlüsselt ist, so dass ein Angreifer mit ausreichenden Fähigkeiten die Anmeldung sowie alle anderen Interaktionen beobachten und aufzeichnen kann
* Der Angreifer kann die Kommunikation ''nicht'' verändern, da das Datensicherheitsmodell von APT unabhängig von der gewählten Transportmethode ist
* Einzelheiten finden Sie unter apt-secure(8)


'''https''' (apt-transport-https(1))
; https (apt-transport-https(1))


Das Schema »https« gibt einen HTTPS-Server für ein Archiv an und ist bezüglich Benutzung und verfügbaren Optionen dem HTTP-Schema sehr ähnlich. Der Hauptunterschied besteht darin, dass die Kommunikation zwischen APT und Server (oder Proxy) verschlüsselt abläuft. Beachten Sie, dass die Verschlüsselung nicht davor schützt, dass ein Angreifer erfährt, welcher Server (oder Proxy) mit APT kommuniziert. Eine tiefere Analyse kann möglicherweise noch offenbaren, welche Daten heruntergeladen wurden. Falls dies Sorge bereitet, könnten die nachfolgend genannten TOR-basierten Schemata eine geeignete Alternative sein.
Das Schema »https« gibt einen HTTPS-Server für ein Archiv an und ist bezüglich Benutzung und verfügbaren Optionen dem HTTP-Schema sehr ähnlich
* Der Hauptunterschied besteht darin, dass die Kommunikation zwischen APT und Server (oder Proxy) verschlüsselt abläuft
* Beachten Sie, dass die Verschlüsselung nicht davor schützt, dass ein Angreifer erfährt, welcher Server (oder Proxy) mit APT kommuniziert
* Eine tiefere Analyse kann möglicherweise noch offenbaren, welche Daten heruntergeladen wurden
* Falls dies Sorge bereitet, könnten die nachfolgend genannten TOR-basierten Schemata eine geeignete Alternative sein


'''mirror''', '''mirror+'''''Schema''   (apt-transport-mirror(1))
'''mirror''', '''mirror+'''''Schema'' (apt-transport-mirror(1))


Das Schema »mirror« gibt den Speicherort der Spiegelserverliste an. Standardmäßig wird für den Speicherort das Schema http benutzt, aber jedes andere Schema kann per '''mirror+'''''Schema'' verwendet werden. Die Spiegelserverliste selbst kann mehrere verschiedenen URIs für Spiegel enthalten, die der APT-Client transparent auswählt oder auf die er zurückgreiftDies ist als Hilfe bei der Lastverteilung zwischen verfügbaren Spiegelservern gedacht und stellt zudem sicher, dass Clients sogar dann Daten beziehen können, wenn einige konfigurierte Spiegelserver nicht verfügbar sind.
Das Schema »mirror« gibt den Speicherort der Spiegelserverliste an
* Standardmäßig wird für den Speicherort das Schema http benutzt, aber jedes andere Schema kann per '''mirror+'''''Schema'' verwendet werden
* Die Spiegelserverliste selbst kann mehrere verschiedenen URIs für Spiegel enthalten, die der APT-Client transparent auswählt oder auf die er zurückgreift
* Dies ist als Hilfe bei der Lastverteilung zwischen verfügbaren Spiegelservern gedacht und stellt zudem sicher, dass Clients sogar dann Daten beziehen können, wenn einige konfigurierte Spiegelserver nicht verfügbar sind


'''file'''
'''file'''


Das file-Schema erlaubt es einem beliebigen Verzeichnis im Dateisystem, als Archiv betrachtet zu werden. Dies ist nützlich für eingehängtes NFS und lokale Spiegel oder Archive.
Das file-Schema erlaubt es einem beliebigen Verzeichnis im Dateisystem, als Archiv betrachtet zu werden
* Dies ist nützlich für eingehängtes NFS und lokale Spiegel oder Archive


'''cdrom'''
'''cdrom'''


Das Schema »cdrom« erlaubt APT ein lokales CD-ROM-, DVD- oder USB-Laufwerk mit Medienwechsel zu benutzen. Benutzen Sie das Programm apt-cdrom(8), um »cdrom«-Einträge in der Quellenliste zu erstellen.
Das Schema »cdrom« erlaubt APT ein lokales CD-ROM-, DVD- oder USB-Laufwerk mit Medienwechsel zu benutzen
* Benutzen Sie das Programm apt-cdrom(8), um »cdrom«-Einträge in der Quellenliste zu erstellen


'''copy'''
'''copy'''


Das Schema »copy« ist identisch mit dem file-Schema, außer dass Pakete in das Zwischenspeicherverzeichnis kopiert werden, anstatt direkt von ihrem Herkunftsort benutzt zu werden. Dies ist für Leute nützlich, die Wechseldatenträger benutzen, um Dateien mit APT umherzukopieren.
Das Schema »copy« ist identisch mit dem file-Schema, außer dass Pakete in das Zwischenspeicherverzeichnis kopiert werden, anstatt direkt von ihrem Herkunftsort benutzt zu werden
* Dies ist für Leute nützlich, die Wechseldatenträger benutzen, um Dateien mit APT umherzukopieren


weitere zulässige URI-Typen hinzufügen
weitere zulässige URI-Typen hinzufügen


APT kann mit weiteren Methoden erweitert werden, die in anderen optionalen Paketen geliefert werden, die dem Namensschema apt-transport-''Methode'' folgen sollten. Das APT-Team betreut zum Beispiel außerdem das Paket apt-transport-tor, das Zugriffsmethoden für HTTP- und HTTPS-URIs bereitstellt, die über das TOR-Netzwerk geleitet werden.
APT kann mit weiteren Methoden erweitert werden, die in anderen optionalen Paketen geliefert werden, die dem Namensschema apt-transport-''Methode'' folgen sollten
* Das APT-Team betreut zum Beispiel außerdem das Paket apt-transport-tor, das Zugriffsmethoden für HTTP- und HTTPS-URIs bereitstellt, die über das TOR-Netzwerk geleitet werden


= BEISPIELE =
== BEISPIELE ==
benutzt die lokal gespeicherten (oder per NFS eingehängten)   Archive in /home/apt/debian für stable/main, stable/contrib,   stable/non-free und stable/non-free-firmware.
benutzt die lokal gespeicherten (oder per NFS eingehängten) Archive in /home/apt/debian für stable/main, stable/contrib, stable/non-free und stable/non-free-firmware
  deb file:/home/apt/debian stable main contrib non-free non-free-firmware
  deb file:/home/apt/debian stable main contrib non-free non-free-firmware


Zeile 266: Zeile 327:
  Suites: stable
  Suites: stable
  Components: main contrib non-free non-free-firmware
  Components: main contrib non-free non-free-firmware
wie oben, außer das dies die instabile (Entwicklungs-)   Distribution benutzt.
wie oben, außer das dies die instabile (Entwicklungs-) Distribution benutzt
  deb file:/home/apt/debian unstable main contrib non-free non-free-firmware
  deb file:/home/apt/debian unstable main contrib non-free non-free-firmware


Zeile 280: Zeile 341:
  Suites: unstable
  Suites: unstable
  Components: main contrib non-free non-free-firmware
  Components: main contrib non-free non-free-firmware
Die erste Zeile bekommt Paketinformationen für die   Architekturen in APT::Architectures, während die zweite immer amd64   und armel holt.
Die erste Zeile bekommt Paketinformationen für die Architekturen in APT::Architectures, während die zweite immer amd64 und armel holt
  deb <nowiki>http://deb.debian.org/debian</nowiki> trixie main
  deb <nowiki>http://deb.debian.org/debian</nowiki> trixie main
  deb [ arch=amd64,armel ] <nowiki>http://deb.debian.org/debian</nowiki> trixie main
  deb [ arch=amd64,armel ] <nowiki>http://deb.debian.org/debian</nowiki> trixie main
Zeile 293: Zeile 354:
  Components: main
  Components: main
  Architectures: amd64 armel
  Architectures: amd64 armel
benutzt HTTP, um auf das Archiv auf archive.debian.org zuzugreifen   und nur den hamm/main-Bereich zu benutzen.
benutzt HTTP, um auf das Archiv auf archive.debian.org zuzugreifen und nur den hamm/main-Bereich zu benutzen
  deb <nowiki>http://archive.debian.org/debian-archive</nowiki> hamm main
  deb <nowiki>http://archive.debian.org/debian-archive</nowiki> hamm main


Zeile 300: Zeile 361:
  Suites: hamm
  Suites: hamm
  Components: main
  Components: main
benutzt HTTPS, um auf das Archiv auf deb.debian.org unter dem   debian-Verzeichnis zuzugreifen und nur den trixie/contrib-Bereich zu   benutzen.
benutzt HTTPS, um auf das Archiv auf deb.debian.org unter dem debian-Verzeichnis zuzugreifen und nur den trixie/contrib-Bereich zu benutzen
  deb <nowiki>https://deb.debian.org/debian</nowiki> trixie contrib
  deb <nowiki>https://deb.debian.org/debian</nowiki> trixie contrib


Zeile 307: Zeile 368:
  Suites: trixie
  Suites: trixie
  Components: contrib
  Components: contrib
benutzt HTTPS, um auf das Archiv auf deb.debian.org unter dem   debian-Verzeichnis zuzugreifen und nur den unstable/contrib-Bereich zu   benutzen. Falls diese Zeile zusammen mit der aus dem vorherigen Beispiel in   der Datei sources.list auftaucht, wird eine einzelne HTTPS-Sitzung   für beide Quellzeilen benutzt.
benutzt HTTPS, um auf das Archiv auf deb.debian.org unter dem debian-Verzeichnis zuzugreifen und nur den unstable/contrib-Bereich zu benutzen
* Falls diese Zeile zusammen mit der aus dem vorherigen Beispiel in der Datei sources.list auftaucht, wird eine einzelne HTTPS-Sitzung für beide Quellzeilen benutzt
  deb <nowiki>https://deb.debian.org/debian</nowiki> unstable contrib
  deb <nowiki>https://deb.debian.org/debian</nowiki> unstable contrib


Zeile 314: Zeile 376:
  Suites: unstable
  Suites: unstable
  Components: contrib
  Components: contrib
benutzt HTTP, um auf das Archiv auf ftp.tlh.debian.org unter dem   universe-Verzeichnis zuzugreifen und benutzt nur Dateien, die unter   unstable/binary-i386 auf i386-Maschinen, unstable/binary-amd64 auf amd64 und   so weiter für andere unterstützte Architekturen, gefunden   werden. [Beachten Sie, dass dieses Beispiel nur anschaulich macht, wie die   Platzhaltervariable benutzt wird. Offizielle Debian-Archive sind nicht so   strukturiert.]
benutzt HTTP, um auf das Archiv auf ftp.tlh.debian.org unter dem universe-Verzeichnis zuzugreifen und benutzt nur Dateien, die unter unstable/binary-i386 auf i386-Maschinen, unstable/binary-amd64 auf amd64 und so weiter für andere unterstützte Architekturen, gefunden werden. [Beachten Sie, dass dieses Beispiel nur anschaulich macht, wie die Platzhaltervariable benutzt wird
* Offizielle Debian-Archive sind nicht so strukturiert.]
  deb <nowiki>http://ftp.tlh.debian.org/universe</nowiki> unstable/binary-$(ARCH)/
  deb <nowiki>http://ftp.tlh.debian.org/universe</nowiki> unstable/binary-$(ARCH)/


Zeile 320: Zeile 383:
  URIs: <nowiki>http://ftp.tlh.debian.org/universe</nowiki>
  URIs: <nowiki>http://ftp.tlh.debian.org/universe</nowiki>
  Suites: unstable/binary-$(ARCH)/
  Suites: unstable/binary-$(ARCH)/
benutzt HTTP, um sowohl Binärpakete als auch Quellen von   den Programmsammlungen Stable, Testing, Unstable und den Bestandteilen Main   und Contrib zu holen.
benutzt HTTP, um sowohl Binärpakete als auch Quellen von den Programmsammlungen Stable, Testing, Unstable und den Bestandteilen Main und Contrib zu holen
  deb <nowiki>http://deb.debian.org/debian</nowiki> stable main contrib
  deb <nowiki>http://deb.debian.org/debian</nowiki> stable main contrib
  deb-src <nowiki>http://deb.debian.org/debian</nowiki> stable main contrib
  deb-src <nowiki>http://deb.debian.org/debian</nowiki> stable main contrib
Zeile 332: Zeile 395:
  Suites: stable testing unstable
  Suites: stable testing unstable
  Components: main contrib
  Components: main contrib
Uses a specific timestamp for Snapshots.
Uses a specific timestamp for Snapshots
  Types: deb deb-src
  Types: deb deb-src
  URIs: <nowiki>http://deb.debian.org/debian</nowiki>
  URIs: <nowiki>http://deb.debian.org/debian</nowiki>
Zeile 339: Zeile 402:
  Components: main contrib
  Components: main contrib


Doesn't allow the optional parameter --snapshot
   
Doesn't allow the optional parameter --snapshot.
  Types: deb deb-src
  Types: deb deb-src
  URIs: <nowiki>http://deb.debian.org/debian-security</nowiki>
  URIs: <nowiki>http://deb.debian.org/debian-security</nowiki>
Zeile 348: Zeile 409:
  Components: main contrib non-free-firmware
  Components: main contrib non-free-firmware


== SIEHE AUCH ==
   
* apt-get(8)
 
* apt.conf(5)
= SIEHE AUCH =
* /usr/share/doc/apt/acquire-additional-files.md.gz
apt-get(8), apt.conf(5),    /usr/share/doc/apt/acquire-additional-files.md.gz


= FEHLER =
== 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.
; APT-Fehlerseite
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

Version vom 29. September 2025, 08:34 Uhr

sources.list - Liste konfigurierter APT-Datenquellen

Beschreibung

Installation

Aufruf

Optionen

Unix GNU Parameter Beschreibung

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Anwendung

Problembehebung

Konfiguration

Dateien

Datei Beschreibung


Anhang

Siehe auch



Dokumentation

Man-Page
  1. prep(1)


Links

Projekt

Weblinks


MAN

BESCHREIBUNG

Die Quellenliste /etc/apt/sources.list und die in /etc/apt/sources.list.d/ enthaltenen Dateien wurden entworfen, um eine beliebige Anzahl aktiver Quellen und unterschiedlicher Quellmedien zu unterstützen

  • Die Dateien führen eine Quelle je Zeile auf (einzeiliger Stil) oder enthalten mehrzeilige Absätze, die eine oder mehrere Quellen pro Absatz definieren (Deb822-Stil), bei der die bevorzugte Quelle zuerst aufgeführt wird (im Fall, dass eine einzelne Version von mehr als einer Quelle verfügbar ist)
  • Die Informationen über die konfigurierten Quellen werden durch apt-get update (oder einem vergleichbaren Befehl einer anderen APT-Oberfläche) beschafft

SOURCES.LIST.D

Das Verzeichnis /etc/apt/sources.list.d stellt eine Möglichkeit bereit, sources.list-Einträge in separaten Dateien hinzuzufügen

  • Zwei verschiedene Formate sind, wie in den beiden nächsten Abschnitten erklärt, erlaubt
  • Dateinamen müssen abhängig vom enthaltenen Format entweder eine .list- oder .sources-Endung haben
  • Die Dateinamen dürfen nur Buchstaben (a-z und A-Z), Ziffern (0-9), Unterstrich (_), Bindestrich (-) und Punkt (.) 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

Der empfohlene Dateiname ist /etc/apt/sources.list.d/Lieferant.sources, wobei Lieferant das Ergebnis von dpkg-vendor --query Vendor | tr A-Z a-z im deb822-artigen Format ist

  • Ubuntu verwendet beispielsweise /etc/apt/sources.list.d/ubuntu.sources

FORMAT MIT EINZEILIGEM STIL

Dateien in diesem Format haben die Endung .list

  • Jede Zeile, die eine Quelle angibt, beginnt mit einem Typ (z. B. deb-src), gefolgt von Optionen und Argumenten für diesen Typ
  • Individuelle Einträge können nicht auf einer Folgezeile fortgesetzt werden
  • Leere Zeilen werden ignoriert und ein #-Zeichen irgendwo in einer Zeile kennzeichnet den Rest der Zeile als Kommentar
  • Ein Eintrag kann folglich durch Auskommentieren der ganzen Zeile deaktiviert werden
  • Falls Optionen bereitgestellt werden sollen, werden sie durch Leerräume getrennt und alle zusammen in quadratische Klammern ([]) eingeschlossen
  • Sie sind in der Zeile nach dem Typ enthalten und mit einem Leerraum von ihm getrennt
  • Falls eine Option mehrere Werte erlaubt, werden diese voneinander per Komma (,) getrennt
  • Ein Optionsname wird von seinem (seinen) Wert(en) durch ein Gleichheitszeichen (=) getrennt
  • Optionen mit mehreren Werten haben außerdem -= und += als Trenner, die statt den vorgegebenen Wert durch den (die) angegebenen Wert(e) zu ersetzen, den vorgegebenen Wert ändern und den (die) übergebenen Wert(e) entfernen oder einschließen

Dies ist das traditionelle, von allen APT-Versionen unterstützte Format

  • Beachten Sie, dass nicht alle unten beschriebenen Optionen von allen Versionen von APT unterstützt werden
  • Beachten Sie außerdem, dass einige ältere Anwendungen, die dieses Format selbst auswerten, möglicherweise nicht erwarten, dass Optionen auftauchen, da diese vor der Einführung der Unterstützung mehrerer Architekturen nicht üblich waren

Dieses Format ist veraltet und wird schließlich entfernt, aber frühestens 2029

FORMAT IM DEB822-STIL

Dateien in diesem Format haben die Endung .sources

  • Dieses Format hat eine ähnliche Syntax wie andere von Debian und seinen Derivaten benutzte Dateien, wie Metadatendateien, die APT von den konfigurierten Quellen herunterlädt oder der Datei debian/control in einem Debian-Quellpaket
  • Individuelle Einträge werden durch eine leere Zeile getrennt; zusätzliche leere Zeilen werden ignoriert und #-Zeichen am Anfang einer Zeile kennzeichnen die ganze Zeile als Kommentar
  • Ein Eintrag kann daher deaktiviert werden, indem jede Zeile, die zum Absatz gehört, auskommentiert wird
  • Es ist üblicherweise jedoch einfacher, dem Absatz das Feld »Enabled: no« hinzuzufügen, um den Eintrag zu deaktivieren
  • Durch Entfernen des Feldes oder indem es auf »yes« gesetzt wird, wird es wieder aktiviert
  • Optionen haben dieselbe Syntax wie jedes andere Feld: ein Feldname, durch einen Doppelpunkt (:) und optionale Leerräume von ihren (ihrem) Wert(en) getrennt
  • Beachten Sie insbesondere, dass mehrere Werte durch Leerräume (wie Leerzeichen, Tabulatoren und Zeilenumbrüche) getrennt werden, nicht durch Kommas, wie im einzeiligen Format
  • Felder mit mehreren Werten wie Architectures haben obendrein Architectures-Add und Architectures-Remove, um den Vorgabewert zu ändern, statt ihn zu ersetzen

Dies ist ein neues Format, das von APT selbst seit Version 1.1. unterstützt wird. Ältere Versionen ignorieren solche Dateien, wie vorher beschrieben, mit einer Benachrichtigung

  • Es ist vorgesehen, dieses Format schrittweise zum Standardformat zu machen und das vorher beschriebene Format mit dem einzeiligen Stil zu missbilligen, da das neue für Menschen und Maschinen gleichermaßen einfacher zu erstellen, zu erweitern und zu ändern ist, insbesondere dann, wenn viele Quellen und/oder Optionen beteiligt sind
  • Entwickler, die mit APT-Quellen arbeiten und/oder sie auswerten, sind dringend ermutigt, dieses Format zu unterstützen und das APT-Team zu kontaktieren, um diese Arbeit zu koordinieren und weiterzugeben
  • Benutzer können dieses Format bereits übernehmen, es könnten jedoch Probleme mit Software auftreten, die dieses Format noch nicht unterstützen

DIE TYPEN »DEB« UND »DEB-SRC«: ALLGEMEINES FORMAT

Der deb-Typ beschreibt ein typisches zweistufiges Debian-Archiv, Distribution/Bestandteil

  • Distribution ist typischerweise eine Programmsammlung wie stable oder testing oder ein Codename wie trixie oder forky während Bestandteil entweder main, contrib, non-free oder non-free-firmware ist
  • Der deb-src-Typ beschreibt den Quellcode einer Debian-Distribution in der gleichen Form wie den deb-Typ
  • Eine deb-src-Zeile wird benötigt, um Quellindizes herunterzuladen

Das Format für zwei Einträge im einzeiligen Stil, die die deb- und deb-src-Typen benutzen, ist:

deb [ Option1=Wert1 Option2=Wert2 ] URI Suite [Bestandteil1] [Bestandteil2] [...]
deb-src [ Option1=Wert1 Option2=Wert2 ] URI Suite [Bestandteil1] [Bestandteil2] [...]

Der alternative Eintrag sieht im Format des Deb822-Stils etwa so aus:

Types: deb deb-src
URIs: URI
Suites: Suite
Components: [Bestandteil1] [Bestandteil2] [...]
Option1: Wert1
Option2: Wert2

Der URI für den deb-Typ muss die Basis der Debian-Distribution angeben, wo APT die Informationen findet, die es benötigt

  • Suite kann einen genauen Pfad angeben
  • In diesem Fall müssen die Bestandteile weggelassen werden und Suite muss mit einem Schrägstrich (/) enden
  • Dies ist nützlich, wenn nur ein bestimmtes Unterverzeichnis des vom URI angegebenen Archivs von Interesse ist
  • Wenn Suite keinen genauen Pfad angibt, muss mindestens ein Bestandteil angegeben sein

Suite darf außerdem eine Variable, $(ARCH), enthalten, die zur Debian-Architektur (wie amd64 oder armel) expandiert wird, die auf dem System benutzt wird

  • Dies erlaubt es, architekturunabhängige sources.list-Dateien zu benutzen
  • Im Allgemeinen ist dies nur von Interesse, wenn ein genauer Pfad angegeben wird, andernfalls wird APT automatisch einen URI mit der aktuellen Architektur erstellen

Insbesondere im Format im einzeiligen Stil könnte es nötig sein, da pro Zeile nur eine Distribution angegeben werden kann, mehrere Zeilen für den gleichen URI zu haben, falls eine Untermenge aller verfügbarer Distributionen oder Bestandteile von diesem Ort gewünscht wird

  • APT wird die URI-Liste sortieren, nachdem es intern eine komplette Zusammenstellung erstellt hat und es wird beispielsweise mehrere Bezüge zum gleichen Internet-Rechner zu einer einzigen Verbindung zusammenfassen, so dass es nicht ineffizient eine Verbindung herstellt, sie schließt, sonst etwas tut und dann erneut eine Verbindung zum gleichen Rechner herstellt
  • APT parallelisiert außerdem Verbindungen zu verschiedenen Rechnern, um effektiver mit Sites mit niedriger Bandbreite umzugehen

Es ist wichtig, die Quellen in der Reihenfolge ihrer Bevorzugung aufzulisten, die bevorzugte Quelle zuerst

  • Typischerweise resultiert dies in einer Sortierung nach Geschwindigkeit, vom schnellsten zum langsamsten (CD-ROM, gefolgt von Rechnern im lokalen Netzwerk, gefolgt von Internet-Rechnern, zum Beispiel)

Die Quellen für Ihre Distribution könnten zum Beispiel im veralteten Format mit einzeiligem Stil so aussehen:

deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian trixie main contrib non-free non-free-firmware
deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware
deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian-security trixie-security main contrib non-free non-free-firmware

oder im Format mit Deb822-Stil so:

Types: deb
URIs: http://deb.debian.org/debian
Suites: trixie trixie-updates
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb
URIs: http://deb.debian.org/debian-security
Suites: trixie-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

DIE TYPEN DEB UND DEB-SRC: OPTIONEN

Jeder Quelleneintrag kann Optionen haben, die angegeben wurden, um zu ändern, auf welche Quelle zugegriffen wird und wie Daten von ihr beschafft werden

  • Format, Syntax und Namen der Optionen weichen, wie beschrieben, zwischen dem Format mit einzeiligem Stil und dem Format mit Deb822-Stil voneinander ab, für beide sind jedoch dieselben Optionen verfügbar
  • Der Einfachheit halber wird der Deb822-Feldname aufgeführt und der einzeilige Name in Klammern bereitgestellt
  • Denken Sie daran, dass Sie ergänzend zum expliziten Setzen von Optionen mit mehreren Werten auch die Möglichkeit haben, sie basierend auf dem Vorgabewert zu ändern, aber diese Namen werden hier nicht explizit aufgeführt
  • Nicht unterstützte Optionen werden stillschweigend von allen APT-Versionen ignoriert
  • Architectures (arch) ist eine Option mit mehreren Werten, die definiert, für welche Architekturen Informationen heruntergeladen werden sollen
  • Falls diese Option nicht gesetzt ist, ist die Voreinstellung alle durch die Konfigurationsoption APT::Architectures definierten Architekturen
  • Languages (lang) ist eine Option mit mehreren Werten, die definiert, für welche Sprachen Informationen, wie etwa übersetzte Paketbeschreibungen, heruntergeladen werden sollen
  • Falls diese Option nicht gesetzt ist, werden sie für alle durch die Konfigurationsoption Acquire::Languages definierten Sprachen heruntergeladen
  • Targets (target) ist eine Option mit mehreren Werten, die definiert, welche Herunterladeziele APT aus dieser Quelle versucht zu beschaffen
  • Ist sie nicht angegeben, wird die Voreinstellung durch den Konfigurationsbereich Acquire::IndexTargets spezifiziert (Ziele werden im Feld Created-By durch ihren Namen angegeben)
  • Außerdem können Ziele mittels des Felds Identifier als Option mit einem Wahrheitswert aktiviert oder deaktiviert werden, anstatt diese Option mit mehreren Werten zu benutzen
  • PDiffs (pdiffs) ist ein yes-/no- (Ja-/Nein-)Wert, der steuert, ob APT versuchen soll, PDiffs zum Aktualisieren alter Indexe zu benutzen, statt die ganzen neuen Indexe herunterzuladen
  • Der Wert dieser Option wird ignoriert, falls das Depot die Verfügbarkeit von PDiffs nicht ankündigt
  • Sie ist auf den Wert der Option mit demselben Namen für eine bestimmte Indexdatei voreingestellt, die im Gültigkeitsbereich Acquire::IndexTargets definiert ist und die ihrerseits wiederum auf den Wert der Konfigurationsoption Acquire::PDiffs voreingestellt ist, deren Vorgabe yes ist
  • By-Hash (by-hash) kann die Werte yes, no oder force haben und steuert, ob APT versuchen soll, Indexe über einen URI zu beschaffen, der aus einer Hash-Summe der erwarteten Datei konstruiert wird, statt über einen gut bekannten stabilen Dateinamen
  • Damit können unpassende Hash-Summen vermieden werden, dies erfordert jedoch einen Spiegelserver, der dies unterstützt
  • Ein yes- oder no-Wert aktiviert/deaktiviert die Verwendung dieser Funktionalität, falls diese Quelle ihre Unterstützung anzeigt, während force die Funktionalität ungeachtet der Angabe der Quelle aktiviert
  • Sie ist auf den Wert der Option mit demselben Namen für eine bestimmte Indexdatei voreingestellt, die im Gültigkeitsbereich Acquire::IndexTargets definiert ist und die ihrerseits wiederum auf den Wert der Konfigurationsoption Acquire::By-Hash voreingestellt ist, deren Vorgabe yes ist

Überdies gibt es Optionen, die, falls sie gesetzt sind, alle Quellen mit demselben URI und derselben Suite beeinflussen, daher müssen sie auf alle solchen Einträgen gesetzt werden und können nicht zwischen verschiedenen Bestandteilen unterschieden werden

  • APT wird versuchen, solche Anomalien aufzuspüren und Fehler auszugeben
  • Allow-Insecure (allow-insecure), Allow-Weak (allow-weak) und Allow-Downgrade-To-Insecure (allow-downgrade-to-insecure) sind Wahrheitswerte, deren Voreinstellung no ist
  • Falls sie auf yes gesetzt sind, umgehen sie Teile von apt-secure(8) und sollten daher nicht leichtfertig benutzt werden
  • Trusted (trusted) ist ein Wert, der drei Status annehmen kann
  • APT entscheidet standardmäßig, ob ein Paket als vertrauenswürdig angesehen wird oder ob eine Warnung erscheinen soll, bevor z.B
  • Pakete aus dieser Quelle installiert werden
  • Diese Option kann benutzt werden, um diese Entscheidung außer Kraft zu setzen
  • Der Wert yes sagt APT, dass es diese Quelle immer als vertrauenswürdig ansehen soll, sogar dann, wenn sie die Authentifizierungsprüfungen nicht erfolgreich durchläuft
  • Sie deaktiviert Teile von apt-secure(8) und sollte daher nur in einem lokalen und vertrauenswürdigen Umfeld (falls überhaupt) verwendet werden, da die Sicherheit andernfalls verletzt wird
  • Der Wert no tut das Gegenteil
  • Er sorgt dafür, dass die Quelle als nicht vertrauenswürdig behandelt wird, sogar dann, wenn sie die Authentifizierungsprüfungen erfolgreich durchläuft
  • Der Vorgabewert kann nicht explizit gesetzt werden
  • Signed-By (signed-by) ist eine Option, die erfordert, dass ein Depot die apt-secure(8)-Prüfung mit einem bestimmten Satz von Schlüsseln, statt mit allen vertrauenswürdigen Schlüsseln, durchläuft, die für APT konfiguriert sind
  • Sie wird als eine Liste absoluter Pfade zu Schlüsselbunddateien angegeben (müssen für den Systembenutzer _apt zugreif- und lesbar sein, stellen Sie also sicher, dass jedermann Leserechte für die Datei hat) sowie Fingerabdrücke von Schlüsseln, um diese aus Schlüsselbunden auszuwählen
  • Die empfohlenen Orte für Schlüsselbunde sind /usr/share/keyrings für von Paketen verwaltete Schlüsselbunde und /etc/apt/keyrings für vom Systembetreiber verwaltete Schlüsselbunde
  • Falls keine Schlüsselbunddateien festgelegt sind, ist die Vorgabe der Schlüsselbund trusted.gpg und alle Schlüsselbunde in dem Verzeichnis trusted.gpg.d/
  • Falls kein Fingerabdruck angegeben wurde, werden alle Schlüssel in den Schlüsselbunden ausgewählt
  • Ein Fingerabdruck wird außerdem alle Signaturen eines Unterschlüssels dieses Schlüssels akzeptieren, falls dies nicht gewünscht wird, kann ein Ausrufezeichen (!) an den Fingerabdruck angehängt werden, um dieses Verhalten zu deaktivieren
  • Die Option ist auf den Wert der Option mit demselben Namen voreingestellt, falls sie in der vorher beschafften Release-Datei dieses Depots gesetzt ist (allerdings können dadurch nur Fingerabdrücke angegeben werden)
  • Andernfalls werden alle Schlüssel in den vertrauenswürdigen Schlüsselbunden als gültige Unterzeichner für dieses Depot angesehen
  • Die Option kann auch direkt gesetzt werden, um einen öffentlichen GPG-Schlüsselblock einzubetten
  • Es bedarf besonderer Vorsicht, die leere Zeile mit einleitenden Leerzeichen und ».« zu kodieren:
Types: deb
URIs: https://deb.debian.org
Suites: stable
Components: main contrib non-free non-free-firmware
Signed-By:


-----BEGIN PGP PUBLIC KEY BLOCK-----
mDMEYCQjIxYJKwYBBAHaRw8BAQdAD/P5Nvvnvk66SxBBHDbhRml9ORg1WV5CvzKY
CuMfoIS0BmFiY2RlZoiQBBMWCgA4FiEErCIG1VhKWMWo2yfAREZd5NfO31cFAmAk
IyMCGyMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQREZd5NfO31fbOwD6ArzS
dM0Dkd5h2Ujy1b6KcAaVW9FOa5UNfJ9FFBtjLQEBAJ7UyWD3dZzhvlaAwunsk7DG
3bHcln8DMpIJVXht78sL
=IE0r
-----END PGP PUBLIC KEY BLOCK-----
  • Check-Valid-Until (check-valid-until) ist ein yes-/no- (Ja-/Nein-)Wert, der steuert, ob APT versuchen soll, Wiederholungsangriffe zu erkennen
  • Ein Depotersteller kann eine Zeit festlegen, bis zu der die im Depot bereitgestellten Daten als gültig angesehen werden und, falls dieser Zeitpunkt erreicht ist, aber keine neuen Daten bereitgestellt wurden, die Daten als ungültig angesehen werden und ein Fehler ausgelöst wird
  • Neben einer Steigerung der Sicherheit, da ein böswilliger Angreifer nicht fortlaufend alte Daten senden kann, um einen Benutzer vom Upgrade auf eine neue Version abzuhalten, hilft dies Benutzern auch, Spiegelserver zu erkennen, die nicht länger aktualisiert werden
  • Einige Depots, wie die historischen Archive, werden jedoch absichtlich nicht mehr aktualisiert, daher kann diese Prüfung durch Setzen dieser Option auf no deaktiviert werden
  • Voreingestellt ist der Wert der Konfigurationsoption Acquire::Check-Valid-Until, die ihrerseits die Voreinstellung yes hat
  • Valid-Until-Min (valid-until-min) und Valid-Until-Max (valid-until-max) können benutzt werden, um die Dauer in Sekunden zu verlängern oder zu verkürzen, in der die Daten des Depots als gültig angesehen werden. -Max kann insbesondere dann nützlich sein, wenn das Depot kein Valid-Until-Feld in seiner Release-Datei bereitstellt, indem Sie Ihren eigenen Wert setzen können, während -Min benutzt werden kann, um die Gültigkeitsdauer auf selten aktualisierten (lokalen) Spiegelservern für ein häufig aktualisiertes aber weniger oft erreichbares Archiv (das auch in der sources.list steht) zu erhöhen anstatt die Prüfung ganz zu deaktivieren
  • Voreingestellt sind die Werte der Konfigurationsoptionen Acquire::Min-ValidTime und Acquire::Max-ValidTime, die standardmäßig jeweils nicht gesetzt sind

Check-Date (check-date) ist ein Ja-/Nein-Wert, der steuert, ob APT berücksichtigen soll, ob die Zeit auf der Maschine korrekt ist und deshalb zeitbezogene Prüfungen durchführen soll, wie die Prüfung, ob eine Release-Datei nicht aus der Zukunft stammt

  • Sie zu deaktivieren deaktiviert auch die oben erwähnte Option Check-Valid-Until

Date-Max-Future (date-max-future) steuert, wie weit aus der Zukunft ein Depot liegen darf

  • Voreingestellt ist der Wert der Konfigurationsoption Acquire::Max-FutureTime, die standardmäßig zehn Sekunden beträgt

InRelease-Path (inrelease-path) legt den Pfad zur InRelease-Datei relativ zur normalen Position einer InRelease-Datei fest

  • Standardmäßig ist diese Option nicht gesetzt und APT wird versuchen, eine InRelease-Datei zu holen oder, falls dies fehlschlägt, eine Release-Datei und die zugehörige Release.gpg-Datei
  • Durch das Setzen dieser Option wird der angegebene Pfad anstelle der InRelease-Datei probiert und der Rückgriff auf Release-Dateien wird deaktiviert

Snapshot (snapshot) allows selecting an earlier version of the archive from the snapshot service

  • Supported values are: enable (default) to allow selecting a snapshot with the --snapshot option, ID, or disable to exclude the repository

Schnappschusskennungen sind normalwerweise Zeitstempel in der Form JJJJMMDDTHHMMSSZ, wie 20220102T030405Z, was den 2

  • Januar 2022 um 03:04:05 UTC darstellt
  • Server können allerdings zusätzliche Kennungstypen unterstützen und APT führt aktuell keine Überprüfungen durch

URI-BESCHREIBUNG

Die derzeit erkannten URI-Typen sind:

http (apt-transport-http(1))

Das Schema »http« gibt einen HTTP-Server für ein Archiv an und ist die am häufigsten verwendete Methode

  • Der URI kann Anmeldeinformationen direkt enthalten, falls das Archiv dies erfordert, vorzugsweise sollte jedoch apt_auth.conf(5) benutzt werden
  • Die Methode unterstützt auch SOCKS5- und HTTP(S)-Proxys, die entweder über APT-spezifische Konfiguration eingerichtet werden oder durch die Umgebungsvariable http_proxy, die (unter der Annahme, dass ein HTTP-Proxy Authentifizierung verlangt) das Format http://Benutzer:Passwort@Server:Port/ hat
  • Die Einzelheiten der Authentifizierung für Proxys können auch über apt_auth.conf(5) bereitgestellt werden

Beachten Sie, dass diese Formen der Authentifizierung unsicher sind, da die ganze Kommunikation mit dem fernen Server (oder Proxy) unverschlüsselt ist, so dass ein Angreifer mit ausreichenden Fähigkeiten die Anmeldung sowie alle anderen Interaktionen beobachten und aufzeichnen kann

  • Der Angreifer kann die Kommunikation nicht verändern, da das Datensicherheitsmodell von APT unabhängig von der gewählten Transportmethode ist
  • Einzelheiten finden Sie unter apt-secure(8)
https (apt-transport-https(1))

Das Schema »https« gibt einen HTTPS-Server für ein Archiv an und ist bezüglich Benutzung und verfügbaren Optionen dem HTTP-Schema sehr ähnlich

  • Der Hauptunterschied besteht darin, dass die Kommunikation zwischen APT und Server (oder Proxy) verschlüsselt abläuft
  • Beachten Sie, dass die Verschlüsselung nicht davor schützt, dass ein Angreifer erfährt, welcher Server (oder Proxy) mit APT kommuniziert
  • Eine tiefere Analyse kann möglicherweise noch offenbaren, welche Daten heruntergeladen wurden
  • Falls dies Sorge bereitet, könnten die nachfolgend genannten TOR-basierten Schemata eine geeignete Alternative sein

mirror, mirror+Schema (apt-transport-mirror(1))

Das Schema »mirror« gibt den Speicherort der Spiegelserverliste an

  • Standardmäßig wird für den Speicherort das Schema http benutzt, aber jedes andere Schema kann per mirror+Schema verwendet werden
  • Die Spiegelserverliste selbst kann mehrere verschiedenen URIs für Spiegel enthalten, die der APT-Client transparent auswählt oder auf die er zurückgreift
  • Dies ist als Hilfe bei der Lastverteilung zwischen verfügbaren Spiegelservern gedacht und stellt zudem sicher, dass Clients sogar dann Daten beziehen können, wenn einige konfigurierte Spiegelserver nicht verfügbar sind

file

Das file-Schema erlaubt es einem beliebigen Verzeichnis im Dateisystem, als Archiv betrachtet zu werden

  • Dies ist nützlich für eingehängtes NFS und lokale Spiegel oder Archive

cdrom

Das Schema »cdrom« erlaubt APT ein lokales CD-ROM-, DVD- oder USB-Laufwerk mit Medienwechsel zu benutzen

  • Benutzen Sie das Programm apt-cdrom(8), um »cdrom«-Einträge in der Quellenliste zu erstellen

copy

Das Schema »copy« ist identisch mit dem file-Schema, außer dass Pakete in das Zwischenspeicherverzeichnis kopiert werden, anstatt direkt von ihrem Herkunftsort benutzt zu werden

  • Dies ist für Leute nützlich, die Wechseldatenträger benutzen, um Dateien mit APT umherzukopieren

weitere zulässige URI-Typen hinzufügen

APT kann mit weiteren Methoden erweitert werden, die in anderen optionalen Paketen geliefert werden, die dem Namensschema apt-transport-Methode folgen sollten

  • Das APT-Team betreut zum Beispiel außerdem das Paket apt-transport-tor, das Zugriffsmethoden für HTTP- und HTTPS-URIs bereitstellt, die über das TOR-Netzwerk geleitet werden

BEISPIELE

benutzt die lokal gespeicherten (oder per NFS eingehängten) Archive in /home/apt/debian für stable/main, stable/contrib, stable/non-free und stable/non-free-firmware

deb file:/home/apt/debian stable main contrib non-free non-free-firmware
Types: deb
URIs: file:/home/apt/debian
Suites: stable
Components: main contrib non-free non-free-firmware

wie oben, außer das dies die instabile (Entwicklungs-) Distribution benutzt

deb file:/home/apt/debian unstable main contrib non-free non-free-firmware
Types: deb
URIs: file:/home/apt/debian
Suites: unstable
Components: main contrib non-free non-free-firmware

Quellenangabe für Obiges

deb-src file:/home/apt/debian unstable main contrib non-free non-free-firmware
Types: deb-src
URIs: file:/home/apt/debian
Suites: unstable
Components: main contrib non-free non-free-firmware

Die erste Zeile bekommt Paketinformationen für die Architekturen in APT::Architectures, während die zweite immer amd64 und armel holt

deb http://deb.debian.org/debian trixie main
deb [ arch=amd64,armel ] http://deb.debian.org/debian trixie main
Types: deb
URIs: http://deb.debian.org/debian
Suites: trixie
Components: main
Types: deb
URIs: http://deb.debian.org/debian
Suites: trixie
Components: main
Architectures: amd64 armel

benutzt HTTP, um auf das Archiv auf archive.debian.org zuzugreifen und nur den hamm/main-Bereich zu benutzen

deb http://archive.debian.org/debian-archive hamm main
Types: deb
URIs: http://archive.debian.org/debian-archive
Suites: hamm
Components: main

benutzt HTTPS, um auf das Archiv auf deb.debian.org unter dem debian-Verzeichnis zuzugreifen und nur den trixie/contrib-Bereich zu benutzen

deb https://deb.debian.org/debian trixie contrib
Types: deb
URIs: https://deb.debian.org/debian
Suites: trixie
Components: contrib

benutzt HTTPS, um auf das Archiv auf deb.debian.org unter dem debian-Verzeichnis zuzugreifen und nur den unstable/contrib-Bereich zu benutzen

  • Falls diese Zeile zusammen mit der aus dem vorherigen Beispiel in der Datei sources.list auftaucht, wird eine einzelne HTTPS-Sitzung für beide Quellzeilen benutzt
deb https://deb.debian.org/debian unstable contrib
Types: deb
URIs: https://deb.debian.org/debian
Suites: unstable
Components: contrib

benutzt HTTP, um auf das Archiv auf ftp.tlh.debian.org unter dem universe-Verzeichnis zuzugreifen und benutzt nur Dateien, die unter unstable/binary-i386 auf i386-Maschinen, unstable/binary-amd64 auf amd64 und so weiter für andere unterstützte Architekturen, gefunden werden. [Beachten Sie, dass dieses Beispiel nur anschaulich macht, wie die Platzhaltervariable benutzt wird

  • Offizielle Debian-Archive sind nicht so strukturiert.]
deb http://ftp.tlh.debian.org/universe unstable/binary-$(ARCH)/
Types: deb
URIs: http://ftp.tlh.debian.org/universe
Suites: unstable/binary-$(ARCH)/

benutzt HTTP, um sowohl Binärpakete als auch Quellen von den Programmsammlungen Stable, Testing, Unstable und den Bestandteilen Main und Contrib zu holen

deb http://deb.debian.org/debian stable main contrib
deb-src http://deb.debian.org/debian stable main contrib
deb http://deb.debian.org/debian testing main contrib
deb-src http://deb.debian.org/debian testing main contrib
deb http://deb.debian.org/debian unstable main contrib
deb-src http://deb.debian.org/debian unstable main contrib
Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: stable testing unstable
Components: main contrib

Uses a specific timestamp for Snapshots

Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: stable testing unstable
Snapshot: 20250311T030104Z
Components: main contrib

Doesn't allow the optional parameter --snapshot

Types: deb deb-src
URIs: http://deb.debian.org/debian-security
Suites: stable-security
Snapshot: disable
Components: main contrib non-free-firmware

SIEHE AUCH

  • apt-get(8)
  • apt.conf(5)
  • /usr/share/doc/apt/acquire-additional-files.md.gz

FEHLER

APT-Fehlerseite

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