我使用配置管理系统,我认为很常见的是,我的 CM 软件只是复制粘贴配置文件,将它们部署到我的 Linux 服务器上,盲目地破坏那里的一切。但在大多数情况下,我的配置文件应该只是对底层 Linux 发行版提供的“基本”配置文件进行简单的更改或调整。
每当“基本”配置文件发生变化时 - 也许操作系统包管理器想要推出具有更安全默认值的更新配置文件,也许我们正在一些新主机上安装新版本的 Ubuntu - 我们必须检查配置文件以验证它们没有改变或者我们没有破坏我们想要保留/更新模板的任何内容,如果是的话,则在新版本上“重新应用”我们的更改。
用 git 术语来说:这类似于将您自己的更改重新定位到不断变化的上游主服务器上。
简单patch
可以让我们获得一些距离,但它不会跟踪上游变化和我们的变化之间共享的共同祖先,因此它没有那么强大的重新定基逻辑,AFAICT,以及更多关于移动行号等的嘈杂警告。
是否有任何工具或 CM 软件以这种方式管理配置文件?
答案1
带有奥吉阿斯的木偶可以做你想做的事,但我质疑不简单地管理整个配置文件(可能使用模板)的价值。
我希望您在实验室环境中测试升级,并在必要时修改模板配置文件。无论如何,您都需要测试,即使使用 augeas,因为无论它做什么,都可能变得像完全模板化的配置文件一样无效。