So fügen Sie die Serverkonfiguration unter Linux in Git ein

So fügen Sie die Serverkonfiguration unter Linux in Git ein

Ich möchte zufällig ausgewählte Konfigurationsdateien/-verzeichnisse von meinem Server in ein Git-Repository übertragen. Damit meine ich nicht die Übertragung von /etc. Hier sind einige Beispiele:

/etc/named.conf
/etc/named/*
/var/named/*
/usr/local/apache/conf/*
/etc/php.ini
/etc/my.ini
/var/www/config.ini

und so weiter...

da git keinen symbolischen Links folgt, kann ich mit bind mounten, zB

mount /etc/named /REPO/etc-named -obind
mount /var/named /REPO/var-named -obind

Mir gefällt dieser Ansatz nicht, da er für jedes Verzeichnis ein Mount durchführt, aber zumindest ist er sicher und funktioniert korrekt.

Für Dateien kann ich Hardlinks erstellen, aber die Idee gefällt mir nicht besonders, da ich den Link leicht „verlieren“ kann, wenn ich etwas mache wie:

mv /etc/named.conf /etc/named.conf.old
cp xxxxx /etc/named.conf

irgendwelche Vorschläge, wie das geklärt werden kann?

Antwort1

Machen Sie es nicht auf diese Weise.

Verwenden Sie stattdessen ein Konfigurationsmanagementsystem (Ansible, Saltstack usw.). Behalten SiedieseDateien in der Versionskontrolle und verwenden Sie diese, um Konfigurationsänderungen auf Ihren Servern bereitzustellen.

Diese Vorgehensweise ist in vielerlei Hinsicht äußerst vorteilhaft: Sie verfügen über eine vollständige Offline-Sicherung Ihrer Serverkonfigurationen, Sie können diese Konfiguration problemlos auf mehreren Servern oder auf Test-/Entwicklungsservern usw. anwenden.

Ich weiß, dass dies wahrscheinlich nicht die Antwort ist, die Sie sich erhofft haben, aber allem Anschein nach ist dies die professionelle Art, Systeme zu verwalten.

verwandte Informationen