Actualment RPM vol dir RPM Package Manager (acrònim recursiu com GNU). Originalment anomenat Red Hat Package Manager.
RPM és una eina d'administració de paquets GNU/Linux capaç d'instal·lar, actualitzar, desinstal·lar, verificar i sol·licitar programes.
RPM és el format de paquet de Linux Standard Base (LSB).
Originalment va ser desenvolupat per a Red Hat i en l'actualitat moltes distribucions GNU/Linux l'utilitzen: Fedora Linux, Mandriva Linux, SuSE Linux.
Els noms de paquet RPM tenen la següents forma:
La sintaxi és:
<name>-<version>-<release>.<architecture>.rpm
Per exemple:
nano-0.98-2.i386.rpm
L'ordre rpm es proporcionada pel paquet del mateix nom:
$ whereis rpm rpm: /bin/rpm /etc/rpm /usr/lib/rpm ... $ rpm -qf /bin/rpm rpm-4.7.0-1.fc11.i586
Per instal·lar un paquet:
$ sudo rpm -ivh paquet.rpm
On:
$ sudo rpm -ivh --force paquet.rpm
$ sudo rpm -e nom_paquet
S'actualitza a partir del fitxer rpm:
$ sudo rpm -U paquet.rpm
$ rpm -qa gnome-python2-2.26.1-1.fc11.i586 libdv-1.0.0-7.fc11.i586 ConsoleKit-0.3.0-8.fc11.i586 dejavu-fonts-common-2.29-2.fc11.noarch python-slip-dbus-0.1.15-3.fc11.noarch ...
Si el paquet NO està instal·lat:
$ rpm -qlp nom_paquet
Si el paquet està instal·lat:
$ rpm -ql nom_paquet
Per exemple:
$ sudo rpm -ql upstart /etc/event.d /etc/event.d/logd /sbin/halt /sbin/init /sbin/initctl /sbin/logd /sbin/poweroff /sbin/reboot /sbin/runlevel /sbin/shutdown /sbin/start /sbin/status /sbin/stop /sbin/telinit /usr/share/doc/upstart-0.3.9 /usr/share/doc/upstart-0.3.9/AUTHORS /usr/share/doc/upstart-0.3.9/COPYING /usr/share/doc/upstart-0.3.9/HACKING /usr/share/doc/upstart-0.3.9/NEWS /usr/share/doc/upstart-0.3.9/README /usr/share/doc/upstart-0.3.9/TODO /usr/share/locale/ca/LC_MESSAGES/upstart.mo /usr/share/locale/[email protected]/LC_MESSAGES/upstart.mo /usr/share/locale/[email protected]/LC_MESSAGES/upstart.mo /usr/share/locale/fr/LC_MESSAGES/upstart.mo /usr/share/locale/sv/LC_MESSAGES/upstart.mo /usr/share/man/man5/events.5.gz /usr/share/man/man8/halt.8.gz /usr/share/man/man8/init.8.gz /usr/share/man/man8/initctl.8.gz /usr/share/man/man8/logd.8.gz /usr/share/man/man8/poweroff.8.gz /usr/share/man/man8/reboot.8.gz /usr/share/man/man8/runlevel.8.gz /usr/share/man/man8/shutdown.8.gz /usr/share/man/man8/start.8.gz /usr/share/man/man8/status.8.gz /usr/share/man/man8/stop.8.gz /usr/share/man/man8/telinit.8.gz
Per a sistemes Debian vegeu:
$ rpm -qpl {file.rpm}
$ rpm -q --whatrequires upstart vpnc-0.5.3-3.fc11.i586 initscripts-8.95-1.i586 readahead-1.4.9-1.fc11.i586
Es pot comprovar la integritat de tot el sistema amb:
$ sudo rpm -Va
També es pot comprovar només la integritat d'un paquet amb:
$ sudo rpm -V nmap
Per a sistemes Debian, vegeu el paquet debsums.
$ rpm -qi nmap Name : nmap Relocations: (not relocatable) Version : 5.00 Vendor: Fedora Project Release : 1.fc11 Build Date: dl 20 jul 2009 08:36:56 CEST Install Date: ds 05 set 2009 14:26:04 CEST Build Host: x86-6.fedora.phx.redhat.com Group : Applications/System Source RPM: nmap-5.00-1.fc11.src.rpm Size : 5838679 License: GPLv2 Signature : RSA/8, dl 20 jul 2009 13:54:10 CEST, Key ID 1dc5c758d22e77f2 Packager : Fedora Project URL : http://nmap.org/ Summary : Network exploration tool and security scanner Description : Nmap is a utility for network exploration or security auditing. It supports ping scanning (determine which hosts are up), many port scanning techniques (determine what services the hosts are offering), and TCP/IP fingerprinting (remote host operating system identification). Nmap also offers flexible target and port specification, decoy scanning, determination of TCP sequence predictability characteristics, reverse-identd scanning, and more.
$ rpm -qpi {file.rpm}
$ rpm -q -changelog nom_paquet
Per exemple:
$ rpm -q -changelog upstart | more * dl abr 27 2009 Bill Nottingham <[email protected]> - 0.3.9-24 - Apply the audit patch correctly (#470661) * dv abr 03 2009 Casey Dahlin <[email protected]> - 0.3.9-23 - Add audit events patch from Steve Grubb <[email protected]> (Bug #470661) * dv gen 23 2009 Casey Dahlin <[email protected]> - 0.3.9-22 - Re-add 'telinit u' support along with patch to fix it (#450488). Patch due to <[email protected]>
$ su -c "rpm --import ftp://ftp.links2linux.de/pub/packman/public-keys.asc"
Permet cercar quin paquet ens ha proporcionat un fitxer
> whereis fdisk fdisk: /sbin/fdisk /usr/share/man/man8/fdisk.8.gz > rpm -qf /sbin/fdisk util-linux-2.14.1-10.2.1
És l'equivalent a:
$ dpkg -S
en sistemes Debian
La trobareu en local a /var/lib/rpm. És una base de dades en format Berkeley DB que conté tota la metainformació del paquets rpm. Aquesta base de dades enregistra totes les operacions realitzades amb l'ordre rpm.
Si la base de dades esdevé corrupte (per un error en alguna aplicació) la base de dades es pot tornar a crear amb:
$ sudo rpm --rebuilddb
Vegeu la taula comparativa entre RPM i dpkg a:
Taula comparativa comandes RPM i dpkg
Segons el manual:
$ man rpm2cpio ... rpm2cpio converts the .rpm file specified as a single argument to a cpio archive on standard out. If a ’-’ argument is given, an rpm stream is read from standard in.
és una eina que serveix per convertir un fitxer rpm a format cpio:
$ yumdownloader nmap $ rpm2cpio nmap-5.00-1.fc11.i586.rpm > nmap.cpio
o
rpm2cpio - < nmap-5.00-1.fc11.i586.rpm > nmap.cpio