我正在尝试使用rpm -upgrade命令,注意到rpm有不同的方式来处理修改后的配置文件,这样它就不会在升级过程中丢失。据我所知,如果修改了配置文件并使用rpm文件升级了包,则rpm会将原始属性文件重命名为{ -U }.rpmsave,并使用原始文件名{ file }安装新的配置文件。
但是,当我尝试使用我创建的包运行rpm文件时,我实际看到的是原始配置文件被删除,新的配置文件被重命名为{ -U }.rpmsave。这是预期的行为吗?在我的安装脚本中,我还用"sed“修改了配置文件中的一些文本。这是否会影响rpm在升级过程中处理配置文件的方式?
发布于 2013-01-25 07:50:13
这是预期的行为。如果您希望配置文件永远不会被覆盖(并移动到.rpmsave),请在rpm .spec文件中使用%config(noreplace)
而不是%config
,并且该文件不会被替换。相反,rpm包中的新文件将被创建为.rpmnew,而其中的文件将保持原样。
https://stackoverflow.com/questions/14511334
复制相似问题