Login
Newsletter
Mi, 12. Oktober 2011, 15:30

Konfigurationsdateien mittels etckeeper verwalten

Einer der Vorteile von Unix-Systemen ist die Konfiguration mittels Text-Dateien und das Konzept der in Verzeichnissen enthaltenen Informationen. Eine solche Struktur ist geradezu prädisponiert, Änderungen, Ergänzungen aber auch falsche Handlungen zu erkennen und notfalls automatisch zu korrigieren. Abhilfe dabei verspricht etckeeper, das die Systemstruktur von /etc überwacht und notfalls eine volle Wiederherstellung von Konfigurationsdateien ermöglicht.

Schnell ist es passiert. Ein unüberlegtes Update, eine unbedachte Änderung oder eine einfach zu lange Nacht und die gerade noch vorhandene Konfiguration verschwindet für immer im Datennirwana. Glücklich sind hier jene, die ein Backup besitzen, denn manche Systeme konfiguriert man nur einmal – sei es wegen ihrer Robustheit oder der mentalen Dissoziation. Lösungen gibt es deshalb beinahe schon so lange, wie es wahrscheinlich Unix im allgemeinen gibt. Die einfachste davon stellt sicherlich die redundante Speicherung der Daten dar. Dabei spielt es keine Rolle, ob sie mittels eines Backups oder eines simplen Kopiervorgangs geschieht. In vielen Situationen bequemer sind allerdings spezielle Systeme, die eine automatische Überwachung des Verzeichnisses durchführen, Änderungen automatisch erkennen und die daraus resultierende Differenz speichern.

Ein solches System stellt etckeeper dar. Die Anwendung fungiert als Schicht zwischen dem Paketmanager und sichert selbstständig bei Updates oder Neuinstallationen die Änderungen des Verzeichnisses /etc. Unterstützt werden im Moment allerdings nur Distributionen, die auf APT (Debian, Ubuntu), YUM (RedHat, CentOS, Fedora) oder Pacman (Arch Linux) setzen. Anwender anderer Produkte können zwar prinzipiell auch die Applikation nutzen, doch werden sie viele Vorteile des Systems nicht vollständig nutzen können.

Ist etckeeper installiert und wurden Dateien verändert, die fatale Folgen für den Administrator hatten, kann mühelos zu einer Vorgängerversion der Konfigurationsdatei umgeschaltet oder das komplette Verzeichnis auf einen zuvor gesicherten Stand gebracht werden. Die Sicherung der Daten übernimmt dabei ein externes Versionsverwaltungssystem. Zur Auswahl stehen neben Bazaar auch Darcs, Git und Mercurial. Dementsprechend können Änderungen der Konfiguration mittels der systemspezifischen Tools überprüft und verwaltet werden. Anwender sollten allerdings beachten, dass die daraus resultierenden Vorteile auch diverse Nachteile haben. So werden unter Umständen sensible Dateien in einem Versionsverwaltungssystem abgelegt, die womöglich per Richtlinie nicht gespeichert werden dürfen.

Die Installation des Systems beschränkt sich bei den meisten unterstützten Distributionen auf die Installation des Pakets »etckeeper«. Ist das Paket installiert, bedarf es nur noch einer geringen Anpassung der Datei /etc/etckeeper/etckeeper.conf und einer Initialisierung mittels der Befehlskette:

etckeeper init
etckeeper commit "Initial version"

Sind die beiden Schritte durchgeführt, liegt das komplette /etc-Verzeichnis unter der Verwaltung von etckeeper und eines Versionsverwaltungssystems. Überprüft werden kann das im Falle von Git mittels:

cd /etc
git status

Wird nun eine neue Applikation installiert, speichert etckeeper automatisch vor und nach der Installation die Konfigurationsdaten. Hier ein Beispiel einer Installation von Dspam unter RHEL5:

[..]
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
etckeeper: pre transaction commit
  Installing     : dspam-libs             1/2 
  Installing     : dspam                  2/2 
etckeeper: post transaction commit
[..]

Doch auch eine manuelle Pflege der Daten ist möglich. Dazu reicht es, die üblichen Systemtools zu nutzen:

passwd demon
git status
git commit -a -m "changed a password"

Die Nutzung eines Versionsverwaltungssystems für die Verwaltung von Konfigurationsdateien ist sicherlich nicht neu. Interessant bei etckeeper ist allerdings gerade die Integration in die Systemtools und der daraus resultierende Automatismus bei der Installation oder einem Update. Dem entsprechend könnte die Anwendung nicht nur für nicht gesicherte Systeme interessant sein, sondern auch für Administratoren, die regelmäßig ein Backup des Konfigurationsverzeichnisses durchführen.

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten