为了pipe理服务器的configuration,我在版本控制下(在home文件夹中)保留了一些configuration文件(位于/ etc中),然后从它们的/ etc位置对它们进行符号链接:
/etc/someprog/c.conf -> /home/ubuntu/etc-config/someprog/c.conf
这是一个合理的方法吗? 任何潜在的缺点?
我注意到你添加git作为标签 – 听起来像/home/ubuntu/etc-config是一个git仓库,其中包含你所有的configuration。 在这种情况下,这听起来像是在尝试从中央位置pipe理configuration文件。 如果是这样,我强烈build议寻找一个真正的解决scheme。
看看傀儡,厨师,cfengine,或任何主要的configurationpipe理引擎。 其中许多是免费和开源的,广泛使用,并且通常非常容易设置和pipe理。 如果你试图使用“轻量级”的方法,你可能会后悔的。
如果这些在不同的文件系统上,那么这是一个非常糟糕的主意。 如果其他文件系统没有安装,那么你将有问题。
我不会使用像这样的符号链接。 如果你打断这个链接(出于任何原因),你会破坏configuration。 将server /守护进程/应用程序指向init脚本中configuration文件的实际位置是比较合适的。
如果你只是想要版本控制,看看RCS。 实际上,我发现git是一个糟糕的独立的服务器configuration解决scheme(没有locking,没有权限pipe理,整个目录成为回购)。 如果你需要更强大的configurationpipe理function,那么我强烈build议看一下木偶,厨师或CFEngine。