我最近弄坏了我的家庭服务器,现在正在寻找一种更有效的方法来做事情。我想/etc
在我的/home/webserver
目录中使用。这将覆盖普通/etc/
文件。
例如:/home/webserver/etc/mysql/my.cnf
将覆盖/etc/mysql/my.cnf
。或者,如果我创建一个文件~/etc/nanorc
,它将覆盖/etc/nanorc
等等。
我该如何在 Debian 最新发行版下做到这一点?
答案1
这取决于执行配置处理的程序。例如,git
依次在多个目录中查找配置数据,使用第一个找到的文件。其他程序可能只使用按某种顺序找到的第一个文件,其他程序则只使用通用配置。
你可以用它玩游戏chroot
,也可以在里面安装自己的游戏etc
,但那将以让我不寒而栗的混乱告终。
慎重考虑为什么每个程序都使用其特定的配置机制(不,这不是随机的;每个程序都经过了长时间、详细的考虑),并了解如何使用让它对你有利,而不是试图解决它。
答案2
最后,似乎没有“神奇”的解决方案(自动覆盖)。所以我设置了指向我手动修改的文件的符号链接(即 /etc/mysql/my.cnf ==指向==> ~/etc/mysql/my.cnf)。
例如,Apache2 将递归查找 conf 目录,这使得使用目录的符号链接成为可能。这种方式不需要为每个文件创建一个链接。