【问题标题】:Side by side RPM versions并排 RPM 版本
【发布时间】:2011-04-15 17:30:05
【问题描述】:

如果有的话,设计 RPM 以便多个版本可以通过 YUM/RPM 并排安装而不会相互影响的“正确”方法是什么?对于图书馆,正确的答案似乎与 sonames 相关,尽管我找不到任何关于 sonames、符号链接和 RPM 如何相互交互的好信息。我不知道应该如何命名/放置可执行文件和普通文件以便并排放置。就可执行文件而言,正确的行为似乎是将较新的版本放在 PATH 上,但如果卸载较新的 RPM,则将较旧的版本放在 PATH 上。

【问题讨论】:

    标签: rpm yum rpm-spec


    【解决方案1】:

    基本上你需要确保版本不冲突:

    • 要求/冲突部分不得有冲突的要求
    • 每个文件名只能存在于一个版本中 - 除非它们相同
    • Scriptlet (%post ect) 如果你有它们必须合作

    请注意,您将无法使用 yum 安装多个版本,因为 yum 旨在一次安装一个版本 - 内核除外。如果您使用 yum 安装/更新软件包,所有旧版本都将被删除。因此,您需要为每个版本使用 rpm -i。

    关于路径中包含更新的二进制文件,无法正确执行此操作。您要么需要执行类似 python 的操作,用户必须在命令行上指定 python 或 python3,要么您必须在所需二进制文件的路径上创建符号链接。这必须在小脚本中完成,并且管理它是一个相当大的挑战。这也意味着符号链接不属于任何包。

    【讨论】:

    • 所以不幸的是,答案似乎是它不能以任何有用的方式完成。 :-(
    • 我认为如果您尝试在备用根目录上安装 rpm - 可能会对您有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-30
    • 2016-01-26
    • 1970-01-01
    • 2021-10-30
    • 2018-07-01
    • 1970-01-01
    相关资源
    最近更新 更多