Ricerca nel sito web

DNF: l'utilità di gestione dei pacchetti di nuova generazione per distribuzioni basate su RPM


Una notizia recente ha attirato l'attenzione di molti utenti, professionisti e studenti Linux secondo cui "DNF" (non significa nulla ufficialmente) sostituirà "YUM" l'utilità di gestione dei pacchetti nelle distribuzioni vale a dire, Fedora, CentOS, RedHat, ecc. che utilizzano RPM Package Manager.

La notizia è stata piuttosto sorprendente e più o meno un gestore di pacchetti è legato all'identità di una distribuzione Linux che è responsabile dell'installazione, dell'aggiornamento e della rimozione dei pacchetti.

YUM (sta per Yellowdog Updater, Modified) è un'utilità gratuita e open source basata su riga di comando rilasciata sotto la licenza pubblica generale GNU ed è scritta principalmente nel linguaggio di programmazione Python. YUM è stato sviluppato per gestire e aggiornare RedHat Linux alla Duke University, in seguito ha ottenuto un ampio riconoscimento ed è diventato il gestore di pacchetti di RedHat Enterprise Linux, Fedora, CentOS e altre distribuzioni Linux basate su RPM. Viene spesso chiamato "Il tuo gestore di pacchetti", spesso ufficiosamente dai professionisti Linux.

Leggi anche

  1. YUM (Yellowdog Updater, modificato) – 20 comandi per la gestione dei pacchetti
  2. RPM (Red Hat Package Manager) – 20 esempi pratici di comandi RPM

L'idea di sostituire Yum con DNF

Ale¨ Kozumplík, lo sviluppatore del progetto DNF è un dipendente RedHat. Lui dice:

“Per la prima volta nel 2009, mentre lavorava su ‘Anaconda‘ – The System Installer, ha avuto un’idea di come funziona Linux. Voleva lavorare su un progetto totalmente diverso che gli permettesse di esplorare lo strumento di packaging di Fedora."

Ale¨ Kozumplík ha detto - è stanco di spiegare che DNF non significa niente, è la risposta al nome di un gestore di pacchetti, quindi è, nient'altro. Deve avere un nome che non sia in conflitto con YUM e quindi è stato chiamato DNF.

Carenze di Yum che hanno portato alla fondazione di DNF:

  1. La risoluzione delle dipendenze di YUM è un incubo ed è stata risolta in DNF con la libreria SUSE "libsolv" e il wrapper Python insieme a C Hawkey.
  2. YUM non dispone di un'API documentata.
  3. Costruire nuove funzionalità è difficile.
  4. Nessun supporto per estensioni diverse da Python.
  5. Minore riduzione della memoria e sincronizzazione meno automatica dei metadati: un processo che richiede tempo.

Ale¨ Kozumplík, dice di non avere altra scelta che biforcare YUM e sviluppare DNF. Il manutentore del pacchetto YUM non era pronto per implementare queste modifiche. YUM ha circa 59000 LOC mentre DNF ha 29000 LOC (righe di codice).

Lo sviluppo DNF

DNF ha mostrato la sua presenza in Fedora 18 per la prima volta. Fedora 20 è stata la prima distribuzione Linux ad accogliere gli utenti a utilizzare la funzionalità di DNF al posto di YUM.

Le sfide tecniche che DNF si trova ad affrontare oggi sono: implementare tutte le funzioni di YUM. Per un utente normale DNF fornisce il download, l'installazione, l'aggiornamento, il downgrade e l'eliminazione del pacchetto. Tuttavia, il supporto per funzionalità come: saltare pacchetti danneggiati durante l'installazione, debug, output dettagliato, abilitare repository, escludere pacchetti durante l'installazione, ecc. è ancora scarso o nullo.

DNF e il confronto con il suo predecessore:

  1. Nessun effetto dell'opzione –skip-broken.
  2. Aggiornamento comando=Aggiorna
  3. Il comando resolvedep non è disponibile
  4. L'opzione skip_if_unavailable è attiva per impostazione predefinita
  5. Il processo di risoluzione delle dipendenze non è visibile nella riga di comando.
  6. Download paralleli nella versione futura.
  7. Annulla cronologia
  8. Delta giri/min
  9. Completamento di Bash
  10. Rimozione automatica, ecc.

L'integrazione DNF con Fedora e successivamente nell'ambiente commerciale viene messa in discussione di tanto in tanto da RHEL. L'ultima versione è DNF 0.6.0 è stata rilasciata il 12 agosto 2014.

Testare i comandi DNF

Installa dnf su Fedora o successivamente su RHEL/CentOS utilizzando il comando yum.

yum install dnf

Sinossi degli usi.

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

Installa un pacchetto.

dnf install <name_of_package>

Elimina un pacchetto.

dnf remove <name_of_package>

Aggiorna e potenzia il sistema.

dnf update
dnf upgrade

Nota: come detto sopra update=upgrade. COSÌ. questo pacchetto implementerà qualcosa come il rilascio progressivo? – Una domanda futura.

Il percorso predefinito del file di configurazione dnf: /etc/dnf/dnf.conf.

Futuro del progetto

Questo progetto mira a portare maggiore trasparenza e a documentare completamente il progetto. Il progetto è appena nato ed è necessario il sostegno della comunità per integrarlo. Molte funzioni devono ancora essere trasferite e ci vorrà del tempo. DNF verrà rilasciato ufficialmente con Fedora 22.

È tutto per ora. Sarò di nuovo qui presto con un altro articolo interessante. Fino ad allora restate sintonizzati e connessi. Non dimenticare di fornirci il tuo prezioso feedback nei commenti qui sotto.