我一直在研究如何使用rpmbuild规范文件来更新现有的配置文件。
例如,在我的rpm中,我想在配置文件中添加行,例如/etc/stunnel/stunnel
[SomeAppName]
accept = 8006
connect = 127.0.0.1:5006
我目前在我的%安装部分中有这个:
cat stunnel/stunnel.conf >> %{buildroot}/etc/stunnel/stunnel.conf
现在显然这是垃圾,因为每次运行rpm时都会将相同的行添加到配置文件中。
我也不希望/etc/stunnel/stunnel.conf
文件成为我的rpm的一部分,因为当我擦除rpm包时我不想删除它。
我的问题是:
我在Max Rpm查看了官方指南,但到目前为止,我还没有找到问题的答案。
答案 0 :(得分:2)
a)出于这个原因,许多现代工具还支持与平面文件并行的.d配置目录。例如,我的Debian wheezy发行版将/ etc / stunnel视为每个.conf文件是一个单独的stunnel配置的目录。
b)既定的替代方案似乎是像
这样的条件结构grep -q '[SomeAppName]' %{buildroot}/etc/stunnel/stunnel.conf || cat ...
(或者,如果不确定stunnel.conf是否已经存在)
grep -s '[SomeAppName]' %{buildroot}/etc/stunnel/stunnel.conf || cat ...