如果某些条件为false,我正在寻找退出rpm安装的方法。我在%pre部分添加了一个小脚本,如果条件失败,退出安装。
我面临的问题是我看到%pre scriptlet已执行,rpm安装失败。然而在最后我得到了这两行我不想要的东西 - 已安装......其次是完成!
Downloading Packages:
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
missing file zyWhg1. exiting install..
error: %pre(tyr-3.2.1.x86_64) scriptlet failed, exit status 255
error: install: %pre scriptlet failed (2), skipping tyr-3.2.1
Installed: tyr-3.2.1.x86_64 0:3.2.1
Complete!
答案 0 :(得分:4)
如果你需要这个只是为了确保文件系统中有某个文件,你可以做简单的
Requires: /path/to/expected/file
否则你的确可能会失败。
我可以想到非常丑陋的解决方案,这将涉及从scriptlet中杀死rpm,但这超出了邪恶: - )
答案 1 :(得分:0)
您是否尝试使用验证脚本? Writing Verification Scripts