DNF ou YUM Dandifié est un fork du gestionnaire de paquets YUM. Il a été introduit dans Fedora 18 et sur Fedora 22. Il est maintenant devenu le gestionnaire de packages par défaut pour gérer les packages RPM sur CentOS 8, RHEL 8 et Fedora.
DNF résout tous les problèmes associés à yum, tels que les performances médiocres, l'utilisation élevée de la mémoire, la lenteur de la résolution des dépendances. DNF peut être qualifié de prochaine version majeure du gestionnaire de packages YUM. Actuellement, la version la plus stable de DNF est la version 2.6.3
Dans ce didacticiel, nous aborderons les commandes DNF utilisées pour la gestion des packages. Cet article servira de feuille de triche pour DNF. Alors commençons…..
Commande DNF
La syntaxe pour utiliser la commande DNF est assez similaire à l'utilisation de YUM, vous trouverez donc beaucoup de similitudes entre les deux commandes.
Exemple :1) Répertorier les référentiels activés
Pour répertorier tous les référentiels activés sur le système, exécutez
[[email protected] ~]$ sudo dnf repolist[sudo] password for linuxtechi:repo id repo name status*epel Extra Packages for Enterprise Linux 7 - x86_64 11 989*fedora Fedora 26 - x86_64 53 912*mises à jour Fedora 26 - x86_64 - Mises à jour 9 405 virtualbox Fedora 26 - x86_64 - VirtualBox 10[[email protected] ~]$
Exemple :2) Listez tous les référentiels (activés et désactivés)
Si nous avons besoin de voir tous les référentiels activés ou désactivés, nous devons exécuter suivant
[[email protected] ~]$ sudo dnf repolist all
Exemple :3) Installer un package
Comme miam, nous utilisons 'install ' option suivie du nom du package avec dnf à installer, supposons que nous voulions installer le package de serveur Web (httpd)
[[email protected] ~]$ sudo dnf install httpd
Exemple :4) Supprimer un paquet
Pour supprimer un paquet, exécutez ce qui suit depuis le terminal,
[[email protected] ~]$ sudo dnf remove httpdor[[email protected] ~]$ sudo dnf erase httpd
La sortie de la commande ci-dessus serait quelque chose comme ci-dessous :
Exemple :5) Mettre à jour un package
Exécutez la commande suivante pour mettre à jour un seul package sur le système,
Syntaxe :dnf update {pkg-name}
[[email protected] ~]$ sudo dnf update filezilla
Exemple :6) Vérifier la mise à jour complète du système
Pour une vérification de mise à jour à l'échelle du système, exécutez la commande suivante,
[[email protected] ~]$ sudo dnf check-update
Exemple :7) Mettre à niveau tous les packages système
Pour mettre à niveau tous les packages système, exécutez la commande suivante
[[email protected] ~]$ sudo dnf upgrade
Exemple :8) Listez tous les forfaits de groupe
Utilisez ce qui suit pour répertorier tous les forfaits de groupe
[[email protected] ~]$ sudo dnf grouplistDernière vérification de l'expiration des métadonnées :il y a 1:40:19 le mardi 10 octobre 2017 à 10:08:39 IST. Groupes d'environnement disponibles : Système d'exploitation personnalisé Fedora Installation minimale Fedora Server Edition Fedora Workstation Fedora Cloud Server KDE Plasma Workspaces Xfce Desktop LXDE Desktop Hawaii Desktop LXQt Desktop Cinnamon Desktop MATE Desktop Sugar Desktop Environment Development and Creative Workstation Web Server Infrastructure Server Basic DesktopInstalled Groups : LibreOfficeAvailable Groups : 3D Printing Administration Tools Ansible node Audio Production………… ………Exemple :9) Installation de packages de groupe
Des packages similaires sont regroupés et peuvent être installés à partir d'une seule commande, plutôt que d'utiliser des commandes séparées. Pour installer un groupe, exécutez
[[email protected] ~]$ sudo dnf groupinstall "Outils de développement"
Exemple :10) Suppression de packages de groupe
Pour supprimer un groupe complet de packages du système, exécutez la commande dnf suivante,
Syntaxe : dnf groupremove "group_name"
[[email protected] ~]$ sudo dnf groupremove "Outils de développement"Nous pouvons également utiliser "groupupdate" pour mettre à jour les packages de groupe.
Exemple :11) Rechercher des packages
Pour rechercher un package particulier dans les référentiels, exécutez
Syntaxe :dnf search {package_name}
Supposons que je veuille rechercher le package net-tools
[[email protected] ~]$ sudo dnf search net-tools===========Nom correspondant exactement :net-tools =========net-tools.x86_64 :Outils de mise en réseau de base[[email protected] ~]$Exemple :12) Télécharger (ne pas installer) un package
Il peut y avoir des scénarios où nous avons besoin de télécharger les packages mais que nous ne souhaitons pas installer. Utilisez la commande suivante pour télécharger un package comme samba
Syntaxe : dnf télécharger package_name
[[email protected] ~]$ sudo dnf download sambasamba-4.6.8-0.fc26.x86_64.rpm 139 ko/s | 636 Ko 00:04[[email protected] ~]$Exemple :13) Afficher tous les forfaits disponibles
Pour obtenir la liste de tous les packages disponibles à partir des référentiels, ouvrez le terminal et exécutez la commande dnf
[[email protected] ~]$ liste dnf disponible | plus
Exemple :14) Afficher uniquement les packages installés
Maintenant, si nous n'avons besoin que d'une liste des packages installés sur le système, nous pouvons l'obtenir en exécutant la commande suivante,
[[email protected] ~]$ liste dnf installée
Exemple :15) Afficher tous les packages installés ainsi que les packages disponibles
Pour obtenir la liste de tous les packages, c'est-à-dire installés et disponibles, exécutez la commande suivante
[[email protected] ~]$ liste dnf
Exemple :16) Activer le référentiel pour l'installation
Pour utiliser un référentiel particulier pour installer un package, exécutez
[[email protected] ~]$ sudo dnf install --enablerepo=epel mysqlPackages supplémentaires pour Enterprise Linux 7 - x86_64 3,9 Mo/s | 13 Mo 00:03Dépendances résolues.============================================================================== Paquet Arch Version Référentiel Taille================================================================================Installation : mariadb x86_64 3:10.1.26-2.fc26 mises à jour 6.4 MInstallation des dépendances : mariadb-common x86_64 3: 1 . 3:1 -2.FC26 Mises à jour 100 K Mariadb-Config x86_64 3:10.1.26-2.FC26 MISES À JOUR 33 K MARIADB-LIBS X86_64 3:10.1.26-2.FC26 MISES À JOUR 663 KTRANSACTION Résumé =========. ======================================================================Taille totale de téléchargement :7,2 MTaille installée :44 ML, c'est correct [o/N] : oExemple :17) Vérifiez quel package fournit la fonction requise
Si nous voulons savoir quel package est responsable de l'obtention d'une fonctionnalité particulière, comme nous devons connaître le nom du package associé à 'crontab' ou à une autre commande, nous pouvons utiliser la commande dnf 'provides ‘ de la manière suivante,
[[email protected] ~]$ sudo dnf fournit crontabcronie-1.5.1-5.fc26.x86_64 :démon Cron pour exécuter des programmes à des heures définiesRepo :@Systemcronie-1.5.1-5.fc26.x86_64 :démon Cron pour exécuter des programmes à des heures fixesRepo :fedora[[email protected] ~]$La même chose peut être faite sur un fichier, nous pouvons également utiliser la même commande avec un emplacement de fichier pour obtenir le nom du package auquel le fichier est associé,
[[email protected]]$ sudo dnf fournit /var/www/htmlExemple :18) Afficher les informations sur le package
Pour obtenir les détails d'un package spécifique, exécutez
[[Email Protected] ~] $ dnf Info CronieInStalled PackagesName:CronieVersion:1.5.1Release:5.FC26Arch:x86_64Size:236 Ksource:Cronie-1.5.1-5.fc26.src. :Démon Cron pour l'exécution de programmes à des heures définiesURL :https://fedorahosted.org/cronieLicense :MIT et BSD et ISC et GPLv2+Description :Cronie contient le démon UNIX standard crond qui exécute des programmes /spécifiés à :heures planifiées et outils associés. Il s'agit d'un fork de / original vixie-cron et :a des améliorations de sécurité et de configuration comme la possibilité d'utiliser pam et :SELinux.[[email protected] ~]$Exemple :19) Construire un cache
Bien que le cache soit construit automatiquement au fil du temps, nous avons également la possibilité de créer manuellement le cache, afin que les actions futures soient rapides et terminées rapidement. Pour créer un cache manuellement, exécutez
[[email protected] ~]$ sudo time dnf makecacheLast metadata expiration check:0:04:41 ago on Thu 12 Oct 2017 09:53:00 AM IST.Metadata cache created.0.86user 0.12system 0:01.04elapsed 95%CPU (0avgtext+0avgdata 106872maxresident)k0inputs+1192outputs (0major+39606minor)pagefaults 0swaps[[email protected] ~]$Exemple :20) Supprimer un cache
Pour supprimer toutes les données dnf en cache, exécutez les commandes suivantes
[[email protected] ~]$ sudo dnf clean tous les 34 fichiers supprimés[[email protected] ~]$Exemple :21) Vérifier l'historique des transactions
Pour vérifier toutes les transactions qui ont été effectuées à l'aide de la commande DNF, exécutez les commandes suivantes
[[email protected] ~]$ historique sudo dnf
Il produira une liste de toutes les transactions dans l'ordre où elles se sont produites avec un numéro correspondant. Nous pouvons utiliser ce numéro pour obtenir davantage de détails sur cette transaction,
[[email protected] ~]$ sudo dnf historique info 5
Les journaux liés à l'installation, à la suppression ou aux mises à jour sont conservés dans le fichier journal /var/log/dnf.log. À l'aide de la commande dnf history, nous pouvons également annuler les mises à jour du système.
Exemple :22) Suppression de packages orphelins
Les packages orphelins sont les packages qui ont été installés une fois pour satisfaire la dépendance d'un autre package mais qui ne sont plus requis maintenant. Pour supprimer ces packages, exécutez
[[email protected] ~]$ sudo dnf suppression automatique
Exemple :23) Synchroniser tous les packages avec les dernières versions stables
Exécutez la commande suivante afin de synchroniser tous les packages avec les dernières versions stables,
[[email protected] ~]$ sudo dnf distro-sync
Si nous n'avons besoin de synchroniser qu'un seul package, mentionnez ce package_name à la fin, sinon tous les packages seront synchronisés.
Exemple :24) Réinstaller un package
Pour réinstaller un package, le cas échéant, exécutez la commande suivante,
[[email protected] ~]$ sudo dnf reinstall postfixDépendances résolues.========================================================================== Paquet Arch Version Référentiel Taille==========================================================================Réinstallation : postfix x86_64 2:3.2.2-1.fc26 fedora 1.4 MTransaction Summary==========================================================================Taille totale de téléchargement :1,4 MI, c'est bon [y/N] :yExemple :25) Mise à niveau vers une version particulière
Avec DNF, il est également possible de mettre à niveau le package rpm vers une version particulière, pour y parvenir, exécutez la commande suivante,
[[email protected] ~]$ sudo dnf upgrade-to httpd-2.4.27-3.fc26Exemple :26) Obtenir la liste de toutes les commandes et options DNF
Pour obtenir une liste de toutes les options disponibles pouvant être utilisées avec DNF, exécutez
[[email protected] ~]$ dnf help
C'était notre tutoriel complet pour le gestionnaire de packages DNF avec des exemples. Veuillez laisser vos questions ou questions concernant ce didacticiel dans les commentaires ci-dessous.