Dandified yum, besser bekannt als DNF, ist ein Softwarepaketmanager für RPM-basierte Linux-Distributionen, der Pakete installiert, aktualisiert und entfernt. Es wurde erstmals in Fedora 18 in einem testbaren Zustand (d. h. Tech Preview) eingeführt, ist aber seit Fedora 22 Fedoras Standard-Paketmanager.
Weitere Linux-Ressourcen
- Spickzettel für Linux-Befehle
- Spickzettel für fortgeschrittene Linux-Befehle
- Kostenloser Online-Kurs:RHEL Technical Overview
- Spickzettel für Linux-Netzwerke
- SELinux-Spickzettel
- Spickzettel für allgemeine Linux-Befehle
- Was sind Linux-Container?
- Unsere neuesten Linux-Artikel
Da es sich um die Version der nächsten Generation des traditionellen Yum-Paketmanagers handelt, verfügt es über fortschrittlichere und robustere Funktionen als in Yum. Einige der Merkmale, die DNF von Yum unterscheiden, sind:
- Abhängigkeitsberechnung basierend auf moderner Abhängigkeitslösungstechnologie
- Optimierte speicherintensive Vorgänge
- Die Fähigkeit, in Python 2 und Python 3 ausgeführt zu werden
- Vollständige Dokumentation für Python-APIs verfügbar
DNF verwendet Hawkey-Bibliotheken, die RPM-Abhängigkeiten zum Ausführen von Abfragen auf Client-Computern auflösen. Diese bauen auf libsolv auf, einem Paketabhängigkeitslöser, der einen Erfüllbarkeitsalgorithmus verwendet. Weitere Details zum Algorithmus finden Sie im GitHub-Repository von libsolv.
CLI-Befehle, die sich in DNF und yum unterscheiden
Im Folgenden sind einige der Änderungen an der Befehlszeilenschnittstelle (CLI) von yum aufgeführt, die Sie in DNF finden werden.
dnf-Update oder dnf-Upgrade: Das Ausführen von entweder dnf update oder dnf upgrade hat im System den gleichen Effekt:Beide aktualisieren installierte Pakete. Das dnf-Upgrade wird jedoch bevorzugt, da es genau wie yum --obsoletes update funktioniert .
gelöstep: Dieser Befehl existiert nicht in DNF. Führen Sie stattdessen dnf provides aus um herauszufinden, welches Paket eine bestimmte Datei bereitstellt.
deplizieren: Der deplist-Befehl von Yum, der RPM-Abhängigkeiten auflistet, wurde in DNF entfernt, da er den Paketabhängigkeits-Solver-Algorithmus verwendet, um die Abhängigkeitsabfrage zu lösen.
dnf entfernen
DNF-Verlaufs-Rollback: Diese Prüfung, die Transaktionen nach der von Ihnen angegebenen rückgängig macht, wurde verworfen, da nicht alle möglichen Änderungen im RPM Database Tool in der Historie der Transaktion gespeichert werden.
--skip-broken: Dieser Installationsbefehl, der Pakete auf Abhängigkeitsprobleme prüft, wird in yum mit --skip-broken ausgelöst. Jetzt ist es jedoch standardmäßig Teil des dnf-Updates, sodass es nicht mehr benötigt wird.
-b, --best: Diese Schalter wählen die besten verfügbaren Paketversionen in Transaktionen aus. Während des dnf-Upgrades, das standardmäßig Updates überspringt, die aus Abhängigkeitsgründen nicht installiert werden können, zwingt dieser Schalter DNF, nur die neuesten Pakete zu berücksichtigen. Verwenden Sie dnf upgrade --best .
--allowing: Ermöglicht das Löschen installierter Pakete, um Abhängigkeiten aufzulösen. Diese Option könnte als Alternative zum yum swap X Y verwendet werden Befehl, in dem die zu entfernenden Pakete nicht explizit definiert sind.
Beispiel:dnf --allowerasing install Y .
--enableplugin: Dieser Schalter wird nicht erkannt und wurde entfernt.
DNF automatisch
Das automatische DNF-Tool ist eine alternative CLI zum DNF-Upgrade. Es kann automatisch und regelmäßig von systemd-Timern, Cron-Jobs usw. für automatische Benachrichtigungen, Downloads oder Updates ausgeführt werden.
Installieren Sie zunächst dnf-automatic rpm und aktivieren Sie die systemd-Timer-Einheit (dnf-automatic.timer). Es verhält sich wie in der Standardkonfigurationsdatei (das ist /etc/dnf/automatic.conf) angegeben.
# yum install dnf-automatic
# systemctl enable dnf-automatic.timer
# systemctl start dnf-automatic.timer
# systemctl status dnf-automatic.timer
Andere Timer-Einheiten, die die Standardkonfiguration außer Kraft setzen, sind unten aufgeführt. Wählen Sie die aus, die Ihren Systemanforderungen entspricht.
- dnf -automatisch- nur benachrichtigen .timer: Benachrichtigt die verfügbaren Updates
- dnf-automatic-download.timer: Lädt Pakete herunter, installiert sie aber nicht
- dnf -automatic-install.timer: Lädt Updates herunter und installiert sie
Grundlegende DNF-Befehle, die für die Paketverwaltung nützlich sind
# yum install dnf: Dies installiert DNF RPM aus dem Yum-Paketmanager.
# dnf –version: Dies gibt die DNF-Version an.
# dnf alle auflisten oder # dnf-Liste
# dnf check-update oder # dnf check-update kernel: Dadurch werden Aktualisierungen im System angezeigt.
# DNF-Suche
# dnf repolist all: Dadurch werden alle aktivierten Repositories im System heruntergeladen und aufgelistet.
# dnf list --recent oder # dnf list --recent
# dnf updateinfo list verfügbar oder # dnf updateinfo list available sec: Diese listen alle im System verfügbaren Ratschläge auf. Wenn Sie die Option sec einschließen, werden alle Hinweise mit der Bezeichnung "Sicherheitsfix" aufgelistet.
# dnf updateinfo list available sec --sec-severity Kritisch: Dies listet alle Sicherheitshinweise im System auf, die als "kritisch" gekennzeichnet sind.
# dnf updateinfo FEDORA-2018-a86100a264 –info: Dadurch werden die Informationen aller Ratschläge über --info überprüft wechseln.
# dnf upgrade --security oder # dnf upgrade --sec-severity Kritisch: Dies gilt für alle im System verfügbaren Sicherheitshinweise. Mit der --sec-severity Option können Sie die Pakete einschließen, deren Schweregrad entweder als "Kritisch", "Wichtig", "Mittel" oder "Niedrig" gekennzeichnet ist.
Zusammenfassung
Dies sind nur einige der Funktionen, Änderungen und Befehle von DNF. Vollständige Informationen über die CLI, neue Plug-ins und Hook-APIs von DNF finden Sie im DNF-Leitfaden.