Paketmanager (apt/dnf/pacman)
linux apt dnf pacman packages
Paketmanager unter Linux
Paketmanager installieren, aktualisieren und entfernen Software automatisch inklusive aller Abhängigkeiten. Jede Distribution hat ihren eigenen.
Übersicht der Paketmanager
| Distribution | Paketmanager | Paketformat |
|---|---|---|
| Debian, Ubuntu, Mint | APT | .deb |
| RHEL, CentOS, Fedora | DNF (früher YUM) | .rpm |
| Arch, Manjaro | Pacman | .pkg.tar.zst |
| openSUSE | Zypper | .rpm |
| Alpine | APK | .apk |
APT (Debian/Ubuntu)
Paketlisten aktualisieren
# Paketlisten von Repositories holen
sudo apt update
# System upgraden (installierte Pakete)
sudo apt upgrade
# Vollständiges Upgrade (mit Abhängigkeits-Änderungen)
sudo apt full-upgrade
# Beides kombiniert
sudo apt update && sudo apt upgrade -y
Pakete installieren
# Einzelnes Paket
sudo apt install nginx
# Mehrere Pakete
sudo apt install nginx certbot python3-pip
# Bestimmte Version
sudo apt install nginx=1.18.0-0ubuntu1
# Ohne Nachfrage
sudo apt install -y nginx
# .deb-Datei installieren
sudo apt install ./paket.deb
# oder
sudo dpkg -i paket.deb
sudo apt install -f # Abhängigkeiten nachinstallieren
Pakete entfernen
# Paket entfernen (Configs bleiben)
sudo apt remove nginx
# Paket + Konfiguration entfernen
sudo apt purge nginx
# Verwaiste Abhängigkeiten entfernen
sudo apt autoremove
# Komplett aufräumen
sudo apt purge nginx && sudo apt autoremove
Pakete suchen & Info
# Paket suchen
apt search webserver
# Paketinfo anzeigen
apt show nginx
# Installierte Pakete auflisten
apt list --installed
# Prüfen ob installiert
apt list nginx
dpkg -l | grep nginx
# Welches Paket enthält Datei?
apt-file search /usr/bin/htop
dpkg -S /usr/bin/htop
Cache verwalten
# Heruntergeladene Pakete anzeigen
du -sh /var/cache/apt/archives/
# Cache leeren (alte Versionen)
sudo apt autoclean
# Cache komplett leeren
sudo apt clean
Repositories verwalten
# Repository hinzufügen (PPA)
sudo add-apt-repository ppa:ondrej/php
# Manuell Repository hinzufügen
echo "deb http://example.com/repo stable main" | sudo tee /etc/apt/sources.list.d/example.list
# GPG-Key hinzufügen
curl -fsSL https://example.com/key.gpg | sudo apt-key add -
# oder modern:
curl -fsSL https://example.com/key.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/example.gpg
# Repository entfernen
sudo add-apt-repository --remove ppa:ondrej/php
DNF (Fedora/RHEL/CentOS)
System aktualisieren
# Metadaten aktualisieren
sudo dnf check-update
# System upgraden
sudo dnf upgrade
# Kombiniert
sudo dnf upgrade -y
Pakete installieren
# Einzelnes Paket
sudo dnf install nginx
# Mehrere Pakete
sudo dnf install nginx certbot python3-pip
# Gruppe installieren
sudo dnf group install "Development Tools"
# Lokales RPM installieren
sudo dnf install ./paket.rpm
Pakete entfernen
# Paket entfernen
sudo dnf remove nginx
# Mit Abhängigkeiten
sudo dnf autoremove nginx
# Verwaiste Pakete
sudo dnf autoremove
Pakete suchen & Info
# Suchen
dnf search webserver
# Info anzeigen
dnf info nginx
# Installierte Pakete
dnf list installed
# Welches Paket enthält Datei?
dnf provides /usr/bin/htop
Repositories verwalten
# Repos auflisten
dnf repolist
# Repo aktivieren/deaktivieren
sudo dnf config-manager --enable epel
sudo dnf config-manager --disable epel
# Repo hinzufügen
sudo dnf config-manager --add-repo https://example.com/repo.repo
Historie & Rollback
# Historie anzeigen
dnf history
# Details zu Transaktion
dnf history info 5
# Transaktion rückgängig machen
sudo dnf history undo 5
Pacman (Arch Linux)
System aktualisieren
# Datenbank synchronisieren + upgraden
sudo pacman -Syu
# Nur Datenbank synchronisieren
sudo pacman -Sy
# Upgrade erzwingen
sudo pacman -Syyu
Pakete installieren
# Einzelnes Paket
sudo pacman -S nginx
# Mehrere Pakete
sudo pacman -S nginx certbot python-pip
# Ohne Nachfrage
sudo pacman -S --noconfirm nginx
# Paketgruppe
sudo pacman -S base-devel
Pakete entfernen
# Paket entfernen
sudo pacman -R nginx
# Mit Abhängigkeiten
sudo pacman -Rs nginx
# Mit Configs
sudo pacman -Rns nginx
# Verwaiste Pakete finden
pacman -Qdt
# Verwaiste Pakete entfernen
sudo pacman -Rs $(pacman -Qdtq)
Pakete suchen & Info
# In Repos suchen
pacman -Ss webserver
# Installierte durchsuchen
pacman -Qs nginx
# Paketinfo (Repo)
pacman -Si nginx
# Paketinfo (installiert)
pacman -Qi nginx
# Dateien eines Pakets
pacman -Ql nginx
# Welches Paket enthält Datei?
pacman -F /usr/bin/htop
Cache verwalten
# Cache anzeigen
du -sh /var/cache/pacman/pkg/
# Alte Versionen behalten (letzte 3)
sudo paccache -r
# Cache leeren
sudo pacman -Sc
# Komplett leeren
sudo pacman -Scc
AUR (Arch User Repository)
Mit yay (AUR-Helper):
# yay installieren
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
# AUR-Paket installieren
yay -S spotify
# System + AUR updaten
yay -Syu
Vergleichstabelle
| Aufgabe | APT (Debian) | DNF (Fedora) | Pacman (Arch) |
|---|---|---|---|
| Update Paketliste | apt update |
dnf check-update |
pacman -Sy |
| System upgraden | apt upgrade |
dnf upgrade |
pacman -Syu |
| Installieren | apt install pkg |
dnf install pkg |
pacman -S pkg |
| Entfernen | apt remove pkg |
dnf remove pkg |
pacman -R pkg |
| Suchen | apt search pkg |
dnf search pkg |
pacman -Ss pkg |
| Info | apt show pkg |
dnf info pkg |
pacman -Si pkg |
| Installierte | apt list --installed |
dnf list installed |
pacman -Q |
| Aufräumen | apt autoremove |
dnf autoremove |
pacman -Rs $(pacman -Qdtq) |
| Cache leeren | apt clean |
dnf clean all |
pacman -Sc |
Tipps & Best Practices
Vor dem Installieren
# Immer erst Paketlisten aktualisieren
sudo apt update # Debian/Ubuntu
sudo dnf check-update # Fedora
sudo pacman -Sy # Arch
Automatische Updates
# Debian/Ubuntu: unattended-upgrades
sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades
# Fedora: dnf-automatic
sudo dnf install dnf-automatic
sudo systemctl enable --now dnf-automatic.timer
Paket "halten" (nicht upgraden)
# APT
sudo apt-mark hold paketname
sudo apt-mark unhold paketname
# DNF
sudo dnf versionlock add paketname
sudo dnf versionlock delete paketname
# Pacman
# In /etc/pacman.conf: IgnorePkg = paketname
Kaputte Installation reparieren
# APT
sudo apt --fix-broken install
sudo dpkg --configure -a
# DNF
sudo dnf distro-sync
# Pacman
sudo pacman -Syyu
Sicherheit
Nur vertrauenswürdige Repos
# GPG-Keys prüfen
apt-key list # APT
rpm -qa gpg-pubkey* # DNF
Pakete verifizieren
# Debian: Debsums
sudo apt install debsums
sudo debsums -c
# Fedora
rpm -Va
# Arch
pacman -Qk
Security-Updates
# Debian/Ubuntu: Nur Sicherheitsupdates
sudo apt upgrade -s | grep -i security
# Fedora
sudo dnf upgrade --security