Home > Package & System Management > rpm

rpm: RPM Package Management

RPM (Red Hat Package Manager) is a powerful command-line tool used in Red Hat-based Linux distributions (RHEL, CentOS, Fedora, etc.) for installing, updating, removing, and querying software packages. It is designed for efficient management of packages in the `.rpm` format.

Overview

rpm is a core tool for managing software packages on Red Hat-based Linux systems. It provides functionality for installing, removing, updating packages, and querying information about installed packages on the system. As a low-level package management tool, dependency resolution often needs to be handled manually.

Key Features

  • Install and update RPM packages
  • Remove installed packages
  • Query package information (installation status, file list, metadata, etc.)
  • Verify package file integrity

Key Options

The `rpm` command offers various modes and options to perform different tasks. The main modes include installation (-i), update (-U), removal (-e), query (-q), and verification (-V).

Install/Update Options

Remove Options

Query Options

Generated command:

Try combining the commands.

Description:

`rpm` Executes the command.

Combine the above options to virtually execute commands with AI.

Usage Examples

Demonstrates various scenarios for managing packages using the `rpm` command.

Install an RPM Package

sudo rpm -ivh mypackage-1.0.0-1.x86_64.rpm

Installs a local `.rpm` file. Dependency issues may occur.

Update or Install an RPM Package

sudo rpm -Uvh mypackage-1.0.1-1.x86_64.rpm

Updates the package if it's already installed, or installs it if it's not.

Remove an Installed Package

sudo rpm -e mypackage

Removes the specified package from the system.

List All Installed Packages

rpm -qa | less

Lists the names and versions of all RPM packages installed on the system.

Query Specific Package Information

rpm -qi httpd

Checks detailed information for the installed 'httpd' package.

List Files of a Specific Package

rpm -ql httpd

Lists all file paths included in the installed 'httpd' package.

Find Package Owning a Specific File

rpm -qf /etc/passwd

Determines which RPM package installed the `/etc/passwd` file.

Tips & Warnings

`rpm` is powerful but is a low-level package management tool. For tasks requiring dependency management, using higher-level tools like `yum` or `dnf` is generally recommended.

Recommended to Use Higher-Level Tools

  • Utilize YUM/DNF: `rpm` does not automatically resolve dependency issues. When installing or updating packages with complex dependencies, using package managers like `yum` (older versions) or `dnf` (newer versions) is much more convenient and safer. These tools are built on top of `rpm` and provide dependency resolution capabilities.

Dependency Issues

  • Manual Resolution: When using `rpm -i` or `rpm -U`, errors will occur if required libraries or other packages are not installed. In such cases, you must manually install the necessary dependency packages first.

Caution with Force Options

  • --force / --nodeps: Options like `--force` or `--nodeps` can compromise system stability and should be avoided unless absolutely necessary. They can lead to unpredictable issues on your system.

Same category commands