yumdownloader 与 repotrack

yumdownloader 与 repotrack

我正在使用 CentOS 6.3。

最近我偶然遇到repotrackyum-utils

yumdownloader --resolve并且repotrack看起来非常相似,但它看起来yumdownloader只下载部分依赖项,而不是repotrack所有依赖项。

你试一试

yumdownloader --destdir=/tmp/download --assumeyes --resolve parted

相对

repotrack parted

yumdownloader --resolve和有什么区别repotrack

答案1

yumdownloader --resolve应该解决所有依赖关系并下载软件包

repotrack parted还解决依赖关系并下载它们

我的猜测是,repotrack 正在下载任何架构的所有依赖项,因为您似乎没有指定架构,这可以解释您看到的下载内容的差异。

我相信你使用repotrack -a开关来指定你的架构

答案2

请记住,yumdownloader 在解决依赖关系时将使用您的 yum 数据库。

例如,如果您下载需要 glibc 的 bash,它将解析 glibc 并跳过它,因为它已安装。如果您想下载所有依赖项,请使用不同的 installroot。

它下载所有依赖项:

yumdownloader --installroot=/tmp/empty-directory --resolve bash

答案3

yumdownloader [options] package1 [package2...] http://linux.die.net/man/1/yumdownloader 这似乎会下载软件包及其主要依赖项。但它不会下载依赖项的依赖项。它仅有的下载包的顶级依赖项。

repotrack [options] package1 [package2...] http://man7.org/linux/man-pages/man1/repotrack.1.html 这将下载软件包及其所有依赖项以及所需的子级依赖项。

后一种选择对于获取填充您自己的单源存储库所需的每个依赖项来说要好得多。

答案4

Repotrack 下载软件包的所有可能依赖项 - 数十或数百个。通常,本地安装这些依赖项的唯一一致方法是本地存储库。

Yumdownloader --resolve 下载您实际需要的依赖项,以及所有第一级依赖项,即使您不需要它们。从这个意义上讲,这有点奇怪,但有时很有用。

Yum --downloadonly 仅下载该特定框所需的实际依赖项。这样可以轻松安装 *.rpm。

yumdownloader 和 yum --downloadonly 都(根据设计)对已安装软件包的存在很敏感,并且应该在安装任何软件包或其依赖项之前运行。

相关内容