我目前有一个元包 rpm,其中包含对其他 rpm 包的依赖列表。
如果预安装脚本失败(即返回非 0 的值),我想停止元包(以及所有后续包)的更新/安装事务。
我尝试将测试条件放入元包预安装脚本中,这似乎是合理的,但发生了以下情况:
# yum update my-package
- 元包检查哪些依赖包需要更新/安装
- 运行元包预安装脚本并失败(在这种情况下)
- 继续更新过程并更新后续包(!)
因此,我最终陷入了这样的境地:
- 元包版本未更新
- 所有依赖包可能更新至较新版本
如果元包包含其他包所需的数据,这显然会导致一些严重的问题。
如果预安装条件失败,有什么办法可以停止整个交易吗?
笔记:我也尝试过使用 rpm 命令进行更新过程,但是也没有作用。