rpm {-q|--query} [options-sélection] [options-interrogation]
rpm {-V|--verify} [options-sélection] [--nodeps] [--nofiles] [--nomd5] [--noscripts]
rpm {-K|--checksig} [--nogpg] [--nopgp] [--nomd5] FICHIER_PAQUETAGE ...
rpm {-i|--install} [options-installation] FICHIER_PAQUETAGE ...
rpm {-U|--upgrade} [options-installation] FICHIER_PAQUETAGE ...
rpm {-F|--freshen} [options-installation] FICHIER_PAQUETAGE ...
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] NOM_PAQUETAGE ...
rpm {-ba|-bb|-bp|-bc|-bi|-bl|-bs} [options-construction] FICHIER_SPECS ...
rpm {-ta|-tb|-tp|-tc|-ti|-tl|-ts} [options-construction] TARBALL ...
rpm {--rebuild|--recompile} PAQUETAGE_SOURCE ...
rpm {--initdb|--rebuilddb}
rpm {--addsign|--resign} FICHIER_PAQUETAGE ...
rpm {--querytags|--showrc}
rpm {--setperms|--setugids} NOM_PAQUETAGE ...
[NOM_PAQUETAGE] [-a,--all] [-f,--file FICHIER] [-g,--group GROUPE] [-p,--package FICHIER_PAQUETAGE] [--querybynumber NOMBRE] [--triggeredby NOM_PAQUETAGE] [--whatprovides CAPACITÉ] [--whatrequires CAPACITÉ]
[--changelog] [-c,--configfiles] [-d,--docfiles] [--dump] [--filesbypkg] [-i,--info] [--last] [-l,--list] [--provides] [--qf,--queryformat FORMAT_REQUÊTE] [-R,--requires] [--scripts] [-s,--state] [--triggers,--triggerscripts]
[--allfiles] [--badreloc] [--excludepath ANCIEN_CHEMIN] [--excludedocs] [--force] [-h,--hash] [--ignoresize] [--ignorearch] [--ignoreos] [--includedocs] [--justdb] [--nodeps] [--noorder] [--noscripts] [--notriggers] [--oldpackage] [--percent] [--prefix NOUVEAU_CHEMIN] [--relocate ANCIEN_CHEMIN=NOUVEAU_CHEMIN] [--replacefiles] [--replacepkgs] [--test]
[--buildroot RÉPERTOIRE] [--clean] [--nobuild] [--rmsource] [--rmspec] [--short-circuit] [--sign] [--target PLATE-FORME]
rpm est un puissant gestionnaire de paquetages, qui peut être utilisé pour construire, installer, interroger, vérifier, mettre à jour, et désinstaller des paquetages de logiciels individuels. Un paquetage est constitué d'une archive de fichiers, et de méta-données utilisées pour installer et supprimer les fichiers de l'archive. Les méta-données incluent les scripts assistants, les attributs des fichiers, et des informations décrivant le paquetage. Il y a deux types de paquetages : les paquetages binaires, utilisés pour encapsuler des logiciels à installer, et les paquetages de sources, qui contiennent le code et la recette permettant de produire des paquetages binaires.
Un des modes de base suivants doit être sélectionné : Interroger, Vérifier, Vérifier Signature, Installer/Mettre à niveau/Rafraîchir, Désinstaller, Construire Paquetage, Construire Paquetage à partir d'un Tarball (NdT : sources au format .tar.xx), Recompiler Paquetage, Initialiser Base de Données, Reconstruire Base de Données, Resigner, Ajouter Signature, Fixer Propriétaires/Groupes, Montrer les Options d'Interrogation, et Montrer Configuration.
Ces options peuvent être utilisées dans tous les modes.
La forme générale d'une commande d'installation rpm est
rpm {-i|--install} [options-installation] FICHIER_PAQUETAGE ...
Cela installe un nouveau paquetage.
La forme générale d'une commande de mise à niveau rpm est
rpm {-U|--upgrade} [options-installation] FICHIER_PAQUETAGE ...
Cela met à niveau ou installe le paquetage actuellement installé vers une version plus récente. C'est similaire à l'installation, sauf que toutes les anciennes versions du paquetage sont désinstallées après que le nouveau paquetage ait été installé.
rpm {-F|--freshen} [options-installation] FICHIER_PAQUETAGE ...
Cela mettra à niveau les paquetages, mais seulement si une version plus ancienne existe à cet instant. Le FICHIER_PAQUETAGE peut être spécifié en tant qu'URL ftp ou http, auquel cas le paquetage sera téléchargé avant d'être installé. Voyez OPTIONS FTP/HTTP pour des informations sur le support interne d'un client ftp et http par rpm.
--nopre --nopost --nopreun --nopostun
et désactive l'exécution des scriptlets correspondants %pre, %post, %preun, et %postun.
--notriggerin --notriggerun --notriggerpostun
et désactive l'exécution des scriptlets correspondants %triggerin, %triggerun, et %triggerpostun.
La forme générale d'une commande d'interrogation rpm est
rpm {-q|--query} [options-sélection] [options-interrogation]
Vous pouvez spécifier le format dans lequel les informations sur le paquetage doivent être affichées. Pour ce faire, utilisez l'option {--qf|--queryformat}, suivie par la chaîne de format FORMAT_REQUÊTE. Les chaînes de format sont des versions modifiées de celles du printf(3) standard. Le format est constitué de chaînes de caractères statiques (qui peuvent inclure les séquences d'échappement de caractère C standard pour les sauts de lignes, tabulations et autres caractères spéciaux) et de formateurs de type printf(3). Comme rpm connaît déjà le type à afficher, le spécificateur de type doit néanmoins être omis, et être remplacé par le nom de l'étiquette d'en-tête à afficher, enfermé dans des caractères {}. Les noms d'étiquettes sont insensibles à la casse, et la partie RPMTAG_ du nom de l'étiquette peut également être omise.
Des formats de sortie alternatifs peuvent être requis en faisant suivre l'étiquette par :typetag. Actuellement, les types suivants sont supportés : octal, date, shescape, perms, fflags, and depflags. Par exemple, pour n'afficher que le nom des paquetages interrogés, vous pourriez utiliser %{NAME} comme chaîne de format. Pour afficher les noms de paquetages et les informations de distribution en deux colonnes, vous pourriez utiliser %-30{NAME}%{DISTRIBUTION}. rpm affichera une liste de tous les étiquettes qu'il connaît quand il est invoqué avec l'argument --querytags.
Il y a deux sous-ensembles d'options d'interrogation : la sélection de paquetage, et la sélection d'informations.
chemin taille date_modif somme_md5 mode propriétaire groupe isconfig isdoc rdev symlink
Cette option doit être utilisée avec au moins une option parmi -l, -c, -d.
La forme générale d'une commande de vérification rpm est
rpm {-V|--verify} [options-sélection] [--nodeps] [--nofiles] [--nomd5] [--noscripts]
La vérification d'un paquetage compare les informations sur les fichiers installés dans le paquetage avec les informations sur les fichiers obtenues à partir des méta-données du paquetage original conservées dans la base de données rpm. Entre autres choses, la vérification compare la taille, la somme MD5, les permissions, le propriétaire et le groupe de chaque fichier. Toutes les discordances sont affichées. Les fichiers qui n'avaient pas été installés à partir du paquetage (p.ex. les fichiers de documentation exclus lors de l'installation en utilisant l'option « --excludedocs », seront ignorés silencieusement.
Les options de sélection de paquetage sont les mêmes que celles relatives à l'interrogation de paquetages (ce qui inclut les fichiers de manifeste de paquetage comme arguments). Les autres options ne pouvant être utilisées qu'en mode vérification sont :
Le format de sortie est une chaîne de 9 caractères, un « c » éventuel dénotant un fichier de configuration, et ensuite le nom du fichier. Chacun des 9 caractères indique le résultat d'une comparaison d'attribut(s) du fichier avec la valeur du (des) attribut(s) enregistré(s) dans la base de données. Un « . » (point) seul signifie que le test s'est bien passé, alors qu'un « ? » seul indique que le test n'a pas pu être effectué (p.ex. quand les permissions d'accès aux fichier empêchent la lecture). Sinon, le caractère mnémonique affiché en Gras dénote l'échec du test --verify correspondant :
S la taille (Size) du fichier diffère
M le Mode diffère (inclut les permissions et le type du fichier)
5 la somme MD5 diffère
D Le numéro de périphérique (Device) majeur/mineur diffère
L Le chemin renvoyé par readLink(2) diffère
U L'Utilisateur propriétaire diffère
G Le Groupe propriétaire diffère
T La date de dernière modification (mTime) diffère
La forme générale d'une commande de vérification de signature rpm est
rpm --checksig [--nogpg] [--nopgp] [--nomd5] FICHIER_PAQUETAGE ...
Ceci vérifie la signature PGP du paquetage <fichier_paquetage> pour s'assurer de son intégrité et de son origine. Les informations de configuration PGP sont lues à partir des fichiers de configuration. Voyez la section sur les SIGNATURES PGP pour les détails.
La forme générale d'une commande de désinstalltion rpm est
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] NOM_PAQUETAGE ...
Les options suivantes peuvent également être utilisées :
--nopreun --nopostun
et désactive l'exécution du ou des scriptlets %preun et %postun correspondants.
--notriggerun --notriggerpostun
et désactive l'exécution du ou des scriptlets %triggerun et %triggerpostun correspondants.
rpm {-bÉTAPE|-tÉTAPE} [options-construction] FICHIER ...
L'argument utilisé est -b si un fichier spec est utilisé pour construire le paquetage et -t si rpm devrait examiner le contenu d'un fichier tar (éventuellement compressé) pour obtenir le fichier de spécifications à utiliser. Après le premier argument, le caractère suivant (ÉTAPE) spécifie les étapes de construction et d'empaquetage à effectuer, et peut être :
Les options suivantes peuvent également être utilisées :
Il y a deux autres façons d'invoquer une construction avec rpm :
rpm {--rebuild|--recompile} PAQUETAGE_SOURCE ...
Quand il est invoqué de cette façon, rpm installe le paquetage de sources désigné, et effectue une préparation, une compilation et une installation. --rebuild construit en outre un nouveau paquetage binaire. Quand la construction est terminée, le répertoire de construction est supprimé (comme avec --clean) et les sources ainsi que le fichier de spécifications du paquetage sont supprimés.
rpm {--addsign|--resign} FICHIER_PAQUETAGE ...
L'option --addsign génère et insère de nouvelles signatures pour chaque paquetage. Toute signature existante sera supprimée.
L'option --resign génère et ajoute les nouvelles signatures pour les paquetages spécifiés tous en conservant celles existant déjà.
Pour utiliser la fonctionnalité de signature, rpm doit être configuré pour exécuter GPG, et doit être capable de trouver un porte-clés public (keyring) comportant les clés publiques de Red Hat (ou d'un autre vendeur). Par défaut, rpm utilise les mêmes conventions que GPG pour trouver les porte-clés, à savoir la variable d'environnement $GPGPATH). Si vos porte-clés ne sont pas situés là où GPG les attend, vous devrez fixer la valeur de la macro %_gpg_path à l'endroit où se situent les porte-clés GPG à utiliser.
Si vous voulez pouvoir signer les paquetages que vous avez créés vous-même, vous devrez également créer votre propre paire clé publique/clé secrète (voir le manuel GPG). Vous devrez également configurer les macros suivantes :
Lors de la construction de paquetages, vous ajouterez ensuite --sign sur la ligne de commandes. On vous demandera votre phrase de passe, et votre paquetage sera construit et signé. Par exemple, pour pouvoir utiliser GPG pour signer les paquetages en tant qu'utilisateur « John Doe <jdoe@foo.com> » à partir des porte-clés situés dans /etc/rpm/.gpg en utilisant l'exécutable /usr/bin/gpg, vous devriez inclure
%_gpg_path /etc/rpm/.gpg %_gpg_name John Doe <jdoe@foo.com> %_gpgbin /usr/bin/gpg
dans un fichier de configuration de macros. Utilisez /etc/rpm/macros pour une configuration par système et ~/.rpmmacros pour une configuration par utilisateur.
La forme générale d'une commande de reconstruction d'une base de données rpm est
rpm {--initdb|--rebuilddb} [-v] [--dbpath RÉPERTOIRE] [--root RÉPERTOIRE]
Utilisez --initdb pour reconstruire une nouvelle base de données ; utilisez --rebuilddb pour reconstruire les index de la base de données à partir des en-têtes des paquetages installés.
La commande
rpm --showrc
affiche les valeurs que rpm va utiliser pour toutes les options qui sont actuellement définies dans le(s) fichier(s) de configuration rpmrc et macros.
rpm peut agir comme un client FTP et/ou HTTP afin que les paquetages puissent être interrogés et installés à partir d'Internet. Les fichiers de paquetage pour les opérations d'installation, de mise à niveau et d'interrogation peuvent être spécifiés dans une URL de style ftp ou http :
ftp://UTILISATEUR:MOT-PASSE@HÔTE:PORT/chemin/vers/paquetage.rpm
Si la partie :MOT-PASSE est omise, le mot de passe sera demandé (une seule fois par paire utilisateur/nom_hôte). Si tant l'utilisateur que le mot de passe est omis, le ftp anonyme est utilisé. Dans tous les cas, des transferts ftp passifs (PASV) sont effectués.
rpm permet d'utiliser les options suivantes avec les URLs ftp :
rpm permet d'utiliser les options suivantes avec les URL http :
/usr/lib/rpm/rpmrc
/etc/rpmrc
~/.rpmrc
/usr/lib/rpm/macros
/etc/rpm/macros
~/.rpmmacros
/var/lib/rpm/Conflictname
/var/lib/rpm/Basenames
/var/lib/rpm/Group
/var/lib/rpm/Name
/var/lib/rpm/Packages
/var/lib/rpm/Providename
/var/lib/rpm/Requirename
/var/lib/rpm/Triggername
popt(3),
rpm2cpio(8),
rpmbuild(8),
Marc Ewing <marc@redhat.com>
Jeff Johnson <jbj@redhat.com>
Erik Troan <ewt@redhat.com>