Paketverwaltung
- Linux-Software wird über Pakete installiert
- Paket enthält: Programmdateien, Konfiguration, Abhängigkeiten
- Paketverwaltung = zentrales Werkzeug zur Installation, Aktualisierung und Entfernung von Software
Paketverwaltung in Debian/Ubuntu
- Debian/Ubuntu nutzen APT (Advanced Package Tool)
- Arbeitet mit
.deb-Paketen - Bezieht Pakete aus Repositories (Online-Softwarelager)
- Repository-Adressen:
/etc/apt/sources.listund/etc/apt/sources.list.d/
Aufbau eines APT-Repository-Eintrags im Deb822-Format
Das Deb822-Format ist ein strukturiertes Format für APT-Paketquellen in Ubuntu (ab Version 24.04) und Debian, das die alten sources.list-Zeilen ablöst.
Stattdessen werden die Einträge nun im Ordner sources.list.d in eingenen .sources-Dateien angelegt.
Vergleich: klassische sources.list vs. Deb822 (.sources-Dateien)
Altes Format
- Datei:
/etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu jammy main restricted universe multiverse
- Format: eine Zeile pro Quelle, z. B.:
- Aufbau:
deb→ Binärpakete (deb-srcfür Quellpakete)- URL → Mirrorserver
- Codename → Ubuntu-Version (
jammy) - Komponenten →
main,restricted,universe,multiverse
Neues Format
- Deb822 im Verzeichnis:
/etc/apt/sources.list.d/
- Datei: beliebiger Name, Endung
.sources, z. B.ubuntu-official.sources - Format: strukturierte Schlüssel-Wert-Blöcke (Deb822)
- Beispiel:
Types: deb URIs: http://archive.ubuntu.com/ubuntu/ Suites: noble noble-updates noble-backports Components: main restricted universe multiverse Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
- Felder:
Types:→ Art der Pakete (deb/deb-src)URIs:→ Server-URLSuites:→ Release-Zweige (noble,noble-updates,noble-security…)Components:→ Lizenz- und Support-Gruppen (main,restricted,universe,multiverse)Signed-By:→ GPG-Schlüssel für Authentizität
- Merkmale:
- Strukturierter, übersichtlicher
- Mehrere Blöcke in einer Datei möglich
- Jede Quelle kann eigenen Signaturschlüssel haben
- Flexibler für mehrere URIs, PPAs und Backports
Zusammenfassung der Unterschiede
| Merkmal | sources.list | Deb822 / .sources |
|---|---|---|
| Ort | /etc/apt/sources.list | /etc/apt/sources.list.d/*.sources |
| Format | Eine Zeile pro Quelle | Schlüssel-Wert-Blöcke |
| Flexibilität | Gering | Hoch, mehrere Blöcke pro Datei möglich |
| Signaturen | Global oder Standard | Pro Block (Signed-By) |
| Verwaltung | Weniger übersichtlich bei vielen Quellen | Klar strukturierte Dateien, leicht zu deaktivieren |
Wichtige Zusatzinfos
- APT liest alle Quellen:
- Alle
.sources-Dateien +sources.listwerden zusammengeführt.
- Konflikte bei Paketen:
- Reihenfolge der Einträge ist nicht entscheidend
- APT wählt höchste Paketversion oder Priorität über Pinning
- Dateien können mehrere Quellen enthalten – es muss nicht pro Quelle eine Datei existieren.
Aufbau Deb822
Types: deb URIs: http://archive.ubuntu.com/ubuntu/ Suites: noble noble-updates noble-backports noble-proposed Components: main restricted universe multiverse Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
- Types:
- Gibt den Typ des Repositories an.
deb= Binärpakete (installierbare Programme).deb-src= Quellpakete (für Entwickler oder eigenes Kompilieren).
- URIs:
- Eine oder mehrere Internetadressen (Server), von denen die Paketdaten heruntergeladen werden.
- Beispiel:
http://archive.ubuntu.com/ubuntu/ist der Hauptserver von Ubuntu.
- Suites:
- Bestimmt, welche Release-Zweige des Repositories verwendet werden.
- Typische Werte:
noble→ Hauptveröffentlichung (Ubuntu 24.04 LTS)noble-updates→ reguläre Updatesnoble-backports→ neuere Programmversionen aus späteren Releasesnoble-proposed→ vorgeschlagene, noch nicht vollständig getestete Updatesnoble-security→ Sicherheitsupdates
- Components:
- Unterteilung des Repositories nach Lizenz und Supportstatus.
main→ offiziell unterstützte, freie Softwarerestricted→ proprietäre, eingeschränkt unterstützte Softwareuniverse→ freie Community-Softwaremultiverse→ nicht-freie Software
- Signed-By:
- Gibt den Pfad zum GPG-Schlüssel an, mit dem die Repository-Signatur überprüft wird.
- Stellt sicher, dass heruntergeladene Pakete authentisch und unverändert sind.
- Standard:
/usr/share/keyrings/ubuntu-archive-keyring.gpg
Komponenten
Definition:
- Unterbereiche eines Software-Archivs, die Pakete nach Lizenzart, Herkunft oder Unterstützungsgrad gliedern
- bestimmen, welche Softwarequellen (z. B. nur freie oder auch proprietäre Programme) vom Paketmanager
aptverwendet werden dürfen - main
- Offiziell unterstützte, vollständig freie Software
- Wird direkt von Ubuntu/Debian gepflegt
- Lizenz: Frei (Open Source)
- Unterstützung: Voller Support
- restricted
- Proprietäre Software, meist für Hardware-Unterstützung (z. B. Grafiktreiber)
- Nicht vollständig frei
- Unterstützung: Eingeschränkter Support
- universe
- Freie Software, die von der Community gepflegt wird
- Nicht offiziell unterstützt
- Lizenz: Frei
- Unterstützung: Community-Support
- multiverse
- Nicht-freie Software (z. B. wegen Lizenzen oder Patenten eingeschränkt)
- Keine offizielle Unterstützung
- Lizenz: Nicht frei
- Unterstützung: Kein offizieller Support
Wichtige APT-Befehle
sudo apt update→ Paketlisten aktualisierensudo apt upgrade→ Updates installierensudo apt install paketname→ Paket installierensudo apt remove paketname→ Paket entfernensudo apt purge paketname→ Paket + Konfiguration entfernenapt search paketname→ Paket suchenapt show paketname→ Paketinformationen anzeigen
Sicherheit & Vorteile
- Pakete stammen aus signierten Quellen → Schutz vor Manipulation
- Regelmäßige Updates halten System sicher und stabil
- Automatische Auflösung von Abhängigkeiten
- Zugriff auf tausende geprüfte Pakete
- Einfache Bedienung über CLI oder grafische Oberflächen
Fazit
- Paketverwaltung = große Stärke von Linux
- APT ermöglicht sichere, zentrale und komfortable Softwareverwaltung
- Repository-Bereiche (main, universe, restricted, multiverse) geben volle Kontrolle über Quellen
- System bleibt stabil, aktuell und sicher