如何知道软件包是从哪个 yum 存储库 *URL* 安装的?

如何知道软件包是从哪个 yum 存储库 *URL* 安装的?

我的系统管理员想要为一些我想要更新的旧 CentOS 服务器建立一个代理白名单(到目前为止,它已经与互联网断开连接)。

我要求获得完全的互联网访问权限,这样我就可以更新所有内容,并安装更多内容,然后向他发送更新所需的 URL 列表,这样他就可以切换到白名单。

不幸的是,使用的 URL 没有记录在 /var/log/yum.log 中。

我遇到了这个问题: 如何知道软件包是从哪个 yum 存储库安装的?

它告诉我“来自 repo”,但这只是一个可以映射到许多 URL 并随着时间而变化的“逻辑名称”,并且“URL”是包的“创建者/来源”,而不是它物理下载的位置。

还有其他地方可以让我提取 yum 用于安装/更新的 URL 吗,或者我可以配置 yum 的日志记录来记录该信息吗?

目前,更新包只会在日志中产生如下内容:

5月18日 18:04:07 更新:1:busybox-1.15.1-21.el6_6.x86_64

答案1

repo URL 位于/etc/yum.repos.d目录中的 yum 配置文件中。

请记住,大多数 CentOS 存储库都使用镜像列表,其中包含每个可能的 CentOS 镜像的 URL,并且任何给定的包都可能从任何镜像下载。

在 EL 7 中,您可以在文件中找到下载包的具体 URL /var/lib/yum/yumdb/[a-z]/[unique-id-packagename]/origin_url。此信息在 EL 8 中将不再提供。

答案2

您可以执行 yum info 来查看它,例如从 yum install 中查看。

考虑在 Centos 6 上安装 zlib -

yum info zlib
Installed Packages
Name        : zlib
Arch        : i686
Version     : 1.2.3
Release     : 29.el6
Size        : 136 k
Repo        : installed
From repo   : base
Summary     : The zlib compression and decompression library
URL         : http://www.gzip.org/zlib/
License     : zlib and Boost
Description : Zlib is a general-purpose, patent-free, lossless data compression
            : library which is used by many different programs.

Name        : zlib
Arch        : x86_64
Version     : 1.2.3
Release     : 29.el6
Size        : 149 k
Repo        : installed
From repo   : anaconda-CentOS-201311272149.x86_64
Summary     : The zlib compression and decompression library
URL         : http://www.gzip.org/zlib/
License     : zlib and Boost
Description : Zlib is a general-purpose, patent-free, lossless data compression
            : library which is used by many different programs.

它向您显示了来自 Repo 的内容。

相关内容