根据我的要求,所有服务器的 rpm 可能相同,但根据服务器环境(如生产、登台、测试或其他)只有一个配置文件更改。我有所有服务器的配置文件包,但我不想在规范文件中对其进行硬编码,或者无法为所有服务器创建不同的 rpm。可以在客户端上安装 rpm 时指定配置文件的名称边。
问问题
1032 次
2 回答
0
可能会重复这个,所以我会从那里复制我的答案......
我不认为有本地方式。我会%post
像你所说的那样做。
但是,我会这样做(类似于我为工作开发的仅限内部包所做的事情):
- 三个单独的文件
/etc/name.conf-developer
,/etc/name.conf-live
等等。 - 让所有三个包都提供一个虚拟包,例如
name-config
- 有主包需要
name-config
- 这将使
rpm
,yum
或任何需要在同一事务中安装至少一个的
- 这将使
- 让所有三个包相互冲突
- 将每个配置包的
%post
(和可能的%verify
)符号链接/etc/name.conf
到正确的配置- 这也有助于向用户展示正在发生的事情
缺点:
- 这有点骇人听闻
rpm --whatprovides /etc/name.conf
会说它不属于任何包
于 2012-12-04T23:34:23.160 回答