? The manpages for
Chapter 5. Package Management
One of the advantages of Fedora is the huge amount of software available for it. Finding, installing, updating, and removing this software can be a daunting task, simply due to the amount of software available.
Fortunately, Fedora uses a software management system called
What RPM doesn't provide is
In this chapter, the sections Lab 5.1, 'Querying the Package Management Database' and Lab 5.2, 'Installing and Removing Software Using RPM' deal with individual package management from the command line. If you want to go directly to the simplest and most comprehensive way of managing software packages, skip to Lab 5.3, 'Using Repositories.'
5.1. Querying the Package Management Database
The RPM package management database is an essential source of information about your system. The database is created when the system is installed and is updated whenever packages are added or removed.
As RPM packages are installed on your system, the metadata for those packages is stored in a database that can be queried. If you have a mystery file on your system and want to know where it came from, or want to know which version of a package is installed, or what a package does, an RPM query can answer your question in a few seconds.
5.1.1. How Do I Do That?
The
The default query takes a package name and tells you whether it is installed and, if so, which version is installed:
$ rpm -q
package selmyscan is not installed
$ rpm -q
httpd-2.0.54-10.2
More advanced queries use two different sets of arguments: one to control which packages are reported in the output, and one to control what is reported about the selected packages.
Table 5-1 describes the most commonly used options for selecting packages.
Table 5-1. RPM query options for package selection
Option | Description |
---|---|
-a | Selects all packages. |
-f | Selects the package that installed |
-g | Selects the packages that belong to |
-p | Selects the |
--triggeredby | Selects packages that have scripts that are triggered by the installation or removal of |
--whatprovides | Selects packages that provide a certain |
--whatrequires |