我正在研究CentOS 6.3。
最近我遇到了来自yum-utils repotrack 。
yumdownloader --resolve和repotrack看起来非常相似,但是看起来像yumdownloader只下载了一部分依赖项,在那里repotrack所有依赖项。
你试一试
yumdownloader --destdir=/tmp/download --assumeyes --resolve parted
与
repotrack parted
yumdownloader --resolve和repotrack什么repotrack ?
yumdownloader --resolve是解决所有的依赖和下载软件包
repotrack parted也解决了依赖关系,并下载它们
我的猜测是repotrack正在下载任何体系结构的所有依赖项,因为它没有出现,你指定的体系结构可能会导致你看到下载的不同。
我相信你使用repotrack -a开关来指定你的架构
请记住,yumdownloader将在parsing依赖关系时使用yum数据库。
例如,如果你下载bash,需要glibc,它会parsingglibc并跳过它,因为它已经安装。 如果要下载所有依赖项,请改用其他installroot。
它下载所有的依赖关系:
yumdownloader --installroot=/tmp/empty-directory --resolve bash
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这下载包及其所有依赖以及子级依赖需要。
后面的选项对于获取每个需要用来填充自己的单一源代码库的依赖关系来说要好得多。
Repotrack会下载你软件包的所有可能的依赖关系 – 几十或几百个。 通常,本地安装这些软件的唯一方法是本地回购。
Yumdownloader – parsing下载你需要的实际的依赖,加上所有的第一级依赖,即使你不需要它们。 在这个意义上它有点奇怪,但有时候是有用的。
百胜 – 只下载你需要的特定框的实际依赖关系。 这使安装* .rpm变得容易。
yumdownloader和yum –downloadonly都是(已经devise的)对已经安装的软件包的存在敏感,应该在安装任何软件包或它们的依赖关系之前运行。