Glossary

rpm

rpm (RPM Package Manager, originally Red Hat Package Manager) is the low-level package format and tool used by Red Hat, Fedora, CentOS, SUSE, and many other distributions. Like dpkg, it handles individual .rpm files and does not resolve dependencies; that is the job of higher-level tools like dnf or zypper.

sudo rpm -ivh package.rpm        # install
sudo rpm -Uvh package.rpm         # upgrade
sudo rpm -e package               # erase (remove)
rpm -qa                           # query all installed
rpm -qi nginx                     # info about installed package
rpm -ql nginx                     # list files
rpm -qf /etc/nginx/nginx.conf    # which package owns file
rpm -V nginx                      # verify integrity

The RPM database lives in /var/lib/rpm/ and is queried whenever you install or remove a package. RPM packages include rich metadata (changelog, license, dependencies, triggers), pre- and post-install scripts, and cryptographic signatures verified against keys imported with rpm --import.

While its dependency handling is less sophisticated than dpkg/apt's by reputation, modern dnf and its libraries (libsolv) have closed the gap. RPM's long tenure in enterprise Linux (since 1997) makes it deeply integrated into the Red Hat world; tools like rpm-build, mock, and Copr support creating custom packages.

Related terms: dnf, yum, Red Hat Enterprise Linux, Fedora, Package Manager

Discussed in:

Also defined in: Textbook of Linux

Textbook of Linux — Learn Linux on iPhone — Download on the App Store