控制 yum 依赖项的安装顺序?

控制 yum 依赖项的安装顺序?

我需要安装一个具有 4 个依赖项的应用程序(来自 .spec 文件):

Requires: PA-KBU-KBUONE-SHARED
Requires: PA-KBU-KBUONE-PLI-CONF
Requires: PA-KBU-KBUONE-PLA-CONF
Requires: PA-KBU-KBUONE-PLA-BIN

这 4 个依赖项必须按该顺序安装(第一个 SHARED,第二个 PLI-CONF 等),但是当我执行 yum install app 时,yum 会对该列表进行排序:

Installing:
app                             noarch            10.0.0-1              localrepo            1.4 k
Installing for dependencies:
PA-KBU-KBUONE-PLA-BIN             noarch            10.0.0-1            localrepo             20 M
PA-KBU-KBUONE-PLA-CONF            noarch            10.0.0-1            localrepo            2.5 M
PA-KBU-KBUONE-PLI-CONF            noarch            10.0.0-1            localrepo             10 k
PA-KBU-KBUONE-SHARED              noarch            10.0.0-1            localrepo            7.1 k

有没有办法控制 yum 安装依赖项的顺序?

答案1

据我所知,SPEC 文件和 yum 都没有任何(命令行)开关来确定依赖项的安装顺序。我认为它们通常按字典顺序排列。

关于依赖项的唯一要求通常是,必须先满足依赖项,然后才能安装依赖于它们的包。如果顺序是 所需及事项你可能做错了什么,这不是依赖问题在应用程序包中

要强制自动订购,您实际上只有一个选择:

  • 在这些包中包含正确的依赖项,这些依赖项本身也是依赖项,即
    PA-KBU-KBUONE-PLI-CONF 需要 PA-KBU-KBUONE-SHARED
    PA-KBU-KBUONE-PLA-CONF 需要 PA-KBU-KBUONE-PLI-CONF 等等,
    并以此方式生成依赖链。

当然,您总是手动按照正确的顺序排列它们,或者按顺序安装软件包,并且通常当在单个 yum 命令行上选择多个软件包时,它们也会按照该顺序安装。

答案2

我可以说你实际上并没有安装这些软件包,否则你就不会问这个问题了。

通常,yum 已经做到了这一点,在需要依赖项的包之前先安装依赖项。只有在列出要安装的包时,才会对它们进行排序,以方便使用。

相关内容