Назад | Перейти на главную страницу

Скажите yum установить точную версию моих зависимостей пакета

Я хочу установить пакет с именем pA.

Это проблема при попытке установить pA с участием yum:

$ yum localinstall pA-1.0.0-0.el7.x86_64.rpm
...
Resolving Dependencies
-> Processing Dependency: pB >= 1.0.0 for package: pA-1.0.0-0.el7.x86_64
--> Package pB.x86_64 0:1.1.0-0.el7 will be installed # <-- version 1.1! ho no!

Есть ли опция командной строки в yum попросить его установить конкретную версию, требуемую для его зависимостей?
Конкретно здесь, чтобы установить pA-1.0.0-0.el7.x86_64 скорее, чем pA-1.1.0-0.el7.x86_64.

Примечание: я не могу иметь дело с pAзависимости вручную: в моем реальном сценарии существует бесчисленное количество зависимостей, которые я бы не устанавливал отдельно с rpm.

Невозможно напрямую сделать то, что вы просите, но вы можете установить определенную версию зависимости. перед установка вашего основного пакета:

yum install pB-1.0.0-0
yum install pA

Предотвращать pB от обновления при обновлении остальной системы, вы можете использовать versionlock плагин для yum:

yum install yum-plugin-versionlock
yum versionlock pB-*

Это заблокирует версию pB на том, что было установлено при установке замка. Видеть Как ограничить yum установкой или обновлением пакета до фиксированной конкретной версии пакета?

Изменить: если вы не хотите / не можете иметь дело с ручной установкой зависимостей в их требуемых версиях, вы можете добавить список зависимостей и их версий в /etc/yum/pluginconf.d/versionlock.list чтобы обеспечить установку определенных версий при установке pA.