因此,默认情况下,大多数服务将其配置文件安装到/etc/<application>
.在我的身体的系统中,我使用 LVM 进行卷管理,特别是这样我可以在整理数据时回滚快照。
我从源代码安装了很多自定义应用程序,允许我设置它们的配置安装位置和读取位置,但默认情况下它们通常相当随意 - 它们从$HOME
或源代码中的特定目录读取树,有时/etc/<application>
。
我正在努力修复这些问题,以便让它们全部使用存储在标准位置的配置运行 - 这可能意味着创建/etc/<app>
自己并将它们存储在该位置(尽管我不确定这对于从 src 运行的应用程序来说是否是一个不好的做法) ),我突然想到,如果我可以将它们保存在/etc
存储在完全独立的分区/逻辑卷上的子目录中,那么如果(无论出于何种原因)我需要重建服务器,我可以大吃一惊/root
保留配置分区,只需将其重新安装到位,然后将服务指向现有的配置文件。
我快速进行了一些挖掘,发现/etc/local
,它似乎是为此目的而制作的,但我发现几个文档说我自己不应该使用它。我的 Ubuntu 14.04 服务器上似乎不存在该目录。
将它们移动到单独的分区/配置文件夹还可以让我轻松备份它们(我可以将 rsync 指向根目录并使用单个命令备份所有内容)/cron 作业)。
除了我的“源安装”应用程序之外,我还考虑尝试将我的 DNS/DHCP/iptables/nginx/apache 配置也移到那里 - 即具有广泛配置并需要备份的应用程序,如果我重建服务器无论出于何种原因,我都希望保留这些配置。
编辑:仔细查看后,它看起来/usr/local/etc
是一个不错的位置,并且将其放在单独的分区上不会导致任何问题。
对此有什么建议吗?
答案1
看着将 /etc 移动到单独的分区由于某些原因,很难(如果不是不可能的话)使用单独的分区/etc
或其子目录。
您可能会发现etckeeper
对您的用例有用;它允许保留/etc
在版本控制系统中,例如git
,这意味着您可以轻松地在其他地方维护包含所有历史记录的副本。
如果您要管理多台计算机,那么您应该真正考虑使用集中式配置管理,例如cfengine
、puppet
、chef
、ansible
...