Paketmanager sind das zentrale Werkzeug zur Softwareverwaltung unter Linux. Je nach Distribution kommen unterschiedliche Tools zum Einsatz.

Welcher Paketmanager für welche Distribution?

| Distribution | Paketmanager | Paketformat | |--------------|--------------|-------------| | Debian | apt, dpkg | .deb | | Ubuntu | apt, dpkg | .deb | | CentOS/RHEL | yum, dnf | .rpm | | AlmaLinux/Rocky | dnf | .rpm | | Fedora | dnf | .rpm | | openSUSE | zypper | .rpm |

apt (Debian/Ubuntu)

apt ist der Standard-Paketmanager für Debian-basierte Systeme.

Paketlisten aktualisieren

apt update

Pakete aktualisieren

# Alle Pakete aktualisieren
apt upgrade

# Mit Abhängigkeitsänderungen
apt full-upgrade

Software installieren

apt install nginx
apt install nginx php mysql-server

Software entfernen

# Paket entfernen
apt remove nginx

# Mit Konfiguration
apt purge nginx

# Nicht mehr benötigte Abhängigkeiten
apt autoremove

Nach Paketen suchen

apt search nginx
apt search "web server"

Paket-Informationen

apt show nginx
apt info nginx

Installierte Pakete auflisten

apt list --installed
apt list --installed | grep nginx

Aktualisierbare Pakete

apt list --upgradable

Cache leeren

apt clean
apt autoclean

Häufige apt-Befehle

| Befehl | Aktion | |--------|--------| | apt update | Paketlisten aktualisieren | | apt upgrade | Pakete aktualisieren | | apt install paket | Installieren | | apt remove paket | Entfernen | | apt purge paket | Komplett entfernen | | apt search text | Suchen | | apt show paket | Info anzeigen | | apt autoremove | Aufräumen |

dpkg - Low-Level-Tool

dpkg arbeitet direkt mit .deb-Dateien:

# .deb installieren
dpkg -i paket.deb

# Falls Abhängigkeiten fehlen
apt install -f

# Paket-Info
dpkg -l | grep nginx

# Dateien eines Pakets
dpkg -L nginx

# Welches Paket enthält Datei?
dpkg -S /usr/sbin/nginx

yum (CentOS 7, RHEL 7)

yum ist der klassische Paketmanager für Red-Hat-basierte Systeme.

Grundlegende Befehle

# Pakete aktualisieren
yum update

# Nur Sicherheitsupdates
yum update --security

# Software installieren
yum install nginx

# Software entfernen
yum remove nginx

# Suchen
yum search nginx

# Info anzeigen
yum info nginx

Gruppen

# Verfügbare Gruppen
yum group list

# Gruppe installieren
yum group install "Development Tools"

Cache

yum clean all
yum makecache

dnf (CentOS 8+, Fedora, AlmaLinux)

dnf ist der moderne Nachfolger von yum mit gleicher Syntax:

# Aktualisieren
dnf update
dnf upgrade

# Installieren
dnf install nginx

# Entfernen
dnf remove nginx

# Suchen
dnf search nginx

# Info
dnf info nginx

Zusätzliche dnf-Features

# Historie anzeigen
dnf history

# Letzte Aktion rückgängig
dnf history undo last

# Automatische Sicherheitsupdates
dnf install dnf-automatic
systemctl enable --now dnf-automatic.timer

Repositories verwalten

apt (Debian/Ubuntu)

# Repository hinzufügen
add-apt-repository ppa:ondrej/php
apt update

# Manuell in /etc/apt/sources.list.d/
echo "deb http://example.com/repo stable main" > /etc/apt/sources.list.d/example.list

# GPG-Key importieren
curl -fsSL https://example.com/key.gpg | gpg --dearmor -o /etc/apt/keyrings/example.gpg

yum/dnf (CentOS/RHEL)

# EPEL Repository
dnf install epel-release

# Remi Repository (für PHP)
dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm

# Repos auflisten
dnf repolist
dnf repolist all

# Repo aktivieren/deaktivieren
dnf config-manager --enable remi
dnf config-manager --disable remi

Sicherheitsupdates automatisieren

Debian/Ubuntu

apt install unattended-upgrades
dpkg-reconfigure -plow unattended-upgrades

Konfiguration in /etc/apt/apt.conf.d/50unattended-upgrades.

CentOS/AlmaLinux

dnf install dnf-automatic

Konfiguration in /etc/dnf/automatic.conf:

[commands]
upgrade_type = security
apply_updates = yes
systemctl enable --now dnf-automatic.timer

Paket-Versionen pinnen

apt

In /etc/apt/preferences.d/nginx:

Package: nginx
Pin: version 1.24.*
Pin-Priority: 1000

dnf/yum

dnf install python3-dnf-plugins-extras-versionlock
dnf versionlock add nginx
dnf versionlock list

Offline-Installation

apt

# Paket herunterladen
apt download nginx

# Installieren
dpkg -i nginx*.deb

dnf

# Paket herunterladen
dnf download nginx

# Mit Abhängigkeiten
dnf download --resolve nginx

# Installieren
dnf install nginx*.rpm

Vergleichstabelle

| Aktion | apt | dnf/yum | |--------|-----|---------| | Listen aktualisieren | apt update | dnf makecache | | Pakete aktualisieren | apt upgrade | dnf upgrade | | Installieren | apt install | dnf install | | Entfernen | apt remove | dnf remove | | Suchen | apt search | dnf search | | Info | apt show | dnf info | | Aufräumen | apt autoremove | dnf autoremove | | Cache leeren | apt clean | dnf clean all |

Best Practices

1. Regelmäßig aktualisieren: Mindestens wöchentlich 2. Vor Installation: Immer apt update bzw. dnf makecache 3. Aufräumen: autoremove nach dem Entfernen von Paketen 4. Sicherheitsupdates: Automatisieren mit unattended-upgrades/dnf-automatic 5. Repositories: Nur vertrauenswürdige Quellen hinzufügen

Fazit

apt und dnf sind mächtige Werkzeuge zur Softwareverwaltung. Die grundlegenden Befehle sind schnell gelernt. Aktivieren Sie automatische Sicherheitsupdates für einen sicheren Server.