Redhat
告訴 yum 安裝我的包依賴項的確切版本
我想安裝一個名為
pA
.
- 包
pA-1.0.0-0
取決於包pB-1.0.0-0
。- 在 yum 儲存庫中,可以同時找到
pB-1.0.0-0
和pB-1.1.0-0
。- 包
pA-1.0.0-0
與 不兼容pB-1.1.0-0
,並且此資訊在 RPM 中未提及,pA
因為在打包pB-1.1.0-0
時不存在。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
手動處理 ’s 依賴項:在我的真實場景中,有無數的依賴項我不會單獨安裝rpm
.
無法直接執行您的要求,但您可以在安裝主軟體包之前安裝特定版本的依賴項:
yum install pB-1.0.0-0 yum install pA
為了防止
pB
在更新系統的其餘部分時被升級,您可以使用該versionlock
外掛yum
:yum install yum-plugin-versionlock yum versionlock pB-*
這將鎖定在
pB
鎖定到位時安裝的任何版本的版本。請參閱如何限制 yum 將軟體包安裝或升級到固定的特定軟體包版本?編輯:如果您不想/不能處理在所需版本中手動安裝依賴項,您可以添加 deps 列表及其版本
/etc/yum/pluginconf.d/versionlock.list
以確保在 install 時安裝特定版本pA
。