Я работаю над CentOS 6.3.
Недавно наткнулся repotrack
из yum-utils
.
yumdownloader --resolve
и repotrack
выглядит очень похоже, но похоже yumdownloader
скачать только часть зависимостей, где repotrack
все зависимости.
Просто попробуй
yumdownloader --destdir=/tmp/download --assumeyes --resolve parted
против
repotrack parted
В чем разница между yumdownloader --resolve
и repotrack
?
yumdownloader --resolve
предполагается разрешить все зависимости и загрузить пакеты
repotrack parted
также разрешает зависимости и загружает их
Я предполагаю, что repotrack загружает все зависимости для любой архитектуры, поскольку не похоже, что вы указали архитектуру, которая могла бы учитывать разницу в том, что вы видите загруженным.
Я считаю, что вы используете repotrack -a
переключатель, чтобы указать вашу архитектуру
Имейте в виду, что yumdownloader будет использовать вашу базу данных yum при разрешении зависимостей.
Например, если вы загружаете bash, которому требуется glibc, он разрешит glibc и пропустит его, поскольку он установлен. Если вы хотите загрузить все зависимости, используйте другой установочный корень.
Он скачивает все зависимости:
yumdownloader --installroot=/tmp/empty-directory --resolve bash
Repotrack скачивает ВСЕ ВОЗМОЖНЫЕ зависимости вашего пакета - десятки или сотни. Обычно единственный последовательный способ их локальной установки - это локальное репо.
Yumdownloader --resolve загружает фактические зависимости, которые вам нужны, а также все зависимости первого уровня, даже если они вам не нужны. В этом смысле это немного странно, но иногда полезно.
Yum --download загружает только те зависимости, которые вам нужны для этого конкретного окна. Это упрощает установку * .rpm.
И yumdownloader, и yum --downloadonly (по замыслу) чувствительны к существованию уже установленных пакетов, и их следует запускать до установки любых пакетов или их зависимостей.
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 Это загружает пакеты и все их зависимости вместе с необходимыми зависимостями подуровня.
Последний вариант намного лучше для получения всех зависимостей, которые вам понадобятся для заполнения вашего собственного репозитория с одним исходным кодом.