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.