The RPM database stores information about all RPM packages installed in your system. It is stored in the directory
/var/lib/rpm/, and is used to query what packages are installed, what versions each package is, and to calculate any changes to any files in the package since installation, among other use cases.
To query this database, use the
rpm -q package namecommand displays the package name, version, and release number of the installed package <package_name>. For example, using
rpm -q treeto query installed package
treemight generate the following output:
You can also use the following Package Selection Options (which is a subheading in the RPM man page: see
man rpmfor details) to further refine or qualify your query:
-a— queries all currently installed packages.
-f— queries the RPM database for which package owns
<file_name>. Specify the absolute path of the file (for example,
rpm -qfinstead of
rpm -qf ls).
-p— queries the uninstalled package
There are a number of ways to specify what information to display about queried packages. The following options are used to select the type of information for which you are searching. These are called the Package Query Options.
-idisplays package information including name, description, release, size, build date, install date, vendor, and other miscellaneous information.
-ldisplays the list of files that the package contains.
-sdisplays the state of all the files in the package.
-ddisplays a list of files marked as documentation (man pages, info pages, READMEs, etc.) in the package.
-cdisplays a list of files marked as configuration files. These are the files you edit after installation to adapt and customize the package to your system (for example,
For options that display lists of files, add
-vto the command to display the lists in a familiar