如何根据 %pre 脚本的结果让我的 RPM 中止安装

如何根据 %pre 脚本的结果让我的 RPM 中止安装

我正在创建一个 RPM 包,用于在系统上安装一些工具。我想在安装 RPM 包之前检查一些机器状态。我的第一反应是直接在%前scriptlet,如果结果不是我想要的,则“退出 1”。但后来我遇到了其中写道:

所有脚本必须以零退出状态退出。

是否有其他方法可以让 RPM 根据 shell 命令的结果中止软件包的安装?

答案1

在脚本中以非零状态退出肯定会中止软件包的安装,但这确实有副作用。您链接到的文档还讨论了以非零状态退出脚本的含义。在尝试实现这一点之前,您应该仔细阅读并理解这一点。

如果在脚本中没有绝对必要中止安装,则不应该这样做。

例如,如果安装软件包不会损害系统,但软件包中的程序无法运行,则应允许安装继续,并在其他地方决定是否安装软件包。您的配置管理系统是进行此操作的理想场所。

相关内容