Understanding and Managing RPM in Linux




RPM is a package manager which is used on Linux based OS. It can help in package installation from FTP/HTTP site as well.



Few Feature of RPM

Install Software
Upgrade Software
Remove Software
Query Package Database
Check Package Dependencies


Disadvantages:
RPM can detect package dependecies but cannot install those during main package installation. For this we use other tools like yum

Important queries related to installed packages

1) Check all installed pcakages
 rpm -qa

2) List packages in Sorted way
 rpm -qa|sort

3) Information about a package installed
 rpm -qi zip

 Sample Output

 [root@lcfs ~]# rpm -qi zip
Name        : zip
Version     : 3.0
Release     : 11.el7
Architecture: x86_64
Install Date: Thursday 09 April 2020 07:18:33 AM IST
Group       : Applications/Archiving
Size        : 815173
License     : BSD

4) Information about packages installed based on group

[root@lcfs ~]# rpm -qa Group="System Environment/Shells"
tcsh-6.18.01-16.el7.x86_64
bash-4.2.46-34.el7.x86_64

5) Find packages installed based on date

rpm -qa --last

6) Find files installed by a package

rpm -ql zip
rpm -qd zip (for all document files for package)

7) Find configuration files related to package installed.

rpm -qc yum

8) Find a file was installed by which package

rpm -qf /bin/bash

9) Find Documentation for a file which was installed via package.

rpm -qfd /bin/bash

10) Find features of a utility

rpm -q --provides bash

11) Check Dependent packages for a package

rpm -q --requires zip

12) Find all changes to a package done(like changes in package development)

rpm -q --changelog zip


Important queries related to rpm packages before installation

1) Find Package information for RPM.

rpm -qip httpd-2.4.6-93.el7.centos.x86_64.rpm

2) Find all the files inside a RPM package

rpm -qlp httpd-2.4.6-93.el7.centos.x86_64.rpm

Please note the most command will run on rpm also but we have to give "p" option for checking

Extract a rpm

rpm2cpio |cpio -id