我可以在 RHEL 主要版本中跨次要版本安装 rpm,例如在 RHEL 8.2 上安装 RHEL 8.4 软件包吗? (例如我的场景在最后提供)
我在此处看到一些有关更新 rpm 时兼容性的信息:https://access.redhat.com/articles/54483
它说 ”可以使用提供的工具(例如 dnf、yum 或 up2date)在初始安装主要或次要版本后安装选择性更新”
但是如果我直接在8.2上安装8.4 rpm,会兼容吗?
例如
运行,我yum list curl --showduplicates
看到RHEL 8.2
:
curl.x86_64 7.61.1-14.el8 repo
curl.x86_64 7.61.1-14.el8_3.1 repo
curl.x86_64 7.61.1-18.el8_4.1 repo
yum install curl
将安装最新可用的curl-7.61.1-18.el8_4.1
一对一RHEL 8.2
那么,类似的东西是否兼容(对于任何应用程序/命令),或者我确实需要安装el8_2
rpm(目前在存储库中不可用)?
答案1
是的,这是兼容的。在最坏的情况下,它会从 8.4 中引入一些其他软件包,但在大多数情况下它不会。
我不知道有哪个具体文件明确说明了上述内容,但是红帽企业 Linux 生命周期说
在红帽企业 Linux 主要版本的生命周期中,红帽会做出商业上合理的努力,以在所有次要版本和勘误表建议中维护核心运行时环境的二进制兼容性。
也许更实际的是,红帽企业 Linux 8 应用程序兼容性指南说,关于兼容性级别 2,
API 和 ABI 在单个主要版本的生命周期内保持稳定。兼容性级别 2 应用程序接口不会因次要版本而发生变化,并且应用程序可以依赖其在主要版本期间保持稳定。兼容性级别 2 是 Red Hat Enterprise Linux 8 中软件包的默认设置。未标识为具有其他兼容性级别的软件包可能被视为兼容性级别 2。
所有这一切意味着 8.4 中提供的兼容级别 2(或 1)的软件包将与以前的次要版本中的软件包一起使用。给定次要版本中的软件包可能需要同一次要版本中的其他软件包;在这种情况下,将适当定义包依赖项,并根据需要升级其他包。兼容性指南提供了包含更多信息的链接,包括例外列表(兼容性级别 3 或 4 中的包)。curl
明确列在兼容性级别 2 中。
顺便说一句,您的包裹清单已过时;curl
RHEL 8 的最新版本是版本7.61.1-25,修复了 7.61.1-18 以来的多个漏洞。