APT/Repositories

Aus Foxwiki
  • Ein Repository enthält die URL's und Informationen zu aktuellen Programmen, welche von Debian unterstützt, getestet und für vertrauenswürdig befunden wurden.
  • Das Hauptrepository befindet sich in der Datei sources.list im Ordnet /etc/apt/ .

Unterteilungen von Repositories

  • Es ist möglich im Ordnet sources.list.d Dateien anzulegen mit jeweiligen URL's zu entsprechenden Repositories.
  • Das ist hilfreich um die Übersicht zu behalten.

Backport Repository anlegen (Linux Buster)

  • Um ein Backport Repository anzulegen muss man zunächst in den Ordner /etc/apt/sources.list.d/ wechseln.
  • Anschließend die Datei backport.list anlegen
touch backport.list

Nun muss die Datei mit Inhalt befüllt werden

cat > backport.list  [Enter drücken]
deb http://deb.debian.org/debian buster-backports main [Enter drücken]
[CTRL+D]

Vertrauenswürdigkeit von Repositories

Normalerweise benötigt man zum Einbinden eines Repositories einen GPG-Key. Dieser stellt die Vertrauenswürdigkeit des Repositories sicher. Bei den Backport-Repositories ist dies jedoch nicht nötig.

GPG-Key bei Fremdquellen

Deb-Pakete in Paketquellen werden mit GnuPG-Schlüsseln digital signiert. Passt die Signatur zu keinem der Paketverwaltung bekannten Schlüssel, so wird der Benutzer bei der Installation eines Paketes aus solch einer Quelle gewarnt (in neueren Ubuntu-Version sogar verweigert). Drittanbieter stellen daher oft ihren GPG-Key zur Verfügung, den man dann in seinen Keyring importieren muss.

Um einen Schlüssel hinzuzufügen, ist die einsteigerfreundlichste (weil grafische) Methode, den Schlüssel als Textdatei abzuspeichern und dann über System -> Systemverwaltung -> Synaptic Paketverwaltung -> Einstellungen -> Paketquellen -> Authentifizierung zu importieren.

In einem Terminal kann durch die Eingabe folgenden Befehls dasselbe erreicht werden:

# apt-key adv --recv-keys --keyserver keyserver.ubuntu.com FINGERPRINT_DES_SCHLÜSSELS 

Beispiel :

# wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
# apt-key add apt.gpg
# apt-key add php.gpg
  • wget lädt den gpg Key herunter (in diesem Beispiel sind es zwei Schlüssel)
  • apt-key add fügt den Schlüssel zum Keyring hinzu

sources.list Generator

Es gibt im Internet ein praktisches Tool, welches eine sources List Datei erstellt. Dabei kann zwischen den verschiedenen Versionen von Debian gewählt werden (Stable, Testing, Unstable). Es können auch Repositories von Dritten eingebunden werden (diese werden unterhalb angezeigt und können via Checkbox ausgewählt werden). In diesem Fall muss man den GPG-Key manuell hinzufügen. Die Adresse des GPG-Keys wird auf der folgenden Seite angezeigt.

Links

Was ist ein Repository

Ein Debian - Repository ist ein Spezieller Verzeichniss Baum. Der mit Hilfe von APT angesprochen werden kann um manuelle Updates ziehen zu können. Debian-Paketarchive werden hauptsächlich zum automatischen Speichern und Abrufen von Paketen verwendet. Die meisten Paketmanager, verwenden libapt zum Abrufen von Paketen von externen Medien und aus dem Internet.

Aufbau eines Repository

Das Debian Repository enthällt mehrere Versionen die nach Toy Story Figuren benannt sind wie z.b:

  • Wheezy (Der Pinguin),
  • Jessie (Cowgirl),
  • Stretch,(Der Lila Oktopus) ...

Jede version hat auch noch verschiedene Aliase wie

Version Status
stable Stabil versionen
unstable instablile version (sie wurde noch nicht in die test fase aufgenommen)
testet Die version ist in einer test fase

Desweiteren wird jede Version in mehrere Komponente unterteilt

In Debian werden die in

  • main
  • non-free
  • contrib

angegeben und geben die Lizensierung der Software an

Der Release

Der Release enthält Packete die für verschiedene Architekturen wie ... amd64, i386, mips, powerpc, s390x sowie Quellen und Architekturen abhängiger Pakete.

Das Wurzelverzeichnis eines Repositorys

(Wurzelverzeichnis des Repositories) 
| 
+-dists
  | 
  |-stable
  | |-main
  | | |-binary-alpha 
  | | |-binary-arm
  | | |-binary-...
  | | +-source 
  | |-contrib
  | | |-binary-alpha 
  | | |-binary-arm
  | | |-binary-...
  | | +-source 
  | +-non-free
  |   |-binary-alpha
  |   |-binary-arm
  |   |-binary-...
  |   +-source
  |
  |-testing 
  | |-main
  | | |-binary-alpha 
  | | |-binary-arm
  | | |-binary-...
  | | +-source 
  | |-contrib
  | | |-binary-alpha 
  | | |-binary-arm
  | | |-binary-...
  | | +-source 
  | +-non-free
  |   |-binary-alpha
  |   |-binary-arm
  |   |-binary-...
  |   +-source
  |
  +-unstable 
    |-main
    | |-binary-alpha 
    | |-binary-arm
    | |-binary-...
    | +-source 
    |-contrib
    | |-binary-alpha 
    | |-binary-arm
    | |-binary-...
    | +-source 
    +-non-free
      |-binary-alpha
      |-binary-arm
      |-binary-...
      +-source

Quellen

https://wiki.debian.org/DebianRepository/Format
https://wiki.debian.org/DebianRepository
https://wiki.debian.org/SourcesList
https://debiananwenderhandbuch.de/debianrepositories.html