URPMI
URPMI et les commandes urpm*
La commande initiale RPM de Red Hat - souffrait de nombreuses limitations que Mandrake puis Mandriva a dépassées, en créant les outils urpm* (User RPM) à partir de Mandrake 7.0 (2000).
urpm est utilisée aujourd'hui par Mandriva et ses dérivées, comme Mageia. Red Hat utilise quant à lui désormais le gestionnaire de paquets YUM (depuis Fedora Core 1, en 2003) issu de la distribution Yellow Dog.
Les avantages d'urpm sur la commande rpm :
- résolution automatique et installation/désistallation automatique des paquets dépendants (rpm indique seulement le nom de paquets manquants) ;
- urpm connaît l'ensemble des paquets installables depuis différentes sources (les CD, serveurs ftp de mise à jour, Penguin Liberation Front ...) ;
- urpm permet d'installer des paquets depuis internet lorsque ceux-ci sont plus récents que sur les CD (depuis Mandrake 8.0) ;
- urpm permet d'installer des paquets en donnant seulement un nom incomplet (exemple : urpmi amarok pour chercher et installer Amarok, urpmi mplayer, etc.) ;
- etc.
Sur chacune des commandes dont on va parler ci-dessous, je vous conseille de lire la page de man (man urpmi, man urpmf, etc.) afin d'en apprendre plus.
Toutes les actions décrites ici peuvent également être réalisées de manière graphique, avec le gestionnaire graphique de programmes Rpmdrake (lançable via les menus ou par la commande rpmdrake) qui est une interface graphique aux programmes urpm*. Je vous conseille de tester les deux manières de faire, car contrairement aux apparences, la ligne de commande peut être plus simple et/ou rapide.
Configurer urpm
Ajouter / mettre à jour une source de paquets
Après avoir installé votre distribution, le média d'installation (CD par exmeple) ont été créés dans la base de données de urpm en tant que source de paquets.
Cependant, vous pouvez ajouter autant de sources que vous le désirez. Supposons par exemple que vous ayez un répertoire "incoming/rpms" dans lequel vous placez tous les rpm que vous récupérez sur internet. Vous pouvez l'ajouter à votre base de données urpm par la commande :
Où mes_rpm est le nom (arbitraire) que vous donnez à votre source de paquets.
Par la suite, vous pourrez mettre à jour cette source par :
De même, pour ajouter une source ftp de paquets, on donne l'URL du fichier hdlist.cz sur le serveur. Exemple pour le Penguin Liberation Front et une Mandrake 9.0 :
Et de la même façon, pour mettre à jour la source de temps en temps :
L'option -a permet de mettre à jour toutes les sources en même temps :
Ajouter des sources distantes
Si vous possédez une connexion à haut débit (ce n'est pas obligatoire, mais conseillé pour utiliser cette option), vous pouvez utiliser des sources main contrib et update situées sur internet.
L'outil en ligne à cette adresse vous permet de configurer vos sources urpmi facilement selon votre distribution et votre localisation géographique. Si vous avez une connexion à haut débit, je vous conseille même de commencer par un urpmi.removemedia -a pour ne plus utiliser les cdroms comme sources, et ne plus vous fatiguer à les chercher dans la pile de cd.
Note : le fichier de configuration de urpm est /etc/urpmi/urpmi.cfg et les bases de données dans /var/lib/urpmi.
Supprimer une source de paquets
Pour supprimer la source mes_rpm, taper :
Installer avec urpmi
Installer depuis les sources urpm
Pour installer un logiciel avec urpm, rien de plus simple. Vous tapez simplement la commande urpmi suivie d'une partie du nom du logiciel. Exemple :
urpmi va alors chercher la version la plus récente du paquet correspondant, regarder s'il doit installer des paquets dépendants (et vous en demander confirmation), et installer l'ensemble des paquets.
Dans le cas ou l'argument donné à urpmi est ambigu, urpmi renvoie le nom des paquets correspondants ; il ne vous reste plus qu'à choisir dans la liste et relancer urpmi avec le bon nom de paquets.
Si vous voulez installer le paquet qui fournit une librairie (par exemple), utilisez le modifieur -p :
urpmi va alors rechercher quel paquet fournit libe2p.so.2 et l'installer (ici libext2fs2).
Installer directement un ou plusieurs fichiers rpm
Dans ce cas, il suffit de passer le nom du fichier en argument à urpmi :
et le paquet sera mis à jour de la même manière que rpm -U l'aurait fait.
urpmi peut installer plusieurs paquets d'un coup : par exemple, pour installer la dernière version de KDE que j'ai téléchargée, je me mets dans le répertoire où j'ai mis les rpm, et je tape :
Pour installer (et non mettre à jour un paquet, par exemple pour ajouter un nouveau noyau en parallèle de l'ancien, ou bien une nouvelle librairie qui doit coexister avec l'ancienne), il faut utiliser l'option -i :
.
urpmi peut également utiliser une url pour installer un paquet. Par exemple, urpmi http://example.com/example.rpm va installer le paquet après l'avoir téléchargé. urpmi supporte http, ftp, rsync et ssh pour le moment.
Désinstaller avec urpme
Désinstaller un paquet
Pour désinstaller un paquet, il faut utiliser urpme :
désinstallera mplayer. S'il y a des paquets qui en dépendent, urpme demandera s'il doit les désinstaller également. À utiliser avec précaution ;-)
Désinstaller toutes les bibliothèques inutilisées
La commande urpmi_rpm-find-leaves -g liste les bibliothèques que l'on peut desinstaller sans crainte.
Associé à urpme, cela permet de nettoyer le système de toutes ses bibliothèques inutilisées:
Dans certains cas, il est nécessaire d'effectuer la commande plusieurs fois.
Rechercher avec urpmf (et urpmq)
L'outil de choix pour faire de recherches dans les paquets rpm est urpmf. Cela permet de rechercher non seulement dans les paquets installés comme avec rpm -q, mais aussi des paquets installables !
renverra la liste de tous les paquets qui contiennent le fichier toto.
urpmf dispose de nombreuses options pour faire des requêtes sur les différentes informations de la base de données des paquets.
Quelques exemples :
Liste des paquets du groupe "Games" :
Taille du paquet "pingus" :
urpmf --size pingus
pingus:size:1102629
Recherche du mot "pingus" dans les résumés de paquets :
urpmf --summary pingus
pingus:summary:Pingus - A free Lemmings clone
Voir man urpmf pour de plus amples informations.
La commande urpmq vous permet d'autres types de requêtes :
Liste des paquets dont le nom contient la chaîne "toto" :
Sur quelle source se trouve le paquet toto :
Quels paquets dépendent du paquet toto :
Nom complet du fichier rpm du paquet toto :
Résumé d'une ligne d'un paquet ( summary + nom + cersion ) :
Voir aussi man urpmq.
Mettre à jour le système
urpm vous permet de mettre à jour votre système avec les derniers correctifs de sécurité et les corrections de bugs que les distributions publient régulièrement.
Pour ce faire, il faut avoir paramétré un miroir ftp de mises à jour de sécurité dans urpm (voir configuration), ou avec le Gestionnaire de Programmes (qui est bien pratique pour cette opération).
Si la source de mise à jour s'appelle maj_secu, il faut lancer la commandes suivante pour la mettre à jour :
puis :
urpm va alors lister les paquets mis à jour et vous demander si vous souhaitez les installer (pour qu'il installe tout sans demander, pratique pour mettre la commande dans un cron, ajouter l'option --auto).
Si vous souhaitez que urpm ne mette pas à jour automatiquement certains paquets, il suffit d'ajouter leur nom dans le fichier /etc/urpmi/skip.list . Par exemple, pour empêcher urpm de mettre à jour automatiquement le kernel et la glibc, ajouter dans ce fichier :
glibc
Conclusion sur urpm
Les détails des commandes urpm sont encore trop peu connus ; la maintenance de votre Mandriva ou Mageia sera bien plus aisée avec leur utilisation.
@ Retour à la rubrique Logiciels
À propos de cette documentation
Cette documentation a été écrite par Jean-Christophe 'Jice' Cardot; révision par Jean-Marc Lichtle, puis Jice et [Utilisateur:Ennael|Anne]], puis Jean-Thomas Muyl (maston28); petits ajouts et mises à jour par Misc et Jiel.
Son titre original était RPM, URPMI et apt-get. Elle a été scindée en trois partie en 2018, RPM, URPMI, Installation de apt-get sur Red Hat Linux 7.3.
Copyright
© 25/02/2000, 2001, 2002, 2004, 2005, 2006, 2011 Jean-Christophe Cardot, Jean-Marc Lichtle, Anne Nicolas, Jean-Thomas Muyl (maston28)
Ce document est publié sous licence Creative Commons Attribution, Partage à l'identique 4.0 : https://creativecommons.org/licenses/by-sa/4.0/ |