我想创建一个 RPM,其中包含一个文件供用户自定义,并使用初始默认模板配置。
如果用户编辑了该文件,我不想破坏该文件。我什至不想将用户文件移动到备份 - 我只想不管它。
是否可以在不编写某种安装后逻辑来测试是否将模板复制到目标路径的情况下?我可以将文件声明为"可编辑",以便在文件发生更改时不会被覆盖吗?
我想
你想使用
%files
%config(noreplace) /path/to/config/file
在这种情况下:
- 如果用户编辑了文件;即使在更新后,它也会始终保持原样
- 如果更新包含新模板;新模板将保存在"
/path/to/config/file.rpmnew
- 如果更新包含新模板;并且用户从未编辑过旧模板;则新模板将仅在"
/path/to/config/file
对%config
以及哪个文件保存在哪个用例中的出色阅读:http://people.ds.cam.ac.uk/jw35/docs/rpm_config.html