Du könntest für jede betroffene Config-Datei ein Template anlegen, das
an den Stellen, die variabel sein sollen, Platzhalter enthält. Die
eigentlichen Config-Dateien werden daraus durch sed oder einen
Makroprozessor wie bspw. m4 generiert. Jedesmal, wenn du die
Gesamtkonfiguration ändern möchtest, rufst du ein Shellskript mit einer
Liste von Key-Value-Paaren auf, das sed bzw. den Makroprozessor auf alle
Template-Dateien anwendet.
Edit:
Anstatt beim Umkonfigurieren das Skript manuell aufzurufen, köntest du
die Templates auch automatisch beim Zugriff durch sed bzw. m4 schleusen
lassen, indem du auf /etc ein Filesystem wie dieses mountest:
https://github.com/thkala/fuseflt
Das käme deiner Vorstellung wahrscheinlich am nächsten, ist aber
vielleicht etwas mit Kanonen auf Spatzen geschossen.
End Edit.
Alternativ könntest du für jede Config-Datei mehrere Instanzen
vorhalten, die sich an den gewünschten Stellen unterscheiden. Die
eigentliche Config-Dateien sind dann symbolische Links, die auf jeweils
eine dieser Instanzen zeigen und über ein Skript umgeschaltet werden
können. Diese Methode hat im Vergleich zur oben beschriebenen allerdings
den Nachteil, dass Änderungen in den Config-Dateien immer in allen
Instanzen vorgenommen werden müssen.