MODULO DNF

DNF

Descrizione
DNF è la prossima versione principale di YUM, un gestore di pacchetti per le distribuzioni Linux basate su RPM. Mantiene approssimativamente la compatibilità CLI con YUM e definisce un’API rigorosa per estensioni e plug-in.

I plugin possono modificare o estendere le funzionalità di DNF o fornire comandi CLI aggiuntivi in aggiunta a quelli menzionati di seguito. Se si conosce il nome di tale comando (inclusi i comandi menzionati di seguito), è possibile trovare / installare il pacchetto che lo fornisce utilizzando la fornitura virtuale appropriata sotto forma di comando dnf (<alias>), dove <alias> è il nome del comando; per esempio. `dnf installa ‘dnf-command (versionelock)’` `installa un plug-in versionelock. Questo approccio si applica anche alla specifica delle dipendenze dei pacchetti che richiedono un particolare comando DNF.

Come si usa DNF?
Volendo tralasciare i client grafici, l’utilizzo più basilare di DNF è tramite linea di comando: in Fedora 22, ad esempio, per numerose operazioni è sufficiente sostituire il comando DNF al comando Yum utilizzando gli stessi parametri. Ad esempio, digitando

dnf install nomepacchetto

sarà possibile installare un pacchetto proveniente dai repository aggiunti al sistema, che restano comunque gli stessi di Yum (il formato del pacchetto è sempre rpm). Ecco qualche altro vantaggio di DNF (rispetto a Yum):

All’atto della rimozione di un pacchetto verranno rimosse anche le sue dipendenze (a meno che non siano state esplicitamente installate dall’utente); le dipendenze non vengono aggiornate all’installazione di un pacchetto; gli aggiornamenti non funzionanti (broken) vengono automaticamente saltati generando warning ma non errori; I repository non funzionanti vengono saltati generando warning ma non errori;
è possibile eliminare tutti i kernel, incluso quello in esecuzione.

Per concludere, ecco una lista dei comandi da terminale più utili per gestire i pacchetti, i repository e gli aggiornamenti tramite DNF; tutti i “vecchi” utenti di Fedora abituati a Yum non potranno non notare la somiglianza con il vecchio gestore!

dnf list
dnf list installed
dnf list available

Il primo comando mostra la lista di tutti i pacchetti disponibili (installati e non) nel sistema provenienti da tutti i repository, il secondo mostra esclusivamente i pacchetti installati, il terzo mostra tutti i pacchetti installabili dai repository abilitati.

dnf list
dnf list installed
dnf list available

Il primo comando mostra la lista di tutti i pacchetti disponibili (installati e non) nel sistema provenienti da tutti i repository, il secondo mostra esclusivamente i pacchetti installati, il terzo mostra tutti i pacchetti installabili dai repository abilitati.

dnf install nomepacchetto
dnf update nomepacchetto
dnf reinstall nomepacchetto

Il primo comando permette di installare un pacchetto nel sistema, il secondo di aggiornare un preciso pacchetto già installato, il terzo di reinstallare un pacchetto già installato.
dnf –enablerepo=repository install nomepacchetto
Permette di installare un pacchetto da uno specifico repository a scelta tra quelli presenti sul sistema (abilitati e non).

dnf distro-sync nomepacchetto

Permette di aggiornare il pacchetto all’ultima versione stabile presente nei repository abilitati.

dnf remove nomepacchetto
dnf erase nomepacchetto

Entrambi i comandi permettono di eliminare uno o più pacchetti dal sistema.

dnf autoremove

Permette di eliminare i pacchetti installati come dipendenza (e non esplicitamente dall’utente) non più richiesti da altre applicazioni.

dnf provides file

Permette di scoprire quale pacchetto (o quale gruppo) include uno specifico file.

dnf search stringa

Cerca il pacchetto (o i pacchetti) tra quelli disponibili il cui nome o la descrizione corrisponda del tutto o in parte con la parola stringa.

dnf info nomepacchetto

mostrerà le informazioni su un pacchetto presente nei repository, a prescindere che sia esso installato o meno sul sistema.

Gestione gruppi di pacchetti

dnf grouplist
dnf groupinstall ‘nome_gruppo’

Il primo comando permette di visualizzare l’intera lista dei gruppi di pacchetti installati o installabili nel sistema, il secondo permette di installare un gruppo di pacchetti.

dnf groupupdate ‘nome_gruppo’
dnf groupremove ‘nome_gruppo’

Il primo comando permette di aggiornare un intero gruppo di pacchetti, il secondo di eliminarllo