创建一个提供用户可编辑配置文件的 RPM
Creating an RPM which delivers a user-editable configuration file
我想创建一个 RPM,其中包含一个供用户自定义的文件,具有初始默认模板配置。
如果用户编辑了该文件,我不想破坏它。我什至不想将用户文件移动到备份 - 我只想让它一个人呆着。
这是否可能,无需编写某种安装后逻辑来测试是否将模板复制到目标路径?我可以将文件声明为 "editable" 以便它在更改后不会被覆盖吗?
我想你想用
%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
我想创建一个 RPM,其中包含一个供用户自定义的文件,具有初始默认模板配置。
如果用户编辑了该文件,我不想破坏它。我什至不想将用户文件移动到备份 - 我只想让它一个人呆着。
这是否可能,无需编写某种安装后逻辑来测试是否将模板复制到目标路径?我可以将文件声明为 "editable" 以便它在更改后不会被覆盖吗?
我想你想用
%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