如何创建一个 Debian 软件包,在升级时始终覆盖 /etc 下用户编辑的文件?

问题描述 投票:0回答:1

我创建了一个 Debian 软件包,其中的文件深深嵌套在 /etc 下。 (我正在为这个自定义包使用本地存储库。)

该软件包将部署在没有前端的嵌入式系统上。 确保文件与包匹配比保留用户修改更重要。 /etc 下的包文件不应有用户修改,但我想确保升级时任何意外的用户修改(损坏)都是正确的。

我注意到当我手动修改/etc/.../my_file并将软件包升级到最新版本时,/etc/.../my_file仍然包含我的修改并且与软件包中的文件不匹配。 我什至不记得有人问过我是否要保留本地版本或软件包版本(就像我经常使用“真正的”Debian 软件包一样)。

我明白为什么保留本地修改对于普通包来说是正确的,但我需要覆盖它。

如何使 /etc 下的 Debian 软件包文件始终覆盖本地更改? 理想情况下无需提示。

debian debian-packaging
1个回答
0
投票

你不能也不应该这样做。您所描述的内容严重违反了 Debian 政策。

您可能想问的是“如果本地管理员没有修改类似配置的文件,我该如何将其从该软件包的先前版本升级到新版本?” ucf为此提供了逻辑。

也许另请参阅
https://www.debian.org/doc/debian-policy/ap-pkg-conffiles.html

© www.soinside.com 2019 - 2024. All rights reserved.