Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
DNF (Dandified Yum) ist der Standard-Paketmanager in Fedora seit Version 22. Er ist der Nachfolger von YUM und wurde entwickelt, um eine schnellere und zuverlässigere Paketverwaltung zu ermöglichen.
DNF verwaltet Softwarepakete im RPM-Format und organisiert sie in Repositories. Die wichtigsten sind:
Die Hauptkonfigurationsdatei liegt unter /etc/dnf/dnf.conf
.
Hier ein Beispiel mit wichtigen Einstellungen:
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=True
⚠️ WICHTIG VOR DEM UPDATE:
sudo dnf upgrade
Beispielausgabe:
Last metadata expiration check: 0:02:38 ago
Dependencies resolved.
================================================================================
Package Arch Version Repository Size
================================================================================
Upgrading:
kernel x86_64 6.5.6-200.fc38 updates 32 M
firefox x86_64 119.0-1.fc38 updates 270 M
[...]
Was passiert hier?
sudo dnf install firefox
Beispielausgabe:
Last metadata expiration check: 1:15:29 ago
Dependencies resolved.
================================================================================
Package Architecture Version Repository Size
================================================================================
Installing:
firefox x86_64 119.0-1.fc38 updates 270 M
Installing dependencies:
firefox-libs x86_64 119.0-1.fc38 updates 175 M
gtk3 x86_64 3.24.38-1.fc38 fedora 12 M
Transaction Summary
================================================================================
Install 3 Packages
Total download size: 457 M
Installed size: 892 M
Is this ok [y/N]:
Was passiert hier?
⚠️ WICHTIGE HINWEISE:
Installation ohne Bestätigung
sudo dnf install -y firefox
⚠️ WARNUNG: Nutze -y
nur, wenn du dir sicher bist!
Installation einer bestimmten Version
sudo dnf install firefox-118.0-1.fc38
Installation aus einer bestimmten Quelle
sudo dnf --enablerepo=rpmfusion-nonfree install vlc
DNF unterstützt Paketgruppen für zusammengehörige Software:
# Verfügbare Gruppen anzeigen
dnf group list
# Details einer Gruppe anzeigen
dnf group info "Development Tools"
# Gruppe installieren
sudo dnf group install "Development Tools"
Einfache Paketentfernung
sudo dnf remove firefox
Beispielausgabe
Dependencies resolved.
================================================================================
Package Architecture Version Repository Size
================================================================================
Removing:
firefox x86_64 119.0-1.fc38 @updates 892 M
Removing unused dependencies:
firefox-libs x86_64 119.0-1.fc38 @updates 175 M
Transaction Summary
================================================================================
Remove 2 Packages
Is this ok [y/N]:
Automatische Bereinigung
Nicht mehr benötigte Abhängigkeiten entfernen:
sudo dnf autoremove
Beispielausgabe
Dependencies resolved.
================================================================================
Package Architecture Version Repository Size
================================================================================
Removing:
gtk3-devel x86_64 3.24.38-1.fc38 @fedora 12 M
[...weitere nicht mehr benötigte Pakete...]
Transaction Summary
================================================================================
Remove 5 Packages
Is this ok [y/N]:
Detaillierte Paketinformationen
dnf info firefox
Beispielausgabe
Last metadata expiration check: 2:12:33 ago
Available Packages
Name : firefox
Version : 119.0
Release : 1.fc38
Architecture : x86_64
Size : 270 M
Source : firefox-119.0-1.fc38.src.rpm
Repository : updates
Summary : Mozilla Firefox Web browser
URL : https://www.mozilla.org/firefox/
License : MPLv1.1 or GPLv2+ or LGPLv2+
Description : Mozilla Firefox is an open-source web browser...
Paketabhängigkeiten anzeigen
dnf deplist firefox
Dateien eines installierten Pakets anzeigen
dnf repoquery -l firefox
Cache bereinigen
sudo dnf clean all
Was wird gereinigt?
Teilweise Cache-Bereinigung
Nur alte Pakete entfernen:
sudo dnf clean packages
Nur Metadaten bereinigen:
sudo dnf clean metadata
Vorbereitende Maßnahmen (SEHR WICHTIG!)
Fedora Release Notes prüfen unter: https://docs.fedoraproject.org/en-US/releases/
⚠️ KRITISCHE WARNUNGEN:
Metadaten aktualisieren
sudo dnf check-update
Vollständiges Systemupdate
sudo dnf upgrade
Beispielausgabe mit Erklärungen:
Last metadata expiration check: 0:15:24 ago
Dependencies resolved.
================================================================================
Package Arch Version Repository Size
================================================================================
Upgrading:
kernel x86_64 6.5.6-200.fc38 updates 32 M
systemd x86_64 254-1.fc38 updates 15 M
firefox x86_64 119.0.1-1.fc38 updates 270 M
[...weitere Pakete...]
Transaction Summary
================================================================================
Upgrade 15 Packages
Total download size: 425 M
Is this ok [y/N]:
Was bedeuten verschiedene Update-Typen?
Historie anzeigen
dnf history
Details einer Transaktion
dnf history info 123
Transaktion rückgängig machen
sudo dnf history undo 123
Beschädigte Metadaten
error: Failed to synchronize cache for repo 'fedora'
Cache komplett leeren
sudo dnf clean all
Metadaten neu laden
sudo dnf makecache
Repository-Status prüfen
dnf repolist all
Repository neu aktivieren
sudo dnf config-manager --set-enabled fedora
Konflikt analysieren
dnf repoquery --requires --resolve paketname
Alternative Version installieren
sudo dnf --allowerasing install paketname
⚠️ WARNUNG: --allowerasing mit Vorsicht verwenden!
sudo dnf install dnf-plugins-core
System-Upgrade auf neue Fedora-Version
sudo dnf system-upgrade download --releasever=39
Automatische Updates konfigurieren
Automatische Updates konfigurieren
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
In /etc/yum.repos.d/fedora.repo
[fedora]
priority=1
In /etc/dnf/dnf.conf
:
[main]
max_parallel_downloads=10
defaultyes=True
keepcache=True
sudo dnf install dnf-plugins-core
In dnf.conf
aktivieren
fastestmirror=True
# System aktualisieren
sudo dnf upgrade
# Nicht benötigte Pakete entfernen
sudo dnf autoremove
# Cache bereinigen
sudo dnf clean all
# RPM-Datenbank prüfen
sudo rpm --rebuilddb
# Systemjournal prüfen
journalctl -p 3 -xb
# System-Snapshot erstellen (wenn verfügbar)
sudo snapper create --description "Vor Update"
# Paketliste sichern
dnf repoquery --userinstalled > ~/pkglist-$(date +%Y%m%d).txt
Module sind Sammlungen zusammengehöriger RPM-Pakete, die verschiedene Versionen der gleichen Software ermöglichen.
Verfügbare Module anzeigen
dnf module list
# Beispielausgabe:
Name Stream Profiles Summary
=====================================================================================
nodejs 16 [d] common [d], development, minimal Javascript runtime
nodejs 18 common [d], development, minimal Javascript runtime
postgresql 13 [d] client, server [d] PostgreSQL server
postgresql 14 client, server [d] PostgreSQL server
Was bedeuten die Markierungen?
[d]
: Standard-Stream/Profil[e]
: Aktiviert[x]
: InstalliertSpezifische Version aktivieren
sudo dnf module enable postgresql:13
Mit bestimmtem Profil installieren
sudo dnf module install postgresql:13/server
⚠️ WICHTIG:
dnf module reset
Alle installierten Pakete verifizieren
sudo dnf verify
Einzelnes Paket prüfen
sudo dnf verify firefox
Schlüssel importieren
sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-*
Paket verifizieren
rpm -K paketname.rpm
Verfügbare Versionen anzeigen
dnf list --showduplicates firefox
Auf bestimmte Version downgraden
sudo dnf downgrade firefox-118.0-1.fc38
⚠️ WARNUNG:
In /etc/dnf/dnf.conf
:
[main]
max_parallel_downloads=10
deltarpm=true
fastestmirror=true
Was bewirken diese Einstellungen?
max_parallel_downloads
: Anzahl gleichzeitiger Downloadsdeltarpm
: Nur Änderungen herunterladenfastestmirror
: Schnellste Server wählenMetadata-Cache erstellen
sudo dnf makecache
Cache-Gültigkeit einstellen
metadata_expire=12h
sudo dnf install dnf-automatic
Konfiguration in /etc/dnf/automatic.conf
:
[commands]
upgrade_type = security
download_updates = yes
apply_updates = no
[emitters]
emit_via = email
[email]
email_from = root@localhost
email_to = admin@example.com
sudo systemctl enable --now dnf-automatic.timer
Liste installierter Pakete erstellen
dnf repoquery --userinstalled > packages.txt
Pakete aus Liste installieren
sudo dnf install $(cat packages.txt)
sudo dnf install dnf-plugins-core
Priorität in .repo
-Datei setzen
priority=1
DNF-Debug-Ausgabe
dnf -v install firefox
dnf --debuglevel=10 update
Transaktions-Debug
# Debug-Logs aktivieren
debuglevel=10
logdir=/var/log/dnf
Snapshot erstellen
sudo lvcreate -s -n snap01 -L 5G /dev/vg0/root
Snapshot zurückrollen
sudo lvconvert --merge /dev/vg0/snap01
RPM-Datenbank sichern
sudo cp -a /var/lib/rpm /backup/rpm-$(date +%Y%m%d)
Paketlisten exportieren
dnf repoquery --userinstalled > /backup/packages-$(date +%Y%m%d).txt
DNF ist ein leistungsfähiger und moderner Paketmanager, der Fedora-Benutzern eine robuste und flexible Möglichkeit zur Systemverwaltung bietet. Mit seinen fortschrittlichen Funktionen wie modularen Paketen, automatischen Updates und umfangreichen Debugging-Möglichkeiten ist DNF bestens für sowohl Einsteiger als auch fortgeschrittene Benutzer geeignet.
Fedora entwickelt sich ständig weiter. Überprüfe regelmäßig die offizielle Dokumentation auf Änderungen und neue Funktionen. Die hier beschriebenen Methoden können sich mit der Zeit ändern. Mit diesem umfassenden Wissen und den zur Verfügung stehenden Ressourcen bist du gut gerüstet, um dein Fedora-System effektiv mit DNF zu verwalten.
Denk immer daran: Die Fedora-Community ist hilfsbereit und unterstützend - zögere nicht, Fragen zu stellen und dich einzubringen!
Dieser Artikel wird regelmäßig aktualisiert, um neue Entwicklungen und Best Practices zu berücksichtigen. Die letzte Aktualisierung erfolgte am 20. Oktober 2024.