Note: the examples below for both repoquery
and yum
info
are from a CentOS 7 system.
$ repoquery -i gstreamer Name : gstreamer Version : 0.10.36 Release : 7.el7 Architecture: i686 Size : 3554757 Packager : CentOS BuildSystem <http://bugs.centos.org> Group : Applications/Multimedia URL : http://gstreamer.freedesktop.org/ Repository : base Summary : GStreamer streaming media framework runtime Source : gstreamer-0.10.36-7.el7.src.rpm Description : GStreamer is a streaming media framework, based on graphs of filters which operate on media data. Applications using this library can do anything from real-time sound processing to playing videos, and just about anything else media-related. Its plugin-based architecture means that new data types or processing capabilities can be added simply by installing new plugins. Name : gstreamer Version : 0.10.36 Release : 7.el7 Architecture: x86_64 Size : 3480677 Packager : CentOS BuildSystem <http://bugs.centos.org> Group : Applications/Multimedia URL : http://gstreamer.freedesktop.org/ Repository : base Summary : GStreamer streaming media framework runtime Source : gstreamer-0.10.36-7.el7.src.rpm Description : GStreamer is a streaming media framework, based on graphs of filters which operate on media data. Applications using this library can do anything from real-time sound processing to playing videos, and just about anything else media-related. Its plugin-based architecture means that new data types or processing capabilities can be added simply by installing new plugins. $ repoquery -i amarok Name : amarok Version : 2.8.0 Release : 19.el7 Architecture: x86_64 Size : 18819138 Packager : Fedora Project Group : Unspecified URL : http://amarok.kde.org/ Repository : epel Summary : Media player Source : amarok-2.8.0-19.el7.src.rpm Description : Amarok is a multimedia player with: - fresh playlist concept, very fast to use, with drag and drop - plays all formats supported by the various engines - audio effects, like reverb and compressor - compatible with the .m3u and .pls formats for playlists - nice GUI, integrates into the KDE look, but with a unique touch
In the example above, the gstreamer package is listed twice because there is a i686 and a x86_64 version of the package, i.e., 32-bit and 64-bit versions of the package.
A package doesn't have to be installed on the system for you to determine which repository it can be found in. E.g.:
$ rpm -qi iperf package iperf is not installed $ repoquery -i iperf Name : iperf Version : 2.0.8 Release : 1.el7 Architecture: x86_64 Size : 405041 Packager : Fedora Project Group : Applications/Internet URL : http://sourceforge.net/projects/iperf2 Repository : epel Summary : Measurement tool for TCP/UDP bandwidth performance Source : iperf-2.0.8-1.el7.src.rpm Description : Iperf is a tool to measure maximum TCP bandwidth, allowing the tuning of various parameters and UDP characteristics. Iperf reports bandwidth, delay jitter, datagram loss. $
The command will only query the repositories for which support has been
installed on the system. A package may available in a repository, but if
the system is not configured to query that particular repository, then
repoquery won't be able to identify it as being present in that particular
repository. If you use
yum for
package management, you can determine which repositories the
yum install
command will query to locate a package using
the yum repolist
command.
$ yum repolist Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: centos.mirror.nac.net * epel: mirrors.mit.edu * extras: mirrors.maine.edu * updates: mirror.lug.udel.edu repo id repo name status base/7/x86_64 CentOS-7 - Base 9,007 !epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 10,416 !extras/7/x86_64 CentOS-7 - Extras 375 !updates/7/x86_64 CentOS-7 - Updates 2,231 repolist: 22,029 $
There will also be a .repo file in the /etc/yum/repos.d
directory for repos that will be queried.
The repoquery command is provided by the yum-utils
package.
If the utility is available on the system, the command which repoquery
will provide its location.
$ which repoquery /usr/bin/repoquery $ rpm -q --whatprovides /usr/bin/repoquery yum-utils-1.1.31-29.el7.noarch
If you wish to know which packages may be found in a particular repository,
you can use the command repoquery --repoid=repository_name
where repository_name is the name of the repository. E.g., to check
on which packages are provided by the
EPEL repository,
you could use the command below:
$ repoquery --repoid=epel -a | more
0ad-0:0.0.20-4.el7.x86_64
0ad-data-0:0.0.20-1.el7.noarch
0install-0:2.11-1.el7.x86_64
2048-cli-0:0.9.1-1.el7.x86_64
2048-cli-nocurses-0:0.9.1-1.el7.x86_64
2ping-0:3.2.1-2.el7.noarch
389-admin-0:1.1.38-1.el7.x86_64
389-admin-console-0:1.1.10-1.el7.noarch
389-admin-console-doc-0:1.1.10-1.el7.noarch
389-adminutil-0:1.1.21-2.el7.x86_64
389-adminutil-devel-0:1.1.21-2.el7.x86_64
389-console-0:1.1.9-1.el7.noarch
389-ds-0:1.2.2-6.el7.noarch
389-ds-console-0:1.2.12-1.el7.noarch
389-ds-console-doc-0:1.2.12-1.el7.noarch
3proxy-0:0.7-1.el7.x86_64
3proxy-sysvinit-0:0.7-1.el7.x86_64
Agda-0:2.3.2.2-3.el7.x86_64
AntTweakBar-0:1.16-2.el7.x86_64
AntTweakBar-devel-0:1.16-2.el7.x86_64
BackupPC-0:3.3.1-5.el7.x86_64
BareBonesBrowserLaunch-0:3.1-7.el7.noarch
BareBonesBrowserLaunch-javadoc-0:3.1-7.el7.noarch
[jim@huginn blog]$ repoquery --repoid=epel -a | more
0ad-0:0.0.20-4.el7.x86_64
0ad-data-0:0.0.20-1.el7.noarch
0install-0:2.11-1.el7.x86_64
2048-cli-0:0.9.1-1.el7.x86_64
2048-cli-nocurses-0:0.9.1-1.el7.x86_64
2ping-0:3.2.1-2.el7.noarch
389-admin-0:1.1.38-1.el7.x86_64
389-admin-console-0:1.1.10-1.el7.noarch
389-admin-console-doc-0:1.1.10-1.el7.noarch
389-adminutil-0:1.1.21-2.el7.x86_64
389-adminutil-devel-0:1.1.21-2.el7.x86_64
389-console-0:1.1.9-1.el7.noarch
389-ds-0:1.2.2-6.el7.noarch
389-ds-console-0:1.2.12-1.el7.noarch
389-ds-console-doc-0:1.2.12-1.el7.noarch
3proxy-0:0.7-1.el7.x86_64
3proxy-sysvinit-0:0.7-1.el7.x86_64
Agda-0:2.3.2.2-3.el7.x86_64
AntTweakBar-0:1.16-2.el7.x86_64
AntTweakBar-devel-0:1.16-2.el7.x86_64
BackupPC-0:3.3.1-5.el7.x86_64
BareBonesBrowserLaunch-0:3.1-7.el7.noarch
BareBonesBrowserLaunch-javadoc-0:3.1-7.el7.noarch
--More--
yum info
command. E.g., the example
below was from the execution of the command on a CentOS 7 system where iperf
is installed. For "Repo", "installed" is listed and "From repo" is "epel".$ yum info iperf Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: centos.mirror.nac.net * epel: mirrors.mit.edu * extras: mirrors.tripadvisor.com * updates: mirror.lug.udel.edu Installed Packages Name : iperf Arch : x86_64 Version : 2.0.8 Release : 1.el7 Size : 396 k Repo : installed From repo : epel Summary : Measurement tool for TCP/UDP bandwidth performance URL : http://sourceforge.net/projects/iperf2 License : BSD Description : Iperf is a tool to measure maximum TCP bandwidth, allowing the : tuning of various parameters and UDP characteristics. Iperf : reports bandwidth, delay jitter, datagram loss. $
On another CentOS system where iperf is not installed, the comand shows the following:
$ yum info iperf Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: centos.aol.com * epel: mirror.cs.pitt.edu * extras: centos.mirror.nac.net * updates: mirror.stjschools.org Available Packages Name : iperf Arch : x86_64 Version : 2.0.8 Release : 1.el7 Size : 321 k Repo : epel/x86_64 Summary : Measurement tool for TCP/UDP bandwidth performance URL : http://sourceforge.net/projects/iperf2 License : BSD Description : Iperf is a tool to measure maximum TCP bandwidth, allowing the : tuning of various parameters and UDP characteristics. Iperf : reports bandwidth, delay jitter, datagram loss. $
In the above case, the "Repo" line indicates a 64-bit version of the package can be found in the epel repository.