often need edit many configuration files under /etc
, however, don't want these changes lost when i'll perform next system upgrade.
right now, i've housed configuration files of maintenance scripts in /opt/admin
, , symlinked /etc
targets there, doesn't seem right according standards i've seen. option thought of, housing these in /usr/local
. aforementioned document says for use system administrator when installing software locally. that's closest i've got. however, /usr/local
gets clobbered when install new non-packaged software.
is there standard/largely followed best-practice how maintain these? since not discussion page, answers should definite , article or 2 support them.
edit
since rightfully put on hold thought i'd redirect similar question in server fault.
there seem 2 general solutions - either use symlinks or maintain list of files (see ptman's answer in linked question).
for now, i'm using hybrid solution: maintain list of configuration files (/opt/admin/config/files
). script (/opt/admin/scripts/link-config-files.sh
) creates symlinked hierarchy (under /opt/admin/config
). files accessible 1 place, it's clear they're located, there's central list of files maintained (no need manually link), , simple backup of /opt/admin
includes configuration. here's script.
thanks jim, answer.
i keep parallel directory tree under user directory
/home/myuserid/config/hostname/ var .... etc sysconfig network
and on. have deploy
shell script install files correct place. private externally hosted git account.
i editing on copies in above parallel tree , deploy modified files.
if have more few systems maintain way, tools puppet or chef seem possible options, though come own headaches. disciplined, repeatable system administration not trivial.