如何检查rpm系统中可用的软件包版本?


57

如果我想检查Debian中软件包的可用版本,我apt-cache policy pkgname会在wajig给出的情况下运行它:

wajig:
  Installed: 2.01
  Candidate: 2.01
  Version table:
 *** 2.01 0
        100 /var/lib/dpkg/status
     2.0.47 0
        500 file:/home/wena/.repo_bin/ squeeze/main i386 Packages
        500 ftp://ftp.is.co.za/debian/ squeeze/main i386 Packages

这意味着有三个wajig软件包,其中一个已安装(/var/lib/dpkg/status),另外两个已安装(相同版本)。这两个之一在本地存储库中,另一个可从远程存储库获得。

在rpm系统上如何获得类似的结果?

Answers:


76

yum for RHEL / Fedora / Centos / Scientific Linux

提供命令list以显示有关已安装和可升级(和较旧)软件包的信息。

yum --showduplicates list <package>

适用于SuSE Linux的zypper

可以返回可用和已安装的软件包或补丁的详细列表。

zypper search -s <package>

--exact-match如果有多个软件包,添加可以提供帮助。

附带说明一下,这里是程序包管理命令的比较。


7
您还应该添加--showduplicatesyum,如果你想看到所有可用的版本,而不仅仅是最新的。
史蒂夫·希普韦

--exact-match选项似乎不适用于yum或zypper ...
Chris Maes

15

您可以用来rpm -qi <package name>获取已安装软件包的所有信息。您也可以使用以下命令:

yum info <package name>
yum list <package name>
yum --showduplicates list <package name>

2
除最后一个外,所有其他内容仅显示有关“已安装”版本FWIW的信息。但是--showduplicates一个有效,谢谢!
rogerdpack

5

其他答案解决了如何获取有关系统上已安装软件包的信息。除此之外,除了pkcon searchPackageKit中的命令之外,还可以查询yum存储库以获取可用的尚未安装的软件包。

$ pkcon search name xz
Searching by name             [=========================]         
Starting                      [=========================]         
Querying                      [=========================]         
Available       pxz-4.999.9-2.beta.20100608git.fc15.i686        Parallel LZMA compressor using XZ
Installed       xz-5.0.3-1.fc15.i686                            LZMA compression utilities
Available       xz-compat-libs-5.0.1-2.fc15.i686                Compatibility libraries for decoding LZMA compression
Available       xz-compat-libs-5.0.3-1.fc15.i686                Compatibility libraries for decoding LZMA compression
Installed       xz-debuginfo-5.0.3-1.fc15.i686                  Debug information for package xz
Installed       xz-devel-5.0.3-1.fc15.i686                      Devel libraries & headers for liblzma
Installed       xz-libs-5.0.3-1.fc15.i686                       Libraries for decoding LZMA compression
Installed       xz-lzma-compat-5.0.3-1.fc15.i686                Older LZMA format compatibility binaries
Installed       xzgv-0.9.1-3.fc15.i686                          Picture viewer
$

我假设PackageKit是通用的,因此它也可以与apt仓库一起使用,尽管我只有在Fedora系统上使用它的经验。


3

要查询可用的软件包,您可以执行urpmq --sources YOURPACKAGE 特定于Mandriva的操作(我只知道Mandriva)。

如果您想知道已安装软件包的版本:rpm -q YOURPACKAGE 可以在所有RPM系统上使用。

在RedHat / Fedora上,请参见yum。


3

运行以下命令将为您提供服务器上所有已安装的软件包。

rpm -qa | grep <packagename>

此处列出更多rpm命令

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.