Chapter 10. Package Management with RPM

Chapter 10. Package Management with RPM

10.1. RPM Design Goals
10.2. Using RPM
10.2.1. Finding RPM Packages
10.2.2. Installing
10.2.3. Uninstalling
10.2.4. Upgrading
10.2.5. Freshening
10.2.6. Querying
10.2.7. Verifying
10.3. Checking a Package's Signature
10.3.1. Importing Keys
10.3.2. Verifying Signature of Packages
10.4. Practical and Common Examples of RPM Usage
10.5. Additional Resources
10.5.1. Installed Documentation
10.5.2. Useful Websites
10.5.3. Related Books

The RPM Package Manager (RPM) is an open packaging system, which runs on Red Hat Enterprise Linux as well as other Linux and UNIX systems. Red Hat, Inc. encourages other vendors to use RPM for their own products. RPM is distributed under the terms of the GPL.

The utility works only with packages built for processing by the rpm package. For the end user, RPM makes system updates easy. Installing, uninstalling, and upgrading RPM packages can be accomplished with short commands. RPM maintains a database of installed packages and their files, so you can invoke powerful queries and verifications on your system. If you prefer a graphical interface, you can use the Package Management Tool to perform many RPM commands. Refer to Chapter 11, Package Management Tool for details.


When installing a package, please ensure it is compatible with your operating system and architecture. This can usually be determined by checking the package name.

During upgrades, RPM handles configuration files carefully, so that you never lose your customizations — something that you cannot accomplish with regular .tar.gz files.

For the developer, RPM allows you to take software source code and package it into source and binary packages for end users. This process is quite simple and is driven from a single file and optional patches that you create. This clear delineation between pristine sources and your patches along with build instructions eases the maintenance of the package as new versions of the software are released.


Because RPM makes changes to your system, you must be logged in as root to install, remove, or upgrade an RPM package.

Note: This documentation is provided {and copyrighted} by Red Hat®, Inc. and is released via the Open Publication License. The copyright holder has added the further requirement that Distribution of substantively modified versions of this document is prohibited without the explicit permission of the copyright holder. The CentOS project redistributes these original works (in their unmodified form) as a reference for CentOS-5 because CentOS-5 is built from publicly available, open source SRPMS. The documentation is unmodified to be compliant with upstream distribution policy. Neither CentOS-5 nor the CentOS Project are in any way affiliated with or sponsored by Red Hat®, Inc.