lg.*_*lg. 172 linux package-management yum repository
在我通过 yum 安装了一个包(配置了多个存储库)后,我如何找到它已安装在哪个存储库中?
如果我运行yum info package-name(或yum list package-name),我只能看到该软件包已“安装”。
Xio*_*iov 93
安装 yum-utils 后,repoquery 将提供您寻找的信息(这里的“epel”是存储库)。
??[$]> repoquery -i cherokee
Name : cherokee
Version : 0.99.49
Release : 1.el5
Architecture: i386
Size : 8495964
Packager : Fedora Project
Group : Applications/Internet
URL : http://www.cherokee-project.com/
Repository : epel
Summary : Flexible and Fast Webserver
Description :
Cherokee is a very fast, flexible and easy to configure Web Server. It supports
the widespread technologies nowadays: FastCGI, SCGI, PHP, CGI, TLS and SSL
encrypted connections, Virtual hosts, Authentication, on the fly encoding,
Apache compatible log files, and much more.
Run Code Online (Sandbox Code Playgroud)
the*_*ive 50
什么版本的yum?
在当前版本上,如果安装的软件包与最新可用的版本相同,则显示安装它的存储库。
$ yum info irssi
Installed Packages
Name : irssi
Arch : i586
Version : 0.8.14
Release : 1.fc11
Size : 2.3 M
Repo : installed
From repo : updates
Summary : Modular text mode IRC client with Perl scripting
URL : http://irssi.org/
License : GPLv2+
Description: Irssi is a modular IRC client with Perl scripting. Only text-mode
: frontend is currently supported. The GTK/GNOME frontend is no
: longer being maintained.
$ yum --version
3.2.23
Run Code Online (Sandbox Code Playgroud)
如果有更新的包可用,那么它将单独显示,新版本显示它可用的存储库。
Mar*_*ian 24
来晚了,但(至少在 Fedora 15 上)可以使用 yumdb 进行类似的查询:
yumdb info 'python*'
Run Code Online (Sandbox Code Playgroud)
我实际上需要从给定的 repo(s) 列出包:
yumdb search from_repo 'my-*-repo'
Run Code Online (Sandbox Code Playgroud)
Mic*_*ton 12
如果所有其他方法都失败了,您可以手动检查 yumdb。它位于/var/lib/yum/yumdb并包含有关每个已安装软件包的详细信息。你会对from_repo. 例如,对于bind-utils包:
# for i in /var/lib/yum/yumdb/b/*bind-utils*/*; do echo $i: `cat $i`; done
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/checksum_data: 39f7840f93d3d76825a9e8da79cfe0366f7fad68f018a273477aee62cccfa3f4
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/checksum_type: sha256
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/command_line: install bind-utils
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/from_repo: updates
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/from_repo_revision: 1397654451
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/from_repo_timestamp: 1397654759
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/installed_by: 0
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/reason: user
/var/lib/yum/yumdb/b/73ea08770fa666e18c59842bf65fa0f3a0b103d8-bind-utils-9.8.2-0.23.rc1.el6_5.1-x86_64/releasever: 6
Run Code Online (Sandbox Code Playgroud)
只获取您想要的信息:
# cat /var/lib/yum/yumdb/b/*bind-utils*/from_repo
updates
Run Code Online (Sandbox Code Playgroud)
以后的版本会提供更多的数据;例如,在 EL 7 中,下载包的确切镜像和 URL 存储在此处。
小智 6
查看从 repo epel 安装的内容:(应该在 Centos 5.5 下工作)注意,如果你没有名为 epel 的 repo,它会吐出安装的所有内容。
repoquery --repoid=epel -a | xargs yum list installed
Run Code Online (Sandbox Code Playgroud)
无需安装任何额外工具、grep 或输出无关信息的最简单、最直接的方法很简单:
yum list installed [package name]
Run Code Online (Sandbox Code Playgroud)
第三列将提供安装包的存储库的 ID。
这是在使用 grep 对原始问题的评论中提到的,但这不是必要的。您可以直接将包名称传递给yum过滤器。
| 归档时间: |
|
| 查看次数: |
269452 次 |
| 最近记录: |