27 commandes 'DNF' (fork of yam) pour la gestion des paquets RPM sous Linux
DNF alias Dandified YUM est un gestionnaire de paquets de nouvelle génération pour la distribution basée sur RPM. Il a été introduit pour la première fois dans Fedora 18 et il a remplacé l’utilitaire YUM dans la version récente de Fedora 22.
DNF vise à améliorer les goulets d’étranglement de YUM, à savoir les performances, l’utilisation de la mémoire, la résolution des dépendances, la vitesse et bien d’autres facteurs. DNF fait de la gestion de paquets en utilisant RPM, libsolv et la bibliothèque hawkey. Bien qu’il ne soit pas installé dans CentOS et RHEL 7, vous pouvez miam, dnf et l’utiliser en même temps que le yum.
Vous pouvez en savoir plus sur DNF ici :
- Raisons de remplacer Yum par DNF
La dernière version stable de DNF est la 1.0 (au moment de la rédaction de cet article) qui a été publiée le 11 mai 2015. Elle (et toutes les versions précédentes de DNF) est principalement écrite en Python et est publiée sous licence GPL v2.
Installation de DNF
DNF n’est pas disponible dans le référentiel par défaut de RHEL/CentOS 7. Cependant, Fedora 22 est officiellement mis en œuvre avec DNF.
Pour installer DNF sur les systèmes RHEL/CentOS, vous devez d’abord installer et activer le référentiel epel-release.
# yum install epel-release
OR
yum install epel-release -y
Bien qu’il ne soit pas éthique d’utiliser '-y' avec yum car il est recommandé de voir ce qui est installé dans votre système. Cependant, si cela n’a pas beaucoup d’importance, vous pouvez utiliser '-y' avec yum pour tout installer automatiquement sans intervention de l’utilisateur.
Ensuite, installez le paquet DNF à l’aide de la commande yum du référentiel epel-release.
# yum install dnf
Une fois que dnf a été installé avec succès, il est temps de vous montrer 27 utilisation pratique des commandes dnf avec des exemples qui vous aideront à gérer facilement et efficacement les paquets dans la distribution basée sur RPM.
1. Vérifiez la version DNF
Vérifiez la version de DNF installée sur votre système.
# dnf --version
2. Liste des dépôts DNF activés
L’option 'repolist' avec la commande dnf, affichera tous les dépôts activés sous votre système.
# dnf repolist
3. Répertorier tous les dépôts DNF activés et désactivés
L’option 'repolist all' imprimera tous les dépôts activés/désactivés sous votre système.
# dnf repolist all
4. Répertoriez tous les packages disponibles et installés à l’aide de DNF
La commande « dnf list » listera tous les paquets disponibles de tous les dépôts et paquets installés sur votre système Linux.
# dnf list
5. Répertorier tous les packages installés à l’aide de DNF
Tandis que la commande « dnf list » affiche tous les packages disponibles/installés de tous les dépôts. Cependant, vous avez la possibilité de ne lister que les paquets installés à l’aide de l’option « list installed » comme indiqué ci-dessous.
# dnf list installed
6. Listez tous les packages disponibles à l’aide de DNF
De même, l’option « liste disponible » listera tous les paquets disponibles à installer à partir de tous les dépôts activés.
# dnf list available
7. Recherchez un paquet à l’aide de DNF
Si vous n’avez aucune idée du paquet que vous voulez installer, dans une telle situation, vous pouvez utiliser l’option 'search' avec la commande dnf pour rechercher le paquet qui correspond au mot ou à la chaîne (disons nano).
# dnf search nano
8. Voir Qu’est-ce qui fournit un fichier/sous-paquet ?
L’option dnf « provides » trouve le nom du paquet qui fournit un fichier/sous-paquet spécifique. Par exemple, si vous souhaitez savoir ce qui fournit '/bin/bash' sur votre système ?
# dnf provides /bin/bash
9. Obtenez les détails d’un paquet à l’aide de DNF
Supposons que vous vouliez connaître les informations d’un paquet avant de l’installer sur le système, vous pouvez utiliser l’interrupteur « info » pour obtenir des informations détaillées sur un paquet (disons nano) comme ci-dessous.
# dnf info nano
10. Installer un paquet avec DNF
Pour installer un paquet appelé nano, il suffit d’exécuter la commande ci-dessous, il résoudra et installera automatiquement toutes les dépendances requises pour le paquet nano.
# dnf install nano
11. Mise à jour d’un paquet à l’aide de DNF
Vous pouvez ne mettre à jour qu’un paquet spécifique (disons systemd) et laisser tout ce qui se trouve sur le système intact.
# dnf update systemd
12. Vérifiez les mises à jour du système à l’aide de DNF
Vérifiez les mises à jour de tous les packages système installés dans le système simplement comme.
# dnf check-update
13. Mettre à jour tous les packages système à l’aide de DNF
Vous pouvez mettre à jour l’ensemble du système, y compris tous les paquets installés, avec les commandes suivantes.
# dnf update
OR
dnf upgrade
14. Supprimer/effacer un paquet à l’aide de DNF
Pour supprimer ou effacer tout paquet indésirable (disons nano), vous pouvez utiliser l’interrupteur « supprimer » ou « effacer » avec la commande dnf pour le supprimer.
# dnf remove nano
OR
dnf erase nano
15. Supprimer les paquets orphelins à l’aide de DNF
Les paquets qui ont été installés pour satisfaire les dépendances peuvent être inutiles s’ils ne sont pas utilisés par d’autres applications. Pour supprimer ces packages orphelins, exécutez la commande ci-dessous.
# dnf autoremove
16. Supprimer les paquets mis en cache à l’aide de DNF
Souvent, nous rencontrons des en-têtes obsolètes et des transactions inachevées, ce qui entraîne une erreur lors de l’exécution de dnf. Nous pouvons nettoyer tous les paquets mis en cache et les en-têtes contenant des informations sur les paquets distants simplement en les exécutant.
# dnf clean all
17. Obtenez de l’aide sur une commande DNF spécifique
Vous pouvez obtenir l’aide de n’importe quelle commande dnf spécifique (disons clean) simplement en exécutant la commande ci-dessous.
# dnf help clean
18. Énumérez toutes les commandes et options DNF
Pour afficher l’aide sur toutes les commandes et options dnf disponibles, tapez simplement.
# dnf help
19. Voir l’historique de DNF
Vous pouvez appeler dnf history pour consulter la liste des commandes dnf déjà exécutées. De cette façon, vous pouvez savoir ce qui a été installé/supprimé avec l’horodatage.
# dnf history
20. Énumérer tous les forfaits de groupe
La commande « dnf grouplist » affichera tous les paquets disponibles ou installés, si rien n’est mentionné, elle listera tous les groupes connus.
# dnf grouplist
21. Installer un package de groupe à l’aide de DNF
Pour installer un groupe de paquets regroupés en tant que paquet de groupe (par exemple, Logiciel éducatif) simplement comme.
# dnf groupinstall 'Educational Software'
22. Mettre à jour un forfait de groupe
Mettons à jour un package de groupe (par exemple, un logiciel éducatif) en exécutant la commande ci-dessous.
# dnf groupupdate 'Educational Software'
23. Supprimer un paquet de groupe
Nous pouvons supprimer le package de groupe (par exemple, logiciel éducatif) comme.
# dnf groupremove 'Educational Software'
24. Installer un package à partir d’un référentiel spécifique
DNF permet d’installer n’importe quel paquet spécifique (par exemple phpmyadmin) à partir d’un dépôt (epel) aussi simplement que,
# dnf --enablerepo=epel install phpmyadmin
25. Synchroniser les paquets installés avec la version stable
La commande « dnf distro-sync » fournira les options nécessaires pour synchroniser tous les paquets installés avec la version stable la plus récente disponible à partir de n’importe quel dépôt activé. Si aucun paquet n’est sélectionné, tous les paquets installés sont synchronisés.
# dnf distro-sync
26. Réinstaller un paquet
La commande « dnf reinstall nano » réinstallera un paquet déjà installé (disons nano).
# dnf reinstall nano
27. Rétrograder un paquet
L’option « downgrade » rétrogradera le paquet nommé (disons acpid) vers une version inférieure si possible.
# dnf downgrade acpid
Exemple de sortie
Using metadata from Wed May 20 12:44:59 2015
No match for available package: acpid-2.0.19-5.el7.x86_64
Error: Nothing to do.
Mon observation : DNF ne dégrade pas le paquet comme il est censé le faire. Il a également été signalé comme un bogue.
Conclusion
DNF est l’état supérieur de la fin de l’art du gestionnaire de paquets YUM. Il a tendance à faire beaucoup de traitement automatiquement, ce qui ne va pas être loué par de nombreux administrateurs système Linux expérimentés, comme je le crois. À titre d’exemple :
--skip-brokenn’est pas reconnu par DNF et il n’y a pas d’alternative.- Il n’y a rien de tel que la commande 'resolvedep', mais vous pouvez exécuter dnf provides.
- Il n’y a pas de commande 'deplist' pour trouver la dépendance du paquet.
- Vous excluez un dépôt, ce qui signifie que l’exclusion s’applique à toutes les opérations, contrairement à yum qui n’exclut ces dépôts qu’au moment de l’installation et des mises à jour, etc.
Plusieurs utilisateurs de Linux ne sont pas satisfaits de la façon dont l’écosystème Linux évolue. Tout d’abord, Systemd a supprimé init system v et maintenant DNF remplacera YUM plus tôt dans Fedora 22 et plus tard dans RHEL et CentOS.
Qu’en penses-tu? sont des distributions et l’ensemble de l’écosystème Linux ne valorise pas ses utilisateurs et agit contre leur volonté. De plus, on dit souvent dans l’industrie informatique - « Pourquoi réparer, si ce n’est pas cassé ? », et ni l’initialisation du système V n’est cassée ni celle du YUM.
C’est tout pour l’instant. S’il vous plaît laissez-moi savoir vos précieuses réflexions dans les commentaires ci-dessous. Aimez-nous et partagez-nous et aidez-nous à nous propager.


























