5

如果某些条件为假,我正在寻找一种退出 rpm 安装的方法。我在 %pre 部分添加了一个小脚本,如果我的条件失败,它将退出安装。

我面临的问题是我看到执行了 %pre scriptlet,并且 rpm install 确实失败了。然而,在它的最后,我得到了这两条我不想要的线——Installed ... 其次是 Complete!

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!
4

2 回答 2

4

如果你需要这个只是为了确保文件系统中有某个文件,你可以做简单的

Requires: /path/to/expected/file

否则你可能确实不走运。

我可以想到极其丑陋的解决方案,这将涉及从 scriptlet 中杀死 rpm,但这超出了邪恶 :-)

于 2012-03-30T13:04:38.317 回答
0

您是否尝试使用验证脚本? 编写验证脚本

于 2012-04-01T06:56:51.213 回答