Zoeken op website

DNF - Het hulpprogramma voor pakketbeheer van de volgende generatie voor op RPM gebaseerde distributies


Een recent nieuws vestigt de aandacht van veel Linux-gebruikers, professionals en studenten dat “DNF” (staat officieel voor niets) het pakketbeheerhulpprogramma “YUM” in distributies gaat vervangen namelijk Fedora, CentOS, RedHat, etc. die RPM Package Manager gebruiken.

Het nieuws was nogal verrassend en er is min of meer een pakketbeheerder gekoppeld aan de identiteit van een Linux-distributie die verantwoordelijk is voor het installeren, bijwerken en verwijderen van pakketten.

YUM (staat voor Yellowdog Updater, Modified) is een gratis en open-source opdrachtregelgebaseerd hulpprogramma uitgegeven onder de GNU General Public License en is voornamelijk geschreven in de programmeertaal Python. YUM is ontwikkeld om RedHat Linux te beheren en te updaten aan de Duke University. Later kreeg het brede erkenning en werd het de pakketbeheerder van RedHat Enterprise Linux, Fedora, CentOS en andere op RPM gebaseerde Linux-distributies. Het wordt vaak onofficieel "Uw pakketbeheerder" genoemd door Linux Professionals.

Lees ook

  1. YUM (Yellowdog Updater, aangepast) – 20 opdrachten voor pakketbeheer
  2. RPM (Red Hat Package Manager) – 20 praktische voorbeelden van RPM-opdrachten

Het idee om Yum te vervangen door DNF

Ale¨ Kozumplík, de ontwikkelaar van het DNF-project, is een medewerker van RedHat. Hij zegt:

“Voor het eerst in het jaar 2009, toen hij aan ‘Anaconda‘ – The System Installer werkte, kreeg hij inzicht in de werking van Linux. Hij wilde aan een totaal ander project werken, waarbij hij de verpakkingstool van Fedora kon verkennen.”

Ale¨ Kozumplík zei – hij is het beu om uit te leggen dat DNF voor niets staat, het is een naam van een pakketbeheerder en dat is het ook, niets anders. Het moet een naam hebben die niet conflicteert met YUM en daarom kreeg het de naam DNF.

Tekortkomingen van Yum die hebben geleid tot de oprichting van DNF:

  1. Afhankelijkheidsresolutie van YUM is een nachtmerrie en werd opgelost in DNF met SUSE-bibliotheek ‘libsolv’ en Python-wrapper samen met C Hawkey.
  2. YUM heeft geen gedocumenteerde API.
  3. Het bouwen van nieuwe functies is moeilijk.
  4. Geen ondersteuning voor andere extensies dan Python.
  5. Lagere geheugenreductie en minder automatische synchronisatie van metadata – een tijdrovend proces.

Ale¨ Kozumplík zegt dat hij geen andere keus heeft dan YUM te forken en DNF te ontwikkelen. De beheerder van het YUM-pakket was niet klaar om deze wijzigingen door te voeren. YUM heeft ongeveer 59000 LOC, terwijl DNF 29000 LOC (Lines of Code) heeft.

De DNF-ontwikkeling

DNF toonde voor de eerste keer zijn aanwezigheid in Fedora 18. Fedora 20 was de eerste Linux-distributie die gebruikers verwelkomde om de functionaliteit van DNF te gebruiken in plaats van YUM.

De technische uitdagingen waarmee DNF momenteel wordt geconfronteerd, zijn het implementeren van alle functies van YUM. Voor een normale gebruiker biedt DNF pakketdownload, installatie, update, downgrade en verwijdering. Er is echter nog steeds weinig of geen ondersteuning voor functies zoals het overslaan van kapotte pakketten tijdens de installatie, debuggen, uitgebreide uitvoer, het inschakelen van repository, het uitsluiten van pakketten tijdens de installatie, enz.

DNF en de vergelijking van zijn voorganger:

  1. Geen effect van de schakelaar –skip-broken.
  2. Commando-update=Upgrade
  3. Het commando resolvedep is niet beschikbaar
  4. De optie skip_if_unavailable staat standaard AAN
  5. Het proces voor het oplossen van afhankelijkheid is niet zichtbaar op de opdrachtregel.
  6. Parallelle downloads in toekomstige releases.
  7. Geschiedenis ongedaan maken
  8. Delta-RPM
  9. Bash-voltooiing
  10. Automatisch verwijderen, enz.

DNF-integratie met Fedora en later in een commerciële omgeving wordt van tijd tot tijd door RHEL in twijfel getrokken. De nieuwste versie is DNF 0.6.0 en werd uitgebracht op 12 augustus 2014.

DNF-opdrachten testen

Installeer dnf op fedora of hoger op RHEL/CentOS met behulp van de opdracht yum.

yum install dnf

Gebruiksoverzicht.

dnf [options] <command> [<argument>]

Installeer een pakket.

dnf install <name_of_package>

Een pakket verwijderen.

dnf remove <name_of_package>

Update en upgrade het systeem.

dnf update
dnf upgrade

Opmerking: zoals hierboven gezegd update=upgrade. Dus. gaat dit pakket zoiets als een rolling release implementeren? – Een toekomstige vraag.

De standaardlocatie van het dnf-configuratiebestand: /etc/dnf/dnf.conf.

Toekomst van projecten

Dit project heeft tot doel meer transparantie te brengen en het project volledig te documenteren. Het project staat nog in de kinderschoenen en de steun van de gemeenschap is nodig om het project te integreren. Er moeten nog veel functies worden geporteerd en dat zal tijd kosten. DNF wordt officieel uitgebracht met Fedora 22.

Dat is het voor nu. Binnenkort ben ik hier weer met een nieuw interessant artikel. Blijf tot die tijd op de hoogte en verbonden. Vergeet niet om ons uw waardevolle feedback te geven in de reacties hieronder.