我正在编写一个RPM
spec文件来安装和更新守护进程。我想确保在更新期间将任何现有配置文件适当地重命名为.rpmsave
.rpmnew
。为此,我使用%config(noreplace)
,它似乎正确地重命名。另外,我有一个命令在%post
钩子中执行条件重启,它也能正常工作。
我遇到的问题是,当%post
挂钩执行时,配置文件似乎尚未重命名,这导致我的服务无法启动。
是否有重命名后运行的rpm挂钩,如果没有,我可以采取其他方法。我已经考虑使用rpm -V
来检查配置文件是否已被用户编辑并在%post
中执行自己的重命名,但我真的不想这样做,因为它正在重现{{1}的行为1}}。
答案 0 :(得分:2)
尝试%posttrans hook https://fedoraproject.org/wiki/Packaging:Scriptlets。它应该在安装结束时运行。