如果我想检查 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 系统上获得类似的结果?
答案1
嗯适用于 RHEL/Fedora/Centos/Scientific Linux
提供命令list
来显示有关已安装和可升级(及较旧)软件包的信息。
yum --showduplicates list <package>
齐普对于 SuSE Linux
可以返回可用的和已安装的软件包或补丁的详细列表。
zypper search -s <package>
--exact-match
如果有多个包,添加会有所帮助。
作为旁注,这里是包管理命令的比较。
答案2
您可以用来rpm -qi <package name>
获取已安装软件包的所有信息。您也可以使用以下命令:
yum info <package name>
yum list <package name>
yum --showduplicates list <package name>
答案3
其他答案解决了如何获取有关系统上已安装软件包的信息。除此之外,除了使用pkcon search
PackageKit 中的命令之外,还可以查询 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 系统上使用它的经验。
答案4
要查询可用的包,你可以这样做urpmq --sources YOURPACKAGE
This is Mandriva-specific (我只知道Mandriva)。
如果您想知道已安装软件包的版本:rpm -q YOURPACKAGE
这适用于所有 RPM 系统。
在 RedHat/Fedora 上,请参阅 yum。