rom*_*ovs 4 configuration etc directory-structure home
好吧,这可能不是一个非常具体的问题,并且可能会受到口味的影响,但我正在努力解决这个问题,所以就这样吧。
我有一台电脑。这台计算机上装有 linux(谢天谢地)。Arch Linux 是特定的(使用awesome
wm)。我是这台计算机上的单一用户。
至于好的做法,我已经设置了两个用户:root
用户和日常romeovs
用户。这样我只在需要时使用权限(sudo
例如使用)。
多年来,我一直在使用我的软件套件,为这台计算机添加了一堆应用程序。值得注意的是:vim
, git
, mpc
, mutt
, calcurse
, ufw
, ...
现在问题来了:我该使用这些应用程序的哪些配置文件?所有这些都提供了一个/etc
基于 -based 的全局配置文件,它会影响所有用户,以及一个本地 ~/.config
(或者,可悲的是~/
)配置选项。
我一直使用本地配置设置工作,因为这感觉更自然。但随着我越来越熟悉我的电脑,我觉得这在某种程度上缺乏优雅。这种方法的反面是:
切换到root
用户时的差异,即使sudo
(例如使用时vim
)
并不总是有效,例如当从 arch linuxDEAMONS
阵列加载守护进程时,它们由root
用户运行,因此不会获取本地用户配置。
主要$HOME
目录混乱。遗憾的是,很少有应用程序遵循这一$XDG_CONFIG_HOME
理念。
好处是:
东西是本地的,这更像是在root
和之间拆分权限的行romeovs
。
快速轻松地访问文件。无需sudo
编辑它们。
更容易git
跟踪配置文件。
不知何故感觉更安全:用户可以在不使用机器全局设置的情况下搞砸东西。
它更像是“a-package-update-may-overwite-my-config”-proof
让我们具体点:
在单用户机器上拆分配置的事实上的标准是什么,特别是对于系统维护者(单用户)?
Gil*_*il' 13
有一天,您要更换您的计算机,或者给其他人(例如家庭成员)一个您计算机上的帐户。
/etc
.您反对将配置文件放在主目录中的论点并不真正站得住脚:
sudo
保持HOME
环境变量(除非你告诉它不要)。因此,您的程序将继续从您的主目录读取它们的设置。/etc
,而不是通过环境变量或主目录中的文件进行配置。$HOME
应该有很多点文件。这就是为什么ls
不显示它们。