AB 06 — Linux-Grundlagen
Begriffserklärung: Repositories & Dependencies
(Linux – Paketverwaltung und Softwaremanagement mit APT)
Repository
Abschnitt betitelt „Repository“Ein Repository (dt. Softwarequelle) ist ein zentraler Server, auf dem Ubuntu seine Pakete (Programme, Bibliotheken, Updates) bereitstellt.
Statt Software manuell aus dem Internet herunterzuladen, werden Programme über diese offiziellen Quellen sicher installiert.
Repositories sind in der Datei /etc/apt/sources.list oder in Unterordnern von /etc/apt/sources.list.d/ eingetragen.
Es gibt unterschiedliche Typen:
| main | Offizielle, vollständige unterstützte freie Software |
|---|---|
| restricted | Offizielle, aber nicht freie Treiber/Firmware (NVIDIA, etc) |
| universe | Community-gepflege freie Software |
| multiverse | Nicht frei, nicht vollständig unterstütze Software |
Beispiel:
sudo add-apt-repository ppa:<name>Fügt kein Repository aus den Ubuntu-Standardquellen, sondern ein PPA von Launchpad hinzu.
Ein PPA ist also eine besondere Art von externem Repository, nicht Teil der offiziellen Ubuntu-Repos.
Dependencies
Abschnitt betitelt „Dependencies“„Dependencies“ sind Abhängigkeiten – also andere Pakete, die ein Programm benötigt, um ausgeführt zu werden. Wenn du z. B. vlc installierst, müssen zusätzliche Bibliotheken oder Tools installiert werden, wie z.b.:
-
libqt5core5q (GUI-Bibliotheken)
-
ffmpeg (Video-/Audioverarbeitung)
Der Paketmanager APT löst diese Abhängigkeiten automatisch auf. Dadurch wird verhindert, dass ein Programm unvollständig oder fehlerhaft installiert wird.
Paketmanagement über die Kommandozeile
Abschnitt betitelt „Paketmanagement über die Kommandozeile“Ubuntu verwendet hauptsächlich APT (Advanced Packaging Tool) und dpkg. APT arbeitet mit .deb-Paketen (Debian-Format).
APT (Advanced Packaging Tool)
-
Höhere Ebene („Frontend“)
-
Verwaltet Downloads, Updates, Auflösung von Abhangigkeiten
-
Arbeitet mit Debian-Paketen (.deb)
dpkg
-
Niedere Ebene („Backend“)
-
Installiert oder entfernt einzelne .deb-Dateien
-
Löst keine Abhängigkeiten automatisch auf
2.1. Gezielt nach Paketen suchen
Abschnitt betitelt „2.1. Gezielt nach Paketen suchen“apt search <paketname>→ zeigt eine Liste von Paketen mit Kurzbeschreibung.
Beispiele:
apt search vlcapt show firefoxMit apt show erhältst du Details zu Version, Abhängigkeiten, Größe und Repository.
2.2. Software installieren
Abschnitt betitelt „2.2. Software installieren“sudo apt install <paketname>Beispiele:
sudo apt install gimpsudo apt install curlTipp: Eine bestimmte Version installieren:
sudo apt install <paketname>=<version>z. B.sudo apt install nginx=1.24.0-2ubuntu2Tipp: Alle verfügbaren Versionen anzeigen lassen:
apt list -a <paketname>apt list -a nginx2.3. Software deinstallieren
Abschnitt betitelt „2.3. Software deinstallieren“Variante 1: Entfernen, Konfigurationsdateien bleiben erhalten
sudo apt remove <paketname>Entfernt das Programm, aber Konfigurationsdateien bleiben im System (z. B. in /etc/<paketname>/ oder ~/.config/).
Variante 2: Vollständiges Entfernen inkl. Konfiguration
sudo apt purge <paketname>Entfernt Programm und Konfigurationsdateien.
Ideal, wenn du ein Programm komplett löschen willst.
Variante 3: Ungenutzte Abhängigkeiten automatisch entfernen
sudo apt autoremoveLöscht Pakete, die als Abhängigkeiten installiert wurden, aber nicht mehr benötigt sind. (z. B. Bibliotheken von deinstallierter Software)
Beispielkombination:
sudo apt purge libreoffice*sudo apt autoremove2.4. Pakete manuell herunterladen und installieren
Abschnitt betitelt „2.4. Pakete manuell herunterladen und installieren“Falls kein Internet oder eine Offline-Installation nötig ist, kann ein .deb-Paket manuell installiert werden:
Paket von einer sicheren Quelle herunterladen (z. B. https://packages.ubuntu.com).
Installation mit:
sudo dpkg -i paketname.debFalls Abhängigkeiten fehlen:
sudo apt -f installdpkg ist der Low-Level-Paketmanager.
APT baut darauf auf und löst Abhängigkeiten automatisch.
2.5. System und Software aktualisieren
Abschnitt betitelt „2.5. System und Software aktualisieren“Paketlisten aktualisieren
sudo apt updateLädt die neuesten Informationen über verfügbare Pakete aus den Repositories.
Installierte Software auf neueste Versionen aktualisieren
sudo apt upgradeAktualisiert alle installierten Pakete (ohne System-Upgrades).
Komplettes System auf neue Distribution upgraden
sudo apt full-upgradeAktualisiert auch Kernel und entfernt alte, inkompatible Pakete. (Nützlich für Versionssprünge z. B. von Ubuntu 22.04 auf 24.04.)
Alternativ (älterer Befehl):
sudo apt-get dist-upgrade→ synonym zu full-upgrade.
- Häufige APT-Befehle
ZweckBefehlBeschreibungPaket suchenapt search <name>Findet Pakete im RepositoryPaketinfoapt show <name>Zeigt Version, Größe, AbhängigkeitenInstallierensudo apt install <name>Installiert Paket inkl. AbhängigkeitenEntfernensudo apt remove <name>Löscht Paket, behält KonfigurationVollständig löschensudo apt purge <name>Löscht Paket + KonfigurationUngenutzte Pakete löschensudo apt autoremoveEntfernt alte, ungenutzte AbhängigkeitenPaketlisten aktualisierensudo apt updateAktualisiert Repository-InformationenSystem aktualisierensudo apt upgradeFührt Updates durchManuelle Installationsudo dpkg -i <paket.deb>Installiert lokales .deb-PaketFehlerhafte Abhängigkeiten reparierensudo apt -f installBehebt AbhängigkeitsproblemeBeispiel-Workflow
sudo apt updatesudo apt install vlcsudo apt remove vlcsudo apt purge vlcsudo apt autoremoveZeigt den typischen Lebenszyklus einer Software auf: Installation → Deinstallation → Aufräumen.
Zusammenfassung
RepositoriesZentrale Softwarequellen, aus denen Ubuntu Programme, Updates und Bibliotheken bezieht.DependenciesPaketabhängigkeiten, die ein Programm zum Funktionieren benötigt. APT installiert sie automatisch mit.APTDer Paketmanager, der Installation, Updates, Upgrade, Entfernung und Abhängigkeitsverwaltung automatisiert.removeLöscht nur das Programm, Konfigurationsdateien bleiben erhalten.purgeLöscht Programm + Konfigurationsdateien vollständig.autoremoveEntfernt nicht mehr benötigte Abhängigkeiten, die durch frühere Installationen übriggeblieben sind.