嗨Serverfault社区,
那么,在生产Unix / Linux系统上pipe理各种configuration文件备份的最佳实践是什么?
例如(为什么我问)。 我是一个pipe理一些生产半径服务器(FreeRADIUS)的团队的一员。 我们需要一种方法来高效地pipe理,logging和备份对configuration文件的更改。
现在我只是用configbackups添加了一个dir,并在备份中添加了一个date。 问题是各种configuration都存储在整个系统,现在有方法可以轻松地跟踪所做的更改和快速恢复。 再加上它从长远来看成为一个令人讨厌的混乱。
有任何想法吗?
此外,任何问题或答案,有伟大的想法/脚本用于备份的链接将不胜感激。
谢谢!
有两种方法可以做到这一点:
一种推荐的方法是使用Puppet或Chef来跟踪和pipe理所有更改。 我宁愿Puppet,因为它的易用性。 Puppet会对其任何客户端上任何configuration文件中的任何更改保持完整的跟踪,所以您可以轻松跟踪这些更改并在发生任何问题时还原它们。
秒解决scheme是使用SVNpipe理所有的configuration文件,例如/ etc目录将检出一个SVN版本库,每当你必须在任何文件做任何改变,只需使用svn commit命令。 这样,所有的configuration文件都会有SVN维护的版本。
我build议第一种方法,这是一点复杂,但最好的。
今天的最佳做法是使用某种forms的configurationpipe理系统 。 你可以很容易地将其与版本控制系统耦合。
在这个领域有很多select,但是以Puppet为中心的解决scheme可以确保跨系统的configuration文件是一致的。 这实际上是一种文档forms。
然而, 这已经在这里被覆盖了 …没有单一的最佳解决scheme,但是你可以整合部分解决scheme,并将它们塑造成适合你的环境/政治/业务需求。