====== La gestion de paquets via RPM ====== **Logo** de **RPM** : {{ :wiki:os:gnu_linux:tutos:admin:rpm_logo.png?nolink&200 |}} ===== Présentation de RPM ===== **RPM** (**//RPM Package Manager//**) est le gestionnaire de paquets de ''bas niveau'' de nombreuses distributions Linux tel que **Fedora Linux**, **Red Hat Enterprise Linux**, **AlmaLinux**, **Mageia**, **openSUSE** et j'en passe, qui a été créé à l'origine pour **Red Hat Linux** par la société **Red Hat** en 1995, RPM n'est donc pas prévu pour gérer les dépendances logiciels, les paquets RPM (au format de fichier ''.rpm'') sont les briques de bases des distributions citées. RPM est un gestionnaire de paquets très complet qui comporte une base de données et un journal de toutes les opérations effectuées via RPM ou des gestionnaires de paquets de ''haut niveau'' tel que **DNF** qui lui gère les dépendances. ===== Interrogation des paquets RPM ===== Pour avoir la ''version'' d'un logiciel RPM installé : rpm -q nom_du_paquetpour un paquet non installé : rpm -qp nom_du_paquet Pour avoir une ''description'' d'un paquet installé : rpm -qi nom_du_paquetpour un paquet non installé : rpm -qpi nom_du_paquet Pour savoir se que ''requiert'' un paquet : rpm -qR nom_du_paquetpour un paquet non installé : rpm -qpR nom_du_paquet Pour avoir la ''liste'' des fichiers installés par le paquet : rpm -ql nom_du_paquetpour un paquet non installé : rpm -qpl nom_du_paquet Pour connaitre les fichiers de ''documentation'' du paquet : rpm -qd nom_du_paquetpour un paquet non installé : rpm -qpd nom_du_paquet Liste des fichiers de ''configuration'' du paquet : rpm -qc nom_du_paquetpour un paquet non installé : rpm -qpc nom_du_paquet Biensur on peut combiner les ''options'' de commande RPM : rpm -qilp nom_du_paquetl'option de commande ''-q'' interroge le paquet, ''-i'' décrit le paquet, ''-l'' liste les fichiers du paquet et ''-p'' interroge un paquet non installé. ===== Installation, suppression de paquets RPM ===== Ces commandes sont à exécuter en mode //administrateur//, dans mes exemples avec la commande nommé **sudo** qui permet de s'affranchir du compte **root**. La commande de base pour ''installer'' un paquet RPM : sudo rpm -i nom_du_paquet''-i'' veut dire ''install''. Mais pour ''installer'' un paquet on utilise plutôt la commande : sudo rpm -ivh nom_du_paquetl'option ''-i'' pour ''installe'', ''-v'' pour ''verbose'' (qui décrit le processus d'installation), ''-h'' pour avoir une ''barre de progression''. Pour mettre à jour un paquet RPM : sudo rpm -Uvh nom_du_paquet''-U'' signifie ''upgrade'' donc mettre à jour. Pour ''supprimer'' un paquet : sudo rpm -e nom_du_paquet''-e'' signifie ''erase''. Vous pouvez également ''forcer'' la désinstallation d'un paquet : sudo rpm -e --force nom_du_paquetqui est utile par exemple si une dépendance logicielle empêche la ''désinstallation'', il y a aussi l'option nommé ''--nodeps'' qui permet d'éviter d'éventuelle problème lié aux dépendances (''--nodeps'' ne vérifie pas les dépendances liées à un paquet).