RPM (Red Hat Package Manager) est un utilitaire de gestion de paquets open source par défaut et largement utilisé pour les systèmes basés sur Red Hat tels que CentOS, Fedora, Rocky et Alma Linux.
L’outil de gestion de paquets rpm permet aux administrateurs système et aux utilisateurs d’installer, de mettre à jour, de désinstaller, de interroger, de vérifier et de gérer les paquets logiciels sur les systèmes d’exploitation Unix/Linux, qui étaient autrefois connus sous le nom de fichier .rpm
, contient des programmes logiciels et des bibliothèques compilés nécessaires par les paquets.
Cet article fournit 20 exemples utiles de commandes RPM qui pourraient vous être utiles. Avec l’aide de ces commandes RPM, vous pouvez gérer l’installation, la mise à jour et la suppression de paquets sur vos systèmes Linux.
Faits sur RPM
Voici quelques faits sur RPM (Red Hat Package Manager):
- RPM est librement disponible et publié sous la Licence Publique Générale (GPL).
- RPM maintient une base de données de tous les paquets installés, stockant ces informations dans le répertoire
/var/lib/rpm
. - RPM sert de méthode principale pour l’installation de paquets sur les systèmes Linux. Si des paquets ont été installés à l’aide du code source, RPM ne les gère pas.
- RPM fonctionne avec des fichiers
.rpm
, contenant des informations essentielles sur le paquet telles que son identité, sa source, ses dépendances, les détails de la version, et plus encore.
Modes de base pour la commande RPM
Voici les modes principaux de la commande RPM :
- Installer – La commande
rpm -i
installe un nouveau package sur le système. - Mise à niveau – La commande
rpm -U
met à niveau un package existant vers une version plus récente. - Supprimer – La commande
rpm -e
désinstalle ou supprime un package du système. - Interroger – La commande
rpm -q
interroge la base de données RPM pour obtenir des informations sur les packages installés. - Vérifier – La commande
rpm -V
vérifie l’intégrité des fichiers de package installés. - Rafraîchir – La commande
rpm -F
met à niveau ou installe un package uniquement s’il est déjà installé. - Reconstruire la base de données – La commande
rpm --rebuilddb
reconstruit la base de données RPM, résolvant les problèmes de corruption de base de données. - Importer la clé GPG – La commande
rpm --import
importe une clé GPG utilisée pour la vérification de la signature du package. - Interroger tous – La commande
rpm -qa
répertorie tous les packages installés sur le système. - Interroger les fichiers – La commande
rpm -ql
répertorie tous les fichiers installés par un package spécifique. - Interroger la documentation – La commande
rpm -qd
répertorie les fichiers de documentation fournis par un package. - Interroger les dépendances – La commande
rpm -qR
répertorie les dépendances d’exécution pour un package. - Requête fournit – La commande
rpm -q --provides
énumère les capacités fournies par un paquet. - Requête nécessite – La commande
rpm -q --requires
énumère les dépendances requises par un paquet.
Où trouver des paquets RPM
Vous pouvez trouver des paquets RPM dans plusieurs endroits, en fonction de votre distribution Linux. Voici les emplacements courants où vous pouvez trouver et télécharger tous les paquets RPM.
N’oubliez pas que vous devez être un root utilisateur lors de l’installation de paquets sous Linux, avec les privilèges root, vous pouvez gérer les commandes rpm avec leurs options appropriées.
1. Comment Vérifier la Signature d’un Paquet RPM
Vérifiez toujours la signature PGP des paquets avant de les installer sur vos systèmes Linux et assurez-vous que leur intégrité et leur origine sont OK.
Utilisez la commande suivante avec l’option --checksig
(vérifier la signature) pour vérifier la signature d’un paquet appelé hardinfo.
rpm --checksig hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm: digests OK
2. Comment Installer un Paquet RPM
Pour installer un paquet logiciel RPM, utilisez la commande suivante avec l’option -ivh
, ce qui installera le paquet rpm appelé hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm sur un système Linux.
rpm -ivh hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm Verifying... ################################# [100%] Preparing... ################################# [100%] Updating / installing... 1:hardinfo-2.0.11-1 ################################# [100%]
Décomposons les composants de la commande ci-dessus:
-i
: installer un paquet-v
: verbose pour un affichage plus agréable-h
: afficher des marques de hachage (#) pour montrer la progression de l’installation.
3. Comment vérifier les dépendances d’un paquet RPM avant l’installation
Supposons que vous souhaitiez vérifier les dépendances avant d’installer ou de mettre à jour un paquet. Par exemple, utilisez la commande suivante pour vérifier les dépendances du paquet hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm.
La commande interroge et affiche les dépendances en cours d’exécution requises par le paquet « hardinfo« , ce qui aide à identifier et à s’assurer que toutes les dépendances nécessaires sont satisfaites avant d’installer le paquet.
rpm -qpR hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm libX11.so.6()(64bit) libatk-1.0.so.0()(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.38)(64bit) libc.so.6(GLIBC_2.7)(64bit) libcairo-gobject.so.2()(64bit) libcairo.so.2()(64bit) ...
Décomposons les composants de la commande ci-dessus:
-q
: Interroger un paquet.-p
: Lister les capacités que ce paquet fournit.-R
: Lister les capacités sur lesquelles ce paquet dépend.
4. Comment installer un paquet RPM sans dépendances
Pour installer un paquet rpm sans dépendances, vous pouvez utiliser l’option --nodeps
, qui forcera l’installation d’un paquet RPM sans vérifier ou résoudre les dépendances.
rpm -ivh --nodeps hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm
La commande ci-dessus installe forcément le paquet rpm en ignorant les erreurs de dépendances, mais si les fichiers de dépendance sont manquants, le programme ne fonctionnera pas du tout jusqu’à ce que vous les installiez.
5. Comment vérifier un paquet RPM installé
Pour vérifier un paquet rpm installé, vous pouvez utiliser l’option -q
, qui interroge et affiche des informations sur la version installée du paquet.
rpm -q hardinfo hardinfo-2.0.11-1.x86_64
6. Comment trouver où les fichiers RPM sont installés
Pour voir tous les fichiers d’un paquet rpm installé, utilisez la -ql
(requête liste) avec la commande rpm.
rpm -ql hardinfo /usr/bin/hardinfo2 /usr/lib/.build-id /usr/lib/.build-id/3a /usr/lib/.build-id/53 /usr/lib/.build-id/7c /usr/lib/.build-id/ba /usr/lib/.build-id/e0 /usr/lib64/hardinfo2 /usr/lib64/hardinfo2/modules /usr/lib64/hardinfo2/modules/benchmark.so /usr/lib64/hardinfo2/modules/computer.so /usr/lib64/hardinfo2/modules/devices.so /usr/lib64/hardinfo2/modules/network.so ...
7. Comment lister les paquets RPM récemment installés
Utilisez la commande rpm suivante avec -qa
(requête tous) option, répertoriera tous les paquets rpm récemment installés.
rpm -qa --last hardinfo-2.0.11-1.x86_64 Mon 04 Mar 2024 01:32:14 PM IST pipewire-pulseaudio-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST pipewire-jack-audio-connection-kit-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST pipewire-alsa-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST libsoup-devel-2.74.3-3.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST json-glib-devel-1.8.0-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST gtk3-devel-3.24.41-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST xdg-desktop-portal-gtk-1.15.1-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST xdg-desktop-portal-1.18.2-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST libcanberra-gtk3-0.30-32.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST gtk3-3.24.41-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST ...
8. Comment lister tous les paquets RPM installés
Tapez la commande suivante pour imprimer tous les noms de paquets installés sur votre système Linux.
rpm -qa fonts-filesystem-2.0.5-12.fc39.noarch libreport-filesystem-2.17.11-3.fc39.noarch hunspell-filesystem-1.7.2-5.fc39.x86_64 abattis-cantarell-vf-fonts-0.301-10.fc39.noarch fedora-gpg-keys-39-1.noarch fedora-repos-39-1.noarch setup-2.14.4-1.fc39.noarch filesystem-3.18-6.fc39.x86_64 basesystem-11-18.fc39.noarch default-fonts-core-sans-4.0-9.fc39.noarch langpacks-fonts-en-4.0-9.fc39.noarch ...
9. Comment mettre à niveau un paquet RPM
Si nous voulons mettre à niveau un paquet RPM, l’option –U
(mise à niveau) sera utilisée. L’un des principaux avantages de l’utilisation de cette option est qu’elle ne mettra pas seulement à niveau la dernière version de tout paquet, mais elle maintiendra également une sauvegarde du paquet plus ancien afin que, en cas de problème avec le paquet mis à niveau, le paquet précédemment installé puisse être utilisé à nouveau.
rpm -Uvh hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm
10. Comment supprimer un paquet RPM
Pour désinstaller un paquet RPM, par exemple, nous utilisons le nom du paquet hardinfo, et non le nom du paquet d’origine hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm. L’option -e (effacer)
est utilisée pour supprimer le paquet.
rpm -evv hardinfo
11. Comment supprimer un paquet RPM sans dépendances
L’option --nodeps
(ne pas vérifier les dépendances) supprime de force le paquet rpm du système. Mais gardez à l’esprit que la suppression d’un paquet particulier peut casser d’autres applications fonctionnant correctement.
rpm -ev --nodeps hardinfo
12. Comment trouver le paquet RPM d’un fichier spécifique
Vous avez une liste de fichiers et vous aimeriez savoir à quel paquet ils appartiennent. Par exemple, la commande suivante avec l’option -qf
(interroger fichier) vous montrera un fichier /usr/bin/htpasswd qui est détenu par le paquet httpd-tools-2.4.58-1.fc39.x86_64.
rpm -qf /usr/bin/htpasswd httpd-tools-2.4.58-1.fc39.x86_64
13. Comment Interroger les Informations d’un Paquet RPM Installé
Supposons que vous avez installé un paquet rpm et que vous voulez connaître les informations sur le paquet. L’option -qi
(interroger info) suivante affichera les informations disponibles sur le paquet installé.
rpm -qi hardinfo Name : hardinfo Version : 2.0.11 Release : 1 Architecture: x86_64 Install Date: Mon 04 Mar 2024 01:32:14 PM IST Group : unknown Size : 5174404 License : GPL2+ Signature : (none) Source RPM : hardinfo-2.0.11-1.src.rpm Build Date : Sat 02 Mar 2024 06:37:42 AM IST Build Host : fedora.bigbear.dk Relocations : /usr Vendor : Humanity URL : https://www.hardinfo2.org Summary : hardinfo2 built using CMake Description : Hardinfo2 is a small application that displays information about your hardware and operating system. It has online benchmarking to check your machine performance against other machines.
14. Obtenir les Informations d’un Paquet RPM Avant l’Installation
Vous avez téléchargé un paquet depuis internet et vous voulez connaître les informations sur un paquet avant de l’installer. Par exemple, l’option suivante -qip
(interroger info paquet) affichera les informations d’un paquet sqlbuddy.
rpm -qip sqlbuddy Name : sqlbuddy Relocations: (not relocatable) Version : 1.3.3 Vendor: (none) Release : 1 Build Date: Wed 02 Nov 2011 11:01:21 PM BDT Install Date: (not installed) Build Host: rpm.bar.baz Group : Applications/Internet Source RPM: sqlbuddy-1.3.3-1.src.rpm Size : 1155804 License: MIT Signature : (none) Packager : Erik M Jacobs URL : http://www.sqlbuddy.com/ Summary : SQL Buddy â Web based MySQL administration Description : SQLBuddy is a PHP script that allows for web-based MySQL administration.
15. Comment Interroger la Documentation d’un Paquet RPM Installé
Pour obtenir la liste de la documentation disponible d’un paquet installé, utilisez la commande suivante avec l’option -qdf
(interroger fichier document) qui affichera les pages de manuel liées au paquet vmstat.
rpm -qdf /usr/bin/vmstat /usr/share/doc/procps-ng/AUTHORS /usr/share/doc/procps-ng/FAQ /usr/share/doc/procps-ng/NEWS /usr/share/doc/procps-ng/README.md /usr/share/doc/procps-ng/bugs.md /usr/share/man/man1/free.1.gz /usr/share/man/man1/pgrep.1.gz ...
16. Comment Vérifier un Paquet RPM
Vérifier un package compare les informations des fichiers installés du package avec la base de données rpm. Le -Vp
(vérifier le package) est utilisé pour vérifier un package.
rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm S.5....T. c /etc/httpd/conf.d/sqlbuddy.conf
17. Comment Vérifier tous les Packages RPM
Saisissez la commande suivante pour vérifier tous les packages rpm installés.
rpm -Va S.5....T. c /etc/rc.d/rc.local .......T. c /etc/dnsmasq.conf .......T. /etc/ld.so.conf.d/kernel-2.6.32-279.5.2.el6.i686.conf S.5....T. c /etc/yum.conf S.5....T. c /etc/yum.repos.d/epel.repo
18. Comment Importer une Clé GPG RPM
Pour vérifier les packages RHEL/CentOS/Fedora, vous devez importer la clé GPG. Pour ce faire, exécutez la commande suivante. Elle importera la clé GPG de CentOS 8.
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-8
19. Comment Lister toutes les Clés GPG RPM Importées
Pour afficher toutes les clés GPG importées dans votre système, utilisez la commande suivante.
rpm -qa gpg-pubkey* gpg-pubkey-0608b895-4bd22942 gpg-pubkey-7fac5991-4615767f gpg-pubkey-0f2672c8-4cd950ee gpg-pubkey-c105b9de-4e0fd3a3 gpg-pubkey-00f97f56-467e318a gpg-pubkey-6b8d79e6-3f49313d gpg-pubkey-849c449f-4cb9df30
20. Comment Reconstruire une Base de Données RPM Corrompue
Parfois, la base de données rpm se corrompt et arrête toute la fonctionnalité de rpm et d’autres applications sur le système. À ce moment-là, nous devons reconstruire la base de données rpm et la restaurer à l’aide de la commande suivante.
cd /var/lib rm __db* rpm --rebuilddb rpmdb_verify Packages
En conclusion, les commandes rpm présentées fournissent un guide complet pour gérer efficacement les packages logiciels sur les distributions Linux basées sur RHEL.
Source:
https://www.tecmint.com/20-practical-examples-of-rpm-commands-in-linux/