Debian DEB 包替换配置文件

Debian DEB 包替换配置文件

我创建了一个自定义的 debian 包,需要替换某些配置文件,例如 /etc/ssh/sshd.conf。如果这些文件存在,它不会替换它们。从 deb 包强制覆盖这些文件的最佳方法是什么(如果可以毫无疑问地实现)。

谢谢

答案1

首先:不要这样做。配置文件应该只属于一个包。最好使用一些配置管理。

如果你确实想这样做,你可能需要使用dpkg-divert维护者脚本(preinstpostrm等)来重命名原始配置文件。请参阅 grml 包的维护者脚本grml-etc-core以获取示例:

再说一遍:尽管dpkg-divert上面使用(对于实时 CD)来“覆盖”conffile,但预计它也不会那样工作,因此预计它可能会在某些不明显的情况下失败。

相关内容