Sources.list

Aus DebianforumWiki

Wechseln zu: Navigation, Suche
WikiGrundsatzfragen ‹ Sources.list

In der Datei /etc/apt/sources.list steht, woher Debians Paketverwaltung neue Programme und Aktualisierungen bekommt.

Hier wird, im Zusammenspiel mit den verwendeten Prioritäten in der /etc/apt/preferences (siehe auch AptPinning), schlussendlich festgelegt, welche Version man von Debian benutzt. Das Kommando apt-cache policy Veranschaulicht dies, in dem es alle Paketquellen und deren Priorität anzeigt.

Inhaltsverzeichnis

Aufbau der sources.list

Hinweis.png Hinweis: Wie immer gibt es ein sehr ausführliches Kapitel darüber im Debian Anwenderhandbuch.

Sowie auch eine deutsche Manpage. Siehe: man -L de sources.list (Die deutschen Manpages findest du im Paket Debianpackage.png manpages-de).


Aufbau/Erklärung Pakettyp Art der Quelle Pfad Debian-Version Sektionen
Beispiel deb http:// ftp.de.debian.org/debian/ stable main
mögliche Werte sind deb oder deb-src file, cdrom, http, https, ftp oder copy. Liste deutscher Server mit Debianpaketen. oldstable, stable, testing, unstable oder experimantal; Sowie die Codenamen. (Erklärung) main, contrib, non-free und non-us. (Erklärung)
  • Zeilen, die mit einem Doppelkreuz (#) beginnen, werden als Kommentare interpretiert und ignoriert.
  • Der deb-src-Pakettyp beschreibt den Quellcode einer Debian-Distribution. Eine deb-src-Zeile wird benötigt, um Debian-Quellpakete herunterzuladen.
  • Um https-Quellen nutzen zu können, wird das Paket Debianpackage.png apt-transport-https benötigt.
  • Pakete im contrib Bereich wurden von ihrem Urheber unter eine freie Lizenz gestellt, benötigen jedoch weitere Software, die nicht frei ist (aus non-free).
  • Pakete im non-free Bereich haben einige lästige Lizenzbedingungen, die die Verwendung oder Weitergabe der Software einschränken.
  • Das Archiv non-us ist nur noch im Archiv vorhanden.

Bearbeiten der sources.list

Die Datei sources.list, die sich im Verzeichnis apt befindet mit dem Programm namens Debianpackage.png nano (bereits standardmäßig in Debian installiert) öffnen, indem man zuerst ein Terminal öffnet,

dann (durch die Eingaben von
su -
und dem persönlichen Root-Kennwort) Root-Rechte erlangt, und
nano /etc/apt/sources.list
eingibt. Das sollte dann wie folgt aussehen:
root@debian:~# nano /etc/apt/sources.list

Den Befehl nun mit der Enter-Taste (auch Return-Taste genannt) "abschicken".

  • Mit den Pfeiltasten und den Cursor an die gewünschte Stelle bewegen und die gewünschte Paketquelle eintragen.
  • Die Tastenkombination Strg + O drücken, um die Änderungen abzuspeichern.
  • Die Tastenkombination Strg + X drücken, um die Datei zu schließen.

Nach dem Bearbeiten der sources.list

Hat man die souces.list bearbeitet, muss noch die Liste der verfügbaren Pakete mittels aptitude update oder apt-get update aktualisiert werden. Erst danach werden die Änderung an den verfügbaren Paketen berücksichtigt.

Offizielle Paketquellen des Debian-Projekt

minimal

Die folgende sources.list reicht im Grunde vollkommen aus. Sie bindet das aktuelle stable-Release sowie die Sicherheitsaktualisierungen ein:

deb http://ftp.de.debian.org/debian/ stable main contrib non-free
deb-src http://ftp.de.debian.org/debian/ stable main contrib non-free
deb http://security.debian.org/ stable/updates main contrib non-free
deb-src http://security.debian.org/ stable/updates main contrib non-free
Hinweis.png Hinweis: Anstelle von stable kann auch der Codename für das Release angegeben werden, aktuell jessie. Der Unterschied macht sich dann bemerkbar, wenn ein neues Release von Debian veröffentlicht wird: Mit Codename bleibt man beim Release auch dann, wenn es zu oldstable wird (Siehe auch testing wird stable).

Brauchen Sie aktuellere Pakete, als in der aktuellen stabilen Version von Debian enthalten sind, aber Sie wollen nicht auf den testing oder den unstable-Zweig wechseln? Einige Pakete werden via stable-updates (Ehemals Debian Volatile) aktuell gehalten, andere sind als backports verfügbar.

stable-updates (Ehemals Debian Volatile)

Hinweis.png Hinweis: Beachten Sie, dass dies die Funktion ersetzt, die vorher durch das volatile.debian.org-Archiv bereitgestellt wurde.

Siehe auch: Debian volatile durch neue Aktualisierungs-Suite ersetzt


Einige Pakete werden unter Umständen auch über das stable-updates-Archiv zur Verfügung gestellt. Dieser Weg wird für Aktualisierungen gewählt, die viele Benutzer möglicherweise bereits vor der nächsten Zwischenveröffentlichung (Point-Releases) installieren möchten, wie zum Beispiel Aktualisierungen für Virenscanner und Zeitzonendaten. Alle Pakete von stable-updates werden auch in Zwischenveröffentlichungen enthalten sein.

Um Pakete aus stable-updates zu verwenden, müssen Sie den folgenden Eintrag in Ihrer sources.list einfügen:

deb http://ftp.de.debian.org/debian stable-updates main contrib non-free
deb-src http://ftp.de.debian.org/debian stable-updates main contrib non-free

Alternativ kann die jeweilige Version auch nach dem Schema codename-updates (z.B wheezy-updates) statt stable-updates hinzugefügt werden.

Backports

Es gibt einige Programme die von Debian nicht, oder nur in älteren Versionen angeboten werden. Aktuellere Versionen dieser Programme lassen sich ggf. als sog. Backports installieren. Dazu wurden neuere Paketversionen abwärtskompatibel neu kompiliert, so dass sie keine Abhängigkeitsprobleme verursachen. Die Backports gehören seit Squeeze offiziell zur Distribution dazu.

Eine Anleitung, wie man die Backports nutzt, findest Du auch in unserem Wiki: Backports.

Fremdquellen

Warnung.png Warnung: Das Installieren von Paketen aus fremden Quellen, insbesondere aus nicht vertrauenswürdigen Quellen kann das System schwer beschädigen, zu Datenverlust führen, Schadsoftware installieren oder noch schlimmeres. Es wird daher nicht empfohlen fremde Quellen zu benutzen!

Das Installieren von Paketen ist immer auch eine Vertrauensfrage. Niemals blindlings irgendwelche Programme installieren, immerhin sind dazu root-Rechte erforderlich, wodurch das System auch unbrauchbar gemacht werden kann. Auch kann es zu Konflikten und Fehlfunktionen zwischen Paketen verschiedener Fremdquellen oder zwischen offiziellen Paketen und Fremdpaketen kommen. Etwa sind Probleme mit Debian Multimedia Pakete unter Squeeze bekannt.

Archiv

Ältere Release als oldstable werden archiviert und stehen unter http://archive.debian.org/ zur Verfügung. Für debian/squeeze könnte eine sources.list wie folgt ausschauen:

deb http://ftp.de.debian.org/debian-archive/debian/ squeeze contrib main non-free 
deb http://ftp.de.debian.org/debian-archive/debian/ squeeze-lts contrib main non-free
deb http://ftp.de.debian.org/debian-archive/debian/ squeeze-proposed-updates contrib main non-free
deb http://ftp.de.debian.org/debian-archive/debian-backports/ squeeze-backports contrib main non-free

Allerdings meckert apt-get update:

E: Release file expired, ignoring http://…

Abhilfe schafft ein apt.conf Eintrag in z.B. /etc/apt/apt.conf.d/90checkvalid

Acquire::Check-Valid-Until "false";

Möchte man einen Backport Kernel installieren, ist nach wie vor -t squeeze-backports anzugeben (das Paket linux-image-amd64 referenziert den aktuellsten kernel nicht)

apt-get install linux-image-3.2.0-0.bpo.4-amd64=3.2.68-1+deb7u6~bpo60+1

Liste beliebter Fremdquellen

Alle hier aufgeführten Einträge sind keine offiziellen Bestandteile von Debian, daher sind beim hinzufügen mehrerer externer Quellen Konflikte zwischen den Programmen aus verschiedenen Quellen möglich, z.B. bei www.debian-multimedia.org und www.debian-unofficial.org ergeben sich Versionskonflikte.

Warnung.png Warnung: Am 14.Juni 2013 hat das Debianprojekt empfohlen die Domain debian-multimedia.org nicht mehr zu verwenden, da sie einen noch unbekannten neuen Besitzer hat und noch nicht bekannt ist wofür die Domain nun verwenden wird.

Tipp für den Umgang mit Fremdquellen

Lasse die Einträge für Fremdquellen wie Multimedia & Co grundsätzlich auskommentiert! Wenn Du aus solchen Quellen Pakete brauchst, installiere diese gezielt. Denn bieten mehrere Quellen ein und dasselbe Paket an, wird es zu Konflikten zwischen den Paketen und Abhängigkeiten kommen. Siehe auch AptPinning.

Somit sieht unsere sources.list nun Beispielsweise folgendermaßen aus:

## Quellen für Debian stable
deb http://ftp.de.debian.org/debian/ stable main
deb-src http://ftp.de.debian.org/debian/ stable main
deb http://security.debian.org/ stable/updates main
deb-src http://security.debian.org/ stable/updates main
 
## Diese Fremdquelle enthält Pakete, die auch in den Debian Quellen enthalten sind.
#deb http://www.deb-multimedia.org/ stable main
#deb-src http://www.deb-multimedia.org/ stable main

Um nun ein Paket aus einer fremden Quelle zu installieren, gehe dazu wie folgt vor:

  1. Kommentarzeichen entfernen
  2. sources.list abspeichern
  3. Paketliste neu einlesen (apt-get update; oder aptitude)
  4. Wunschpaket(e) installieren
  5. Kommentarzeichen wieder setzen
  6. Paketliste neu einlesen (apt-get update; oder aptitude)

Testing, Unstable, Experimental

So hart es auch klingt, wer sich keine sources.list für testing, unstable oder gar experimental selbst erstellen kann. Der sollte vorerst noch bei stable bleiben und sich weiter in Debian einarbeiten.

Hinweis.png Hinweis: Eine Anleitung wie Sie ein Downgrade aller Pakete zu stable durchführen, finden Sie in der Debian Reference Kapitel 6 - Debian-Paketverwaltung. Zitat: Aber seien Sie gewarnt, es könnte kleinere Abhängigkeitsprobleme geben. Denn anders als ein Upgrade des stable-Release, wird ein Downgrade nicht garantiert.

Debian-Quellpakete handhaben

Debianpackage.png apt-src ist eine Kommandozeilen-Schnittstelle zum Herunterladen, Installieren, Aktualisieren von Debian-Quellpaketen. Es macht die Verwaltung von Quellpaketen ähnlich zur Verwendung von apt beim Umgang mit Binärpaketen. Zur Verwendung müssen die Quellindizes (deb-src Zeilen) in der sources.list angegeben sein.

Wie funktioniert apt-src:

  1. apt-src update aktualisiert die Liste der verfügbaren Pakete.
  2. apt-src -l $HOME/src install FOO installiert das Quellcode-Paket FOO und alle benötigten Bauabhänigkeiten.
  3. apt-src -l $HOME/src -i build FOO erstellt aus dem Quellcode das Binär-Paket FOO und installiert es.
  • apt-src -l $HOME/src -b -i upgrade aktualisiert alle Quellcode-Pakete und erstellt und installiert die neuen Versionen.
  • Mit -l $HOME/src muss ein Verzeichnis angegeben werden, in dem die Quellcode-Pakete gespeichert werden. Über die Option APT::Src::Location kann es auch in der Benutzerkonfiguration $HOME/.apt-src/config festgelegt werden und muss dann nicht auf der Komandozeile mitgegeben werden.

SecureApt - GPG Authentifizierung

Seit Etch verlangt APT die Authentifizierung von Paketquellen durch einen GPG-Schlüssel. Wie man dem Paketsystem neue Schlüssel bekannt gibt, wenn eine neue Paketquelle in die sources.list aufgenommen wurde, erklärt die Seite SecureApt.

Links

Meine Werkzeuge