10+ ‘rpm’ command usages with examples – Unix/Linux

RPM – Red Hat Package Manager.
RPM is the package manager for Linux system. The ‘rpm’ command is used to install, manage, uninstall packages from server/system. Here I am explaining some common usages of the ‘rpm’ command with example:

1, How to list all packages installed on the server?

# rpm -qa

Example:

[[email protected]]# rpm -qa
xorg-x11-drv-trident-1.3.6-4.el6.x86_64
m17n-contrib-assamese-1.1.10-4.el6_1.1.noarch
wqy-zenhei-fonts-0.9.45-3.el6.noarch
startup-notification-0.10-2.1.el6.x86_64
xml-common-0.6.3-32.el6.noarch
xorg-x11-drv-rendition-4.2.5-2.el6.x86_64
m17n-contrib-hindi-1.1.10-4.el6_1.1.noarch
paktype-tehreer-fonts-2.0-8.el6.noarch
ibus-libs-1.3.4-6.el6.x86_64
mozilla-filesystem-1.9-5.1.el6.x86_64
............
............

2, Find the total number of installed packages ?

[[email protected]]# rpm -qa|wc -l
1094

3, How to find a package is installed or not ?

# rpm -qa|grep -i "package-name"

Example:

[[email protected]]# rpm -qa|grep -i mozilla
mozilla-filesystem-1.9-5.1.el6.x86_64

4, Find all the information regarding the package ?

# rpm -qi package-name

Example:

[[email protected]]# rpm -qi mozilla-filesystem-1.9-5.1.el6.x86_64
Name        : mozilla-filesystem           Relocations: (not relocatable)
Version     : 1.9                               Vendor: CentOS
Release     : 5.1.el6                       Build Date: Wed 18 Aug 2010 09:14:21 PM IST
Install Date: Thu 28 Mar 2013 01:37:47 PM IST      Build Host: c6b3.bsys.dev.centos.org
Group       : Applications/Internet         Source RPM: mozilla-filesystem-1.9-5.1.el6.src.rpm
Size        : 0                                License: MPLv1.1
Signature   : RSA/8, Sun 03 Jul 2011 10:15:46 AM IST, Key ID 0946fca2c105b9de
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Summary     : Mozilla filesytem layout
Description :
This package provides some directories required by packages which use
Mozilla technologies such as NPAPI plugins or toolkit extensions.

5, How to find the parent package details of a command ?
Example: To fing the package name of the ‘ls’ command.

# rpm -qf /path/to/command

Example:

[[email protected]]# which ls
alias ls='ls --color=auto'
	/bin/ls
----
[[email protected]]# rpm -qf /bin/ls
coreutils-8.4-19.el6.x86_64

6, How to list all commands or contens from a package ?

# rpm -ql package-name

Example:

[[email protected] TAR]# rpm -ql coreutils-8.4-19.el6.x86_64
/bin/arch
/bin/basename
/bin/cat
/bin/chgrp
/bin/chmod
/bin/chown
/bin/cp
/bin/cut
/bin/date
/bin/dd
/bin/df
/bin/echo
.........
.........
.........

7, How to install a package using rpm command ?
The rpm command with ‘-i’ switch is used to install a package on server.
Syntax:

# rpm -ivh package-name

Where;

-i : install a package
-v : verbose
-h : print hash marks as the package archive is unpacked.

Example:

# rpm -ivh  MySQL-client-3.23.57-1.i386.rpm
Preparing...                ########################################### [100%]
   1:MySQL-client           ########################################### [100%]

8, How to upgrade a package using rpm command ?
You can upgrade the already installed package by using the switch ‘-U’
Syntax:

# rpm -Uvh package-name

Example:

# rpm -Uvh MySQL-client-3.23.57-1.i386.rpm
Preparing... 			########################################### [100%]
1:MySQL-client          ################################################### [100%]

9, How to remove a package using rpm command ? Use the switch ‘-e’ to erase package from server. Syntax:

# rpm -ev package-name

10, Verify a Package Owning file using rpm -Vf

The following command verify the package which owns the given filename.

# rpm -Vf /usr/bin/mysqlaccess
S.5....T c /usr/bin/mysql
#

11, Find out the state of files in a package using rpm -qsp
The three states are:

installed 
replaced 
normal

The following command is to find state for all the files in a RPM package.

# rpm -qsp MySQL-client-3.23.57-1.i386.rpm
normal        /usr/bin/msql2mysql
normal        /usr/bin/mysql
normal        /usr/bin/mysql_find_rows
normal        /usr/bin/mysqlaccess
normal        /usr/bin/mysqladmin
normal        /usr/bin/mysqlbinlog
normal        /usr/bin/mysqlcheck
...........
...........

12, List the Dependency of Packages.

To view the list of packages on which this package depends, use -qRP with rpm command.
Example:

# rpm -qRp MySQL-client-3.23.57-1.i386.rpm
/bin/sh
/usr/bin/perl

13, –nodeps
This switch along with rpm command will install the package forcefully by avoiding its dependencies.

Other useful commands:
groupdel, groupmems, groupmod, useradd , usermod , chgrp, chown, ls, head, tail, top, ps, find, crontab, ftp commands, tar

Arunlal Ashok

Linux Server Administrator. I'm dealing with Linux servers since 2012. I started this blog to share and discuss my ideas with the world. Check My Profile!! in uPwork (oDesk) and let me know if you need any assistance. Thanks!!

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *