Zum Inhalt springen

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

Aus Foxwiki
Der Seiteninhalt wurde durch einen anderen Text ersetzt: „'''{{BASEPAGENAME}}''' - Beschreibung == Beschreibung == == Installation == <syntaxhighlight lang="bash" highlight="1" line copy> </syntaxhighlight> == Aufruf == <syntaxhighlight lang="bash" highlight="1" line copy> </syntaxhighlight> === Optionen === {| class="wikitable sortable options gnu big" |- ! Unix !! GNU !! Parameter !! Beschreibung |- | || || || |- |} === Parameter === === Umgebungsvariablen === === Exit-Status =…“
Markierung: Ersetzt
Zeile 75: Zeile 75:


</noinclude>
</noinclude>
= TMP1 =
In der Datei <tt>/etc/apt/sources.list</tt> stehen die sogenannten Repositories, also Quellen für Pakete
* Dies können entweder CDs oder DVDs, Verzeichnisse auf der Festplatte oder, öfter, Verzeichnisse auf HTTP- oder FTP-Servern sein
* Befindet sich das gesuchte Paket auf einem Server (oder einem lokalen Datenträger), so wird dieses automatisch heruntergeladen und installiert
== /etc/apt/sources.list ==
<syntaxhighlight lang="bash" line copy>
deb https://ftp.debian.org/debian/ bookworm contrib main non-free non-free-firmware
# deb-src https://ftp.debian.org/debian/ bookworm contrib main non-free non-free-firmware
deb https://ftp.debian.org/debian/ bookworm-updates contrib main non-free non-free-firmware
# deb-src https://ftp.debian.org/debian/ bookworm-updates contrib main non-free non-free-firmware
deb https://ftp.debian.org/debian/ bookworm-proposed-updates contrib main non-free non-free-firmware
# deb-src https://ftp.debian.org/debian/ bookworm-proposed-updates contrib main non-free non-free-firmware
deb https://ftp.debian.org/debian/ bookworm-backports contrib main non-free non-free-firmware
# deb-src https://ftp.debian.org/debian/ bookworm-backports contrib main non-free non-free-firmware
deb https://security.debian.org/debian-security/ bookworm-security contrib main non-free non-free-firmware
# deb-src https://security.debian.org/debian-security/ bookworm-security contrib main non-free non-free-firmware
</syntaxhighlight>
# https://gist.github.com/hakerdefo/5e1f51fa93ff37871b9ff738b05ba30f
= TMP2 =
Wenn Sie APT bereits über das Programm <tt>dselect</tt> als Installationsmethode benutzt haben, so haben Sie wahrscheinlich bereits APT an Ihre Bedürfnisse angepasst.
APT steht für " Advanced Package Tool", ein Programm also, das den Systemadministrator bei der Installation und Verwaltung von Programmen unterstützen soll.
* Der erste Schritt zur Benutzung von APT ist die Anpassung der Konfigurationsdatei <tt>/etc/apt/sources.list</tt> .
* In dieser Datei befinden sich die Informationen, von welcher Quelle die Pakete geholt werden sollen.
* APT unterstützt eine große Zahl verschiedener Installationsquellen.
* Momentan sind dies: <tt>cdrom</tt>, <tt>file</tt>, <tt>http</tt> und <tt>ftp</tt>.
* Jede dieser Quellen wird in einer einzelnen Zeile in der Datei beschrieben.
* Dabei wird auch die Reihenfolge berücksichtigt; weiter oben stehende Einträge haben eine höhere Priorität.
; Das Format der Einträge lässt sich wie folgt beschreiben
# deb uri distribution [component1] [component2] [...]
; Ein Eintrag könnte also wie folgt aussehen
deb ftp://ftp.debian.org/debian stable main
; In der ersten Spalte findet sich der Hinweis auf die Art der Quelle
* Mögliche Werte sind hier <tt>deb</tt> für Debian Pakete im Binärformat (dies ist der gebräuchliste Wert) oder aber <tt>deb-src</tt> für Pakete, die im Quellcode vorliegen.
* Einträge der letzteren Art benötigt man beispielsweise, um ein Paket aus den Quellpaketen neu zu übersetzen.
Das Feld <tt>uri</tt> beschreibt die Installationsquelle und den Pfad zum "root"-Verzeichnis der Debian Distribution.
* Auf einer CD-ROM und auf vielen Debian FTP-Servern ist der Pfad im Normalfall das Verzeichnis <tt>/debian</tt> .
Mit dem Feld <tt>distribution</tt> stellen Sie die gewünschte Version ein, die Sie installieren möchten.
* Normalerweise wird man sich zwischen <tt>stable</tt> für die aktuelle, stabile Version oder <tt>unstable</tt> (für die Entwicklerversion) sowie <tt>testing</tt>, (die nächste zu veröffentlichende Version) entscheiden.
* Wie schon am Anfang dieses Buches beschrieben, bekommt jede Debian Version einen Namen.
* Sie können diesen Namen auch hier einsetzen, also <tt>Woody</tt> für die Version 3.0 oder <tt>Sarge</tt> für die Version 3.1 bzw.&nbsp;<tt>sid</tt> für die jeweils in Entwicklung befindlichen aktuellsten Pakete.
Die Felder "component" werden mit den einzelnen Bereichen der Distribution gefüllt.
* Hier können beispielsweise <tt>main</tt>, <tt>contrib</tt>, <tt>non-free</tt>, <tt>non-US</tt> (dieser Zweig ist ab Debian Sarge nicht mehr vorhanden) stehen.
* Zulässig sind einer oder mehrere Einträge, die durch Leerzeichen voneinander getrennt werden.
==  Installationsquellen ==
{|| class="wikitable sortable"
|-
|| '''file'''
|| benutzt ein Verzeichnis als Quelle für die Pakete.
* Dies kann ein lokales oder ein per NFS gemountetes Verzeichnis sein.
|-
|| '''Cdrom'''
|| benutzt ein lokal installiertes CD-ROM-Laufwerk als Installationsquelle.
* Wenn die Distribution auf mehreren CDs vorliegt, wird auch dies unterstützt.
* Benutzen Sie das Programm <tt>apt-cdrom</tt>, um die nötigen Einträge in der Datei <tt>/etc/apt/sources.list</tt> vorzunehmen oder benutzen Sie das Programm <tt>apt-setup</tt>.
|-
|| '''Http'''
|| benutzt einen HTTP-Server als Installationsquelle.
* Wenn die Shell-Umgebungsvariable <tt>$http_proxy</tt> gesetzt ist (im Format: <tt>https://server:port/</tt> ), so wird diese anstelle einer direkten Verbindung zum Server benutzt.
* Sie können auch Proxy-Server benutzen, die eine Authentifizierung verlangen.
* Hierzu ist der Proxy im Format: <tt>https://user:pass@server:port/</tt> anzugeben.
* Bitte beachten Sie, dass die Benutzernamen und Passwörter auf diesem Wege unverschlüsselt übertragen werden.
|-
|| '''Ftp'''
|| stellt sicher die am häufigsten verwendete Methode für APT dar.
* Die Daten werden per FTP (File Transfer Protocol) auf den Rechner übertragen.
* Ein Beispiel finden Sie weiter unten.
|-
|| '''Copy'''
|| Diese Methode ist identisch mit der Methode "file", mit dem Unterschied, dass die Pakete vor der Installation in das Verzeichnis <tt>/var/apt/cache/archives/</tt> kopiert werden.
* Dies kann zum Beispiel auf Systemen Sinn machen, die keine Verbindung zum Netz haben und per ZIP-Medium aktualisiert werden sollen.
|-
|}
; Hier nun einige Beispiele
* Denken Sie daran, dass Sie durchaus mehrere dieser Einträge in der Konfigurationsdatei gleichzeitig verwenden können.
deb https://www.debian.org/archive stable main contrib
Ein solcher Eintrag benutzt das Archiv auf [https://www.debian.org/ https://www.debian.org] mit den Bereichen <tt>stable/main</tt> und <tt>stable/contrib</tt>.
Folgender Eintrag holt die Dateien via FTP aus dem Verzeichnis <tt>/debian</tt>.
* Es wird die noch nicht fertige ("unstable") Version von Debian GNU/Linux benutzt und auf die Bereiche main, contrib und non-free zugegriffen:
deb ftp://ftp.debian.org/debian unstable main contrib non-free
Nochmal ein ähnlicher Eintrag, diesmal für die stabile Version und lediglich den Bereich <tt>main</tt>.
deb ftp://ftp.debian.org/debian stable main
Wenn Sie die beiden vorhergehenden Zeilen in Ihrer Konfiguration einsetzen, werden beide Zeilen in einem FTP-Zugriff bearbeitet.
deb file:/home/fr/debian stable main contrib non-free
Ein solcher Eintrag benutzt eine lokale Kopie der Daten auf der Festplatte.
* Dies kann auch ein per NFS gemountetes Verzeichnis sein.
[[Kategorie:APT]]
= TMP3 =
==  Paketversionen und Distributionseigenschaften ==
Die Paketquellen, welche in der Datei <tt>/etc/apt/sources.list</tt> aufgeführt werden, enthalten im Idealfall die Dateien <tt>Packages</tt> (bzw.&nbsp;<tt>Packages.gz</tt>) und <tt>Release</tt>, mit denen die an der jeweiligen Quelle verfügbaren Pakete beschrieben werden.
Die Datei <tt>Packages</tt> befindet sich normalerweise im Pfad <tt>.../dists/dist-name/component/arch</tt>, also beispielsweise <tt>.../dists/stable/main/binary-i386/Packages</tt>.
* Diese Datei besteht aus einem mehrzeiligen Eintrag für jedes Paket, von dem für die APT Prioritäten lediglich die beiden Zeilen <tt>Package</tt> und <tt>Version</tt> benötigt werden.
Die Datei <tt>Release</tt> befindet sich im Pfad <tt>.../dists/dist-name</tt>, also beispielsweise unter <tt>.../dists/stable/Release</tt> oder auch <tt>.../dists/sarge/Release</tt>.
* Abweichend von der Datei <tt>Packages</tt> werden fast alle Informationen aus der <tt>Release</tt>-Datei benötigt.
; Diese sind:
====  Archive ====
# Bezeichnet das Archiv, zu dem alle Pakete dieses Verzeichnisses gehören.
* Beispielsweise gibt die Zeile <tt>Archive: stable</tt> an, dass alle Pakete in dem Verzeichnisbaum unterhalb der Datei <tt>Release</tt> zum "stable"-Release von Debian gehören.
# In der APT Konfigurationsdatei wird dieser Wert wie folgt gesetzt:
# Pin: release a=stable
====  Version ====
# Diese Zeile bezeichnet die Release-Version der Distribution.
* Der Wert "3.1" besagt auch, dass alle Pakete im Verzeichnisbaum zur Release 3.1 "Sarge" von Debian gehören.
* Für Versionen wie "testing" und "unstable" werden keine Versionsnummern vergeben, da diese Versionen noch nicht veröffentlicht sind.
* Um diesen Wert in der APT-Konfigurationsdatei anzugeben, ist eine der folgenden Zeilen notwendig:
# Pin: release v=3.0
Pin: release a=stable, v=3.0
Pin: release 3.0
====  Component ====
# Bezeichnet den Abschnitt der Distribution, aus der die Pakete stammen.
* Beispielsweise bezeichnet die Zeile <tt>Component: main</tt> in der <tt>Release</tt>-Datei, dass alle Pakete unterhalb diese Verzeichnisses zum Abschnitt "main" gehören.
* Dies bedeutet auch, dass alle diese Pakete einer Lizenz entsprechen, die in den Debian Free Software Guidelines (siehe auch [https://dfsg.html/ DFSG]) festgelegt ist.
* Diese Angabe wird wie folgt in der APT-Konfigurationsdatei <tt>preferences</tt> festgelegt
# Pin: release c=main
====  Origin ====
# Bezeichnet den Ursprung der Pakete, meist ist hier "Debian" angegeben.
* In der APT <tt>preferences</tt>-Datei sieht diese Zeile wie folgt aus:
# Pin: release o=Debian
====  Label ====
# Eine Bezeichnung für die Pakete in diesem Verzeichnisbaum, dieser Eintrag hat meistens den Wert "Debian".
* In der APT <tt>preferences</tt>-Datei sieht diese Zeile wie folgt aus:
# Pin: release l=Debian
Alle verfügbaren Dateien (<tt>Packages</tt> und <tt>Release</tt>), die über Quellen in der Datei <tt>/etc/apt/sources.list</tt> verfügbar sind, werden im Verzeichnis <tt>/var/lib/apt/lists/</tt> abgelegt.
* Dieses Verzeichnis kann durch die Variable <tt>Dir::State::Lists</tt> in der Datei <tt>apt.conf</tt> verändert werden.
* Die Dateinamen der gespeicherten <tt>Packages</tt> und <tt>Release</tt>-Dateien werden mit dem Namen des Servers sowie dem Pfad und der Architektur ergänzt, beispielsweise <tt>debiananwenderhandbuch.de_debian_dists_stable_main_binary-i386_Packages</tt>.
Weiterhin ist es möglich, eine oder mehrere Zeilen, beginnend mit dem Schlüsselwort <tt>Explanation:</tt>, mit einer Erklärung dieses Eintrages einzufügen.
Die Zeile <tt>Pin-Priority:</tt> in jedem Eintrag ist nicht zwingend erforderlich.
* Wird ein solcher Eintrag nicht gefunden, so wird eine um den Wert 1 reduzierte Priorität gegenüber dem vorhergehenden Eintrag vergeben.
=== Beispiele ===
Das erste Beispiel zeigt, wie man allen Paketen der "stable" Distribution eine Priorität über der vorgegebenen (von 500) zuweist.
* Bei allen anderen Paketen wird die Priorität um den Wert 10 verringert.
# Explanation: Uninstall or do not install any Debian-originated
Explanation: package versions other than those in the stable distro
Package: *
Pin: release a=stable
Pin-Priority: 900
Package: *
Pin: release o=Debian
Pin-Priority: -10
Die beschriebene Konfiguration führt dazu, dass alle Pakete aus der aktuellen "stable" Distribution installiert werden bzw.&nbsp;bereits installierte Pakete immer aktuell gehalten werden. Darüber hinaus ist es möglich, einzelne Pakete aus anderen Distributionen zu installieren, hier am Beispiel eines Paketes aus "testing" gezeigt:
# apt-get install paketname/testing
Das so aus "testing" installierte Paket wird zu einem späteren Zeitpunkt nicht weiter aktualisiert.
* Dies muss von Hand durch den erneuten Aufruf des oben beschriebenen Kommandos erfolgen.
Das zweite Beispiel setzt eine hohe Priorität für Pakete aus dem "testing"-Zweig, eine etwas niedrigere Priorität für den "unstable"-Zweig und eine noch geringere Priorität für Pakete aus anderen Bereichen.
# Package: *
Pin: release a=testing
Pin-Priority: 900
Package: *
Pin: release a=unstable
Pin-Priority: 800
Package: *
Pin: release o=Debian
Pin-Priority: -10
Diese Konfiguration bewirkt, dass bevorzugt Pakete aus "testing" in den jeweils aktuellen Versionen installiert werden.
; Einzelne Pakete aus dem "unstable"-Bereich installieren
# apt-get install paketname/unstable
{{DEFAULTSORT:apt}}
= TMP4 =
==  Paketversionen und Distributionseigenschaften ==
Die Paketquellen, welche in der Datei <tt>/etc/apt/sources.list</tt> aufgeführt werden, enthalten im Idealfall die Dateien <tt>Packages</tt> (bzw.&nbsp;<tt>Packages.gz</tt>) und <tt>Release</tt>, mit denen die an der jeweiligen Quelle verfügbaren Pakete beschrieben werden.
Die Datei <tt>Packages</tt> befindet sich normalerweise im Pfad <tt>.../dists/dist-name/component/arch</tt>, also beispielsweise <tt>.../dists/stable/main/binary-i386/Packages</tt>.
* Diese Datei besteht aus einem mehrzeiligen Eintrag für jedes Paket, von dem für die APT Prioritäten lediglich die beiden Zeilen <tt>Package</tt> und <tt>Version</tt> benötigt werden.
Die Datei <tt>Release</tt> befindet sich im Pfad <tt>.../dists/dist-name</tt>, also beispielsweise unter <tt>.../dists/stable/Release</tt> oder auch <tt>.../dists/sarge/Release</tt>.
* Abweichend von der Datei <tt>Packages</tt> werden fast alle Informationen aus der <tt>Release</tt>-Datei benötigt.
; Diese sind:
====  Archive ====
# Bezeichnet das Archiv, zu dem alle Pakete dieses Verzeichnisses gehören.
* Beispielsweise gibt die Zeile <tt>Archive: stable</tt> an, dass alle Pakete in dem Verzeichnisbaum unterhalb der Datei <tt>Release</tt> zum "stable"-Release von Debian gehören.
# In der APT Konfigurationsdatei wird dieser Wert wie folgt gesetzt:
# Pin: release a=stable
====  Version ====
# Diese Zeile bezeichnet die Release-Version der Distribution.
* Der Wert "3.1" besagt auch, dass alle Pakete im Verzeichnisbaum zur Release 3.1 "Sarge" von Debian gehören.
* Für Versionen wie "testing" und "unstable" werden keine Versionsnummern vergeben, da diese Versionen noch nicht veröffentlicht sind.
* Um diesen Wert in der APT-Konfigurationsdatei anzugeben, ist eine der folgenden Zeilen notwendig:
# Pin: release v=3.0
Pin: release a=stable, v=3.0
Pin: release 3.0
====  Component ====
# Bezeichnet den Abschnitt der Distribution, aus der die Pakete stammen.
* Beispielsweise bezeichnet die Zeile <tt>Component: main</tt> in der <tt>Release</tt>-Datei, dass alle Pakete unterhalb diese Verzeichnisses zum Abschnitt "main" gehören.
* Dies bedeutet auch, dass alle diese Pakete einer Lizenz entsprechen, die in den Debian Free Software Guidelines (siehe auch [https://dfsg.html/ DFSG]) festgelegt ist.
* Diese Angabe wird wie folgt in der APT-Konfigurationsdatei <tt>preferences</tt> festgelegt
# Pin: release c=main
====  Origin ====
# Bezeichnet den Ursprung der Pakete, meist ist hier "Debian" angegeben.
* In der APT <tt>preferences</tt>-Datei sieht diese Zeile wie folgt aus:
# Pin: release o=Debian
====  Label ====
# Eine Bezeichnung für die Pakete in diesem Verzeichnisbaum, dieser Eintrag hat meistens den Wert "Debian".
* In der APT <tt>preferences</tt>-Datei sieht diese Zeile wie folgt aus:
# Pin: release l=Debian
Alle verfügbaren Dateien (<tt>Packages</tt> und <tt>Release</tt>), die über Quellen in der Datei <tt>/etc/apt/sources.list</tt> verfügbar sind, werden im Verzeichnis <tt>/var/lib/apt/lists/</tt> abgelegt.
* Dieses Verzeichnis kann durch die Variable <tt>Dir::State::Lists</tt> in der Datei <tt>apt.conf</tt> verändert werden.
* Die Dateinamen der gespeicherten <tt>Packages</tt> und <tt>Release</tt>-Dateien werden mit dem Namen des Servers sowie dem Pfad und der Architektur ergänzt, beispielsweise <tt>debiananwenderhandbuch.de_debian_dists_stable_main_binary-i386_Packages</tt>.
Weiterhin ist es möglich, eine oder mehrere Zeilen, beginnend mit dem Schlüsselwort <tt>Explanation:</tt>, mit einer Erklärung dieses Eintrages einzufügen.
Die Zeile <tt>Pin-Priority:</tt> in jedem Eintrag ist nicht zwingend erforderlich.
* Wird ein solcher Eintrag nicht gefunden, so wird eine um den Wert 1 reduzierte Priorität gegenüber dem vorhergehenden Eintrag vergeben.
=== Beispiele ===
Das erste Beispiel zeigt, wie man allen Paketen der "stable" Distribution eine Priorität über der vorgegebenen (von 500) zuweist.
* Bei allen anderen Paketen wird die Priorität um den Wert 10 verringert.
# Explanation: Uninstall or do not install any Debian-originated
Explanation: package versions other than those in the stable distro
Package: *
Pin: release a=stable
Pin-Priority: 900
Package: *
Pin: release o=Debian
Pin-Priority: -10
Die beschriebene Konfiguration führt dazu, dass alle Pakete aus der aktuellen "stable" Distribution installiert werden bzw.&nbsp;bereits installierte Pakete immer aktuell gehalten werden. Darüber hinaus ist es möglich, einzelne Pakete aus anderen Distributionen zu installieren, hier am Beispiel eines Paketes aus "testing" gezeigt:
# apt-get install paketname/testing
Das so aus "testing" installierte Paket wird zu einem späteren Zeitpunkt nicht weiter aktualisiert.
* Dies muss von Hand durch den erneuten Aufruf des oben beschriebenen Kommandos erfolgen.
Das zweite Beispiel setzt eine hohe Priorität für Pakete aus dem "testing"-Zweig, eine etwas niedrigere Priorität für den "unstable"-Zweig und eine noch geringere Priorität für Pakete aus anderen Bereichen.
# Package: *
Pin: release a=testing
Pin-Priority: 900
Package: *
Pin: release a=unstable
Pin-Priority: 800
Package: *
Pin: release o=Debian
Pin-Priority: -10
Diese Konfiguration bewirkt, dass bevorzugt Pakete aus "testing" in den jeweils aktuellen Versionen installiert werden.
; Einzelne Pakete aus dem "unstable"-Bereich installieren
# apt-get install paketname/unstable

Version vom 29. September 2025, 08:22 Uhr