有没有一个标准的方法来保持修改的Linuxconfiguration文件分离和可识别?

通常我需要在/etc下编辑许多configuration文件,但是,我不希望这些更改在我执行下一次系统升级时丢失。

现在,我已经把所有的configuration文件以及我的一些维护脚本放在/opt/admin ,并且在那里安装了符号链接/etc目标,但根据我所看到的标准 ,这似乎不正确。 我想到的另一个select是把它们放在/usr/local 。 上述文件说明在本地安装软件时供系统pipe理员使用 。 这是我得到的最接近的 但是,安装新的非打包软件时, /usr/local也会被破坏。

对于如何维护这些标准,有没有一个标准/很大程度上遵循的最佳做法? 由于这不是一个讨论页面,答案应该是明确的,并有一两个文章来支持。

编辑

由于这是正确的搁置我想我会redirect你在服务器故障类似的问题 。

似乎有两个通用的解决scheme – 使用符号链接或维护一个文件列表(请参阅ptman的链接问题的答案)。

目前,我正在使用混合解决scheme:维护configuration文件( /opt/admin/config/FILES )的列表。 脚本( /opt/admin/scripts/link-config-files.sh )创build一个/opt/admin/scripts/link-config-files.sh链接层次结构(位于/opt/admin/config )。 现在很容易从一个地方访问文件,清楚它们的位置,还有一个易于维护(不需要手动链接)的文件集中列表,而/opt/admin的简单备份包括所有configuration。 这是我的脚本 。

谢谢吉姆,你的回答。

我保持在我的用户目录下的并行目录树

 /home/myuserid/config/hostname/ var .... etc sysconfig network 

等等。 我有一个deploy shell脚本,将文件安装到正确的位置。 我将所有内容备份到私人的外部托管git帐户。

我在上面的并行树的副本上进行所有编辑,并部署修改的文件。

如果你有更多的系统来维持这种方式,像木偶或厨师这样的工具似乎是可能的选择,虽然他们自己的头痛。 纪律严明,可重复的系统管理不是微不足道的。