DNF - Uslužni program za upravljanje paketima sljedeće generacije za distribucije temeljene na RPM-u


Nedavna vijest skreće pozornost mnogih Linux korisnika, profesionalaca i učenika da će “DNF” (službeno ne znači ništa) zamijeniti “YUM” uslužni program za upravljanje paketima u distribucijama tj. Fedora, CentOS, RedHat itd. koji koriste RPM Package Manager.

Vijest je bila prilično iznenađujuća i više-manje upravitelj paketa je vezan uz identitet distribucije Linuxa koji je odgovoran za instaliranje, ažuriranje i uklanjanje paketa.

YUM (skraćenica za Yellowdog Updater, modificirano) je besplatan uslužni program otvorenog koda koji se temelji na naredbenom retku, objavljen pod GNU Općom javnom licencom i prvenstveno je napisan u programskom jeziku Python. YUM je razvijen za upravljanje i ažuriranje RedHat Linuxa na Sveučilištu Duke, kasnije je stekao široko priznanje i postao upravitelj paketa za RedHat Enterprise Linux, Fedora, CentOS i druge distribucije Linuxa temeljene na RPM-u. Često se naziva “Vaš upravitelj paketa”, neslužbeno često od strane Linux profesionalaca.

Pročitajte također

  1. YUM (Yellowdog Updater, modificirano) – 20 naredbi za upravljanje paketima
  2. RPM (Red Hat Package Manager) – 20 praktičnih primjera RPM naredbi

Ideja da Yum zamijenite DNF-om

Ale¨ Kozumplík, programer DNF projekta je RedHat zaposlenik. On kaže:

“Prvi put 2009. godine dok je radio na 'Anaconda' – Instalator sustava, imao je uvid u rad Linuxa. Želio je raditi na potpuno drugačijem projektu koji mu je omogućio istraživanje alata za pakiranje Fedore.”

Ale¨ Kozumplík je rekao – umorio se od objašnjavanja da DNF ne znači ništa, to je odgovor na ime upravitelja paketa, tako i jest, ništa drugo. Mora se nazvati nešto što nije u sukobu s YUM i stoga je nazvano DNF.

Nedostaci Yuma koji su doveli do osnivanja DNF-a:

  1. Rješavanje ovisnosti YUM-a je noćna mora i riješeno je u DNF-u sa SUSE bibliotekom 'libsolv' i Python omotom zajedno s C Hawkeyem.
  2. YUM nema dokumentirani API.
  3. Izgradnja novih značajki je teška.
  4. Nema podrške za ekstenzije osim Pythona.
  5. Manje smanjenje memorije i manje automatske sinkronizacije metapodataka – dugotrajan proces.

Ale¨ Kozumplík, kaže da nema izbora osim račvanja YUM-a i razvoja DNF-a. Održavač YUM paketa nije bio spreman implementirati ove promjene. YUM ima oko 59000 LOC dok DNF ima 29000 LOC (Lines of Code).

Razvoj DNF-a

DNF je prvi put pokazao svoju prisutnost u Fedori 18. Fedora 20 bila je prva distribucija Linuxa koja je dobrodošla korisnicima da iskoriste funkcionalnost DNF-a umjesto YUM-a.

Tehnički izazovi s kojima se DNF suočava kao i sada - implementirati sve funkcije YUM-a. Za normalnog korisnika DNF omogućuje preuzimanje, instalaciju, ažuriranje, vraćanje i brisanje paketa. Međutim, još uvijek postoji malo ili nimalo podrške za značajke kao što su – preskakanje pokvarenog paketa tijekom instalacije, otklanjanje pogrešaka, verbose izlaz, omogućavanje repoa, isključivanje paketa tijekom instalacije itd.

Usporedba DNF-a i njegovog prethodnika:

  1. Nema učinka prekidača –skip-broken.
  2. Naredba Ažuriranje=Nadogradnja
  3. Naredba resolvedep nije dostupna
  4. Opcija skip_if_unavailable je UKLJUČENA prema zadanim postavkama
  5. Proces rješavanja ovisnosti nije vidljiv u naredbenom retku.
  6. Paralelna preuzimanja u budućem izdanju.
  7. Poništavanje povijesti
  8. Delta RPM
  9. Bash završetak
  10. Automatsko uklanjanje itd.

RHEL s vremena na vrijeme dovodi u pitanje integraciju DNF-a s Fedorom i kasnije u komercijalnom okruženju. Najnovija verzija DNF 0.6.0 objavljena je 12. kolovoza 2014.

Testiranje DNF naredbi

Instalirajte dnf na fedora ili kasnije na RHEL/CentOS pomoću naredbe yum.

yum install dnf

Sinopsis upotrebe.

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

Instalirajte paket.

dnf install <name_of_package>

Brisanje paketa.

dnf remove <name_of_package>

Ažurirajte i nadogradite sustav.

dnf update
dnf upgrade

Napomena: Kao što je gore rečeno update=upgrade. Tako. hoće li ovaj paket implementirati nešto poput tekućeg izdanja? – Pitanje za budućnost.

Zadana lokacija dnf konfiguracijske datoteke: /etc/dnf/dnf.conf.

Budućnost projekta

Ovaj projekt ima za cilj donijeti više transparentnosti, kao i potpunu dokumentaciju projekta. Projekt je u ranoj fazi i potrebna je podrška zajednice da bi se projekt integrirao. Puno funkcija još treba prenijeti i trebat će vremena. DNF će biti službeno objavljen s Fedorom 22.

To je sve za sada. Uskoro ću opet biti ovdje s još jednim zanimljivim člankom. Do tada ostanite s nama i povezani. Ne zaboravite nam dati svoje vrijedne povratne informacije u komentarima ispod.