RPM (Red Hat Package Manager) is a default open-source and widely-used package management utility for Red Hat-based systems such as CentOS Fedora, Rocky, and Alma Linux.
The rpm package management tool enables system administrators and users to install, update, uninstall, query, verify, and manage software packages on Unix/Linux operating systems, which formerly known as a .rpm
file, contains compiled software programs and libraries required by the packages.
This article provides 20 useful examples of RPM commands that might be helpful to you. With the help of these RPM commands, you can manage the installation, updating, and removal of packages on your Linux systems.
RPM Facts
Here are some facts about RPM (Red Hat Package Manager):
- RPM is freely available and released under the General Public License (GPL).
- RPM maintains a database of all installed packages, storing this information in the
/var/lib/rpm
directory. - RPM serves as the primary method for installing packages on Linux systems. If packages have been installed using source code, RPM does not manage them.
- RPM operates with
.rpm
files, containing vital package information such as its identity, source, dependencies, version details, and more.
Basic Modes for RPM Command
Here are the primary modes for the RPM command:
-
Install – The
rpm -i
command installs a new package on the system. -
Upgrade – The
rpm -U
command upgrades an existing package to a newer version. -
Remove – The
rpm -e
command uninstalls or removes a package from the system. -
Query – The
rpm -q
command queries the RPM database for information about installed packages. -
Verify – The
rpm -V
command verifies the integrity of installed package files. -
Freshen – The
rpm -F
command upgrades or installs a package only if it is already installed. -
Rebuild Database – The
rpm --rebuilddb
command rebuilds the RPM database, resolving database corruption issues. -
Import GPG Key – The
rpm --import
command imports a GPG key used for package signature verification. -
Query All – The
rpm -qa
command lists all installed packages on the system. -
Query Files – The
rpm -ql
command lists all files installed by a specific package. -
Query Documentation – The
rpm -qd
command lists documentation files provided by a package. -
Query Dependencies – The
rpm -qR
command lists runtime dependencies for a package. -
Query Provides – The
rpm -q --provides
command lists capabilities provided by a package. -
Query Requires – The
rpm -q --requires
command lists dependencies required by a package.
Where to Find RPM Packages
You can find RPM packages in several places, depending on your Linux distribution. Here are common locations where you can find and download all RPM packages.
- http://rpmfind.net
- http://www.redhat.com
- https://pkgs.org/
- http://rpm.pbone.net/
Please remember you must be a root user when installing packages in Linux, with the root privileges you can manage rpm commands with their appropriate options.
1. How to Check RPM Package Signature
Always check the PGP signature of packages before installing them on your Linux systems and make sure their integrity and origin are OK.
Use the following command with --checksig
(check signature) option to check the signature of a package called hardinfo.
<strong>rpm --checksig hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm</strong> hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm: digests OK
2. How to Install RPM Package
To install an RPM software package, use the following command with -ivh
option, which will install the rpm package called hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm on a Linux system.
<strong>rpm -ivh hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm</strong> Verifying... ################################# [100%] Preparing... ################################# [100%] Updating / installing... 1:hardinfo-2.0.11-1 ################################# [100%]
Let’s break down the components of the above command:
-
-i
: install a package -
-v
: verbose for a nicer display -
-h
: print hash marks (#) to show the progress of the installation.
3. How to Check Dependencies of RPM Package Before Installing
Let’s say you would like to do a dependency check before installing or upgrading a package. For example, use the following command to check the dependencies of hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm package.
The command queries and displays the runtime dependencies required by the “hardinfo” package, which helps to identify and ensure that all necessary dependencies are met before installing the package.
<strong>rpm -qpR hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm</strong> libX11.so.6()(64bit) libatk-1.0.so.0()(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.38)(64bit) libc.so.6(GLIBC_2.7)(64bit) libcairo-gobject.so.2()(64bit) libcairo.so.2()(64bit) ...
Let’s break down the components of the above command:
-
-q
: Query a package. -
-p
: List capabilities this package provides. -
-R
: List capabilities on which this package depends.
4. How to Install RPM Package Without Dependencies
To install an rpm package without dependencies, you can use --nodeps
option, which will forcefully install an RPM package without checking or resolving dependencies.
rpm -ivh --nodeps hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm
The above command forcefully installs the rpm package by ignoring dependencies errors, but if those dependency files are missing, then the program will not work at all until you install them.
5. How to Check Installed RPM Package
To check an installed rpm package, you can use -q
option, which will query and display information about the installed version of the package.
<strong>rpm -q hardinfo</strong> hardinfo-2.0.11-1.x86_64
6. How to Find Where RPM Files are Installed
To view all the files of an installed rpm package, use the -ql
(query list) with rpm command.
<strong>rpm -ql hardinfo</strong> /usr/bin/hardinfo2 /usr/lib/.build-id /usr/lib/.build-id/3a /usr/lib/.build-id/53 /usr/lib/.build-id/7c /usr/lib/.build-id/ba /usr/lib/.build-id/e0 /usr/lib64/hardinfo2 /usr/lib64/hardinfo2/modules /usr/lib64/hardinfo2/modules/benchmark.so /usr/lib64/hardinfo2/modules/computer.so /usr/lib64/hardinfo2/modules/devices.so /usr/lib64/hardinfo2/modules/network.so ...
7. How to List Recently Installed RPM Packages
Use the following rpm command with -qa
(query all) option, will list all the recently installed rpm packages.
<strong>rpm -qa --last</strong> hardinfo-2.0.11-1.x86_64 Mon 04 Mar 2024 01:32:14 PM IST pipewire-pulseaudio-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST pipewire-jack-audio-connection-kit-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST pipewire-alsa-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST libsoup-devel-2.74.3-3.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST json-glib-devel-1.8.0-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST gtk3-devel-3.24.41-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST xdg-desktop-portal-gtk-1.15.1-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST xdg-desktop-portal-1.18.2-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST libcanberra-gtk3-0.30-32.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST gtk3-3.24.41-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST ...
8. How to List All Installed RPM Packages
Type the following command to print all the names of installed packages on your Linux system.
<strong>rpm -qa</strong> fonts-filesystem-2.0.5-12.fc39.noarch libreport-filesystem-2.17.11-3.fc39.noarch hunspell-filesystem-1.7.2-5.fc39.x86_64 abattis-cantarell-vf-fonts-0.301-10.fc39.noarch fedora-gpg-keys-39-1.noarch fedora-repos-39-1.noarch setup-2.14.4-1.fc39.noarch filesystem-3.18-6.fc39.x86_64 basesystem-11-18.fc39.noarch default-fonts-core-sans-4.0-9.fc39.noarch langpacks-fonts-en-4.0-9.fc39.noarch ...
9. How to Upgrade a RPM Package
If we want to upgrade any RPM package “–U
” (upgrade) option will be used. One of the major advantages of using this option is that it will not only upgrade the latest version of any package, but it will also maintain the backup of the older package so that in case if the newer upgraded package does not run the previously installed package can be used again.
rpm -Uvh hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm
10. How to Remove a RPM Package
To un-install an RPM package, for example, we use the package name hardinfo, not the original package name hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm. The -e (erase)
option is used to remove the package.
rpm -evv hardinfo
11. How to Remove an RPM Package Without Dependencies
The --nodeps
(do not check dependencies) option forcefully remove the rpm package from the system. But keep in mind removing a particular package may break other working applications.
rpm -ev --nodeps hardinfo
12. How to Find RPM Package of a Specific File
Let’s say, you have a list of files and you would like to find out which package belongs to these files. For example, the following command with -qf
(query file) option will show you a file /usr/bin/htpasswd that is owned by package httpd-tools-2.4.58-1.fc39.x86_64.
rpm -qf /usr/bin/htpasswd httpd-tools-2.4.58-1.fc39.x86_64
13. How to Query Information of Installed RPM Package
Let’s say you have installed an rpm package and want to know the information about the package. The following -qi
(query info) option will print the available information of the installed package.
<strong>rpm -qi hardinfo</strong> Name : hardinfo Version : 2.0.11 Release : 1 Architecture: x86_64 Install Date: Mon 04 Mar 2024 01:32:14 PM IST Group : unknown Size : 5174404 License : GPL2+ Signature : (none) Source RPM : hardinfo-2.0.11-1.src.rpm Build Date : Sat 02 Mar 2024 06:37:42 AM IST Build Host : fedora.bigbear.dk Relocations : /usr Vendor : Humanity URL : https://www.hardinfo2.org Summary : hardinfo2 built using CMake Description : Hardinfo2 is a small application that displays information about your hardware and operating system. It has online benchmarking to check your machine performance against other machines.
14. Get the Information of RPM Package Before Installing
You have downloaded a package from the internet and want to know the information of a package before installing. For example, the following option -qip
(query info package) will print the information of a package sqlbuddy.
<strong>rpm -qip sqlbuddy</strong> Name : sqlbuddy Relocations: (not relocatable) Version : 1.3.3 Vendor: (none) Release : 1 Build Date: Wed 02 Nov 2011 11:01:21 PM BDT Install Date: (not installed) Build Host: rpm.bar.baz Group : Applications/Internet Source RPM: sqlbuddy-1.3.3-1.src.rpm Size : 1155804 License: MIT Signature : (none) Packager : Erik M Jacobs URL : http://www.sqlbuddy.com/ Summary : SQL Buddy a Web based MySQL administration Description : SQLBuddy is a PHP script that allows for web-based MySQL administration.
15. How to Query Documentation of Installed RPM Package
To get the list of available documentation of an installed package, use the following command with the option -qdf
(query document file) will display the manual pages related to the vmstat package.
<strong>rpm -qdf /usr/bin/vmstat</strong> /usr/share/doc/procps-ng/AUTHORS /usr/share/doc/procps-ng/FAQ /usr/share/doc/procps-ng/NEWS /usr/share/doc/procps-ng/README.md /usr/share/doc/procps-ng/bugs.md /usr/share/man/man1/free.1.gz /usr/share/man/man1/pgrep.1.gz ...
16. How to Verify a RPM Package
Verifying a package compares the information of installed files of the package against the rpm database. The -Vp
(verify package) is used to verify a package.
rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm S.5....T. c /etc/httpd/conf.d/sqlbuddy.conf
17. How to Verify all RPM Packages
Type the following command to verify all the installed rpm packages.
<strong>rpm -Va</strong> S.5....T. c /etc/rc.d/rc.local .......T. c /etc/dnsmasq.conf .......T. /etc/ld.so.conf.d/kernel-2.6.32-279.5.2.el6.i686.conf S.5....T. c /etc/yum.conf S.5....T. c /etc/yum.repos.d/epel.repo
18. How to Import an RPM GPG Key
To verify RHEL/CentOS/Fedora packages, you must import the GPG key. To do so, execute the following command. It will import the CentOS 8?GPG key.
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-8
19. How to List all Imported RPM GPG Keys
To print all the imported GPG keys in your system, use the following command.
<strong>rpm -qa gpg-pubkey*</strong> gpg-pubkey-0608b895-4bd22942 gpg-pubkey-7fac5991-4615767f gpg-pubkey-0f2672c8-4cd950ee gpg-pubkey-c105b9de-4e0fd3a3 gpg-pubkey-00f97f56-467e318a gpg-pubkey-6b8d79e6-3f49313d gpg-pubkey-849c449f-4cb9df30
20. How To Rebuild Corrupted RPM Database
Sometimes rpm database gets corrupted and stops all the functionality of rpm and other applications on the system. So, at this time we need to rebuild the rpm database and restore it with the help of the following command.
cd /var/lib rm __db* rpm --rebuilddb rpmdb_verify Packages
In conclusion, the presented rpm commands provide a comprehensive guide for efficiently managing software packages on RHEL-based Linux distributions.
The above is the detailed content of 20 RPM Commands for Linux Package Management. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Are you looking for good software to write mathematical equations? If so, this article provides the top 5 equation editors that you can easily install on your favorite Linux distribution.In addition to being compatible with different types of mathema

Linux administrators should be familiar with the command-line environment. Since GUI (Graphical User Interface) mode in Linux servers is not commonly installed.SSH may be the most popular protocol to enable Linux administrators to manage the servers

Gogo is a remarkable tool to bookmark directories inside your Linux shell. It helps you create shortcuts for long and complex paths in Linux. This way, you no longer need to type or memorize lengthy paths on Linux.For example, if there's a directory

PPA is an important tool for Ubuntu users to expand their software sources. 1. When searching for PPA, you should visit Launchpad.net, confirm the official PPA in the project official website or document, and read the description and user comments to ensure its security and maintenance status; 2. Add PPA to use the terminal command sudoadd-apt-repositoryppa:/, and then run sudoaptupdate to update the package list; 3. Manage PPAs to view the added list through the grep command, use the --remove parameter to remove or manually delete the .list file to avoid problems caused by incompatibility or stopping updates; 4. Use PPA to weigh the necessity and prioritize the situations that the official does not provide or require a new version of the software.

LXD is described as the next-generation container and virtual machine manager that offers an immersive for Linux systems running inside containers or as virtual machines. It provides images for an inordinate number of Linux distributions with support

How to quickly generate test files of a specified size? It can be achieved using command line tools or graphical software. On Windows, you can use fsutilfilecreatenew file name size to generate a file with a specified byte; macOS/Linux can use ddif=/dev/zeroof=filebs=1Mcount=100 to generate real data files, or use truncate-s100M files to quickly create sparse files. If you are not familiar with the command line, you can choose FSUtilGUI, DummyFileGenerator and other tool software. Notes include: pay attention to file system limitations (such as FAT32 file size upper limit), avoid overwriting existing files, and some programs may

Node Version Manager (NVM) is a simple bash script that helps manage multiple Node.js versions on your Linux system. It enables you to install various Node.js versions, view available versions for installation, and check already installed versions.NV

The key to installing dual systems in Linux and Windows is partitioning and boot settings. 1. Preparation includes backing up data and compressing existing partitions to make space; 2. Use Ventoy or Rufus to make Linux boot USB disk, recommend Ubuntu; 3. Select "Coexist with other systems" or manually partition during installation (/at least 20GB, /home remaining space, swap optional); 4. Check the installation of third-party drivers to avoid hardware problems; 5. If you do not enter the Grub boot menu after installation, you can use boot-repair to repair the boot or adjust the BIOS startup sequence. As long as the steps are clear and the operation is done properly, the whole process is not complicated.
