c't 20/2018
S. 166
Praxis
Konfigurationsmanagement
Aufmacherbild

Protokollant

Linux-Konfigurationsdateien verwalten mit Etckeeper

Wer unter Linux Konfigurationsdateien und deren Änderungen bis ins Detail verfolgen möchte, findet in Etckeeper den richtigen Helfer. Das Programm speichert die Dateien in Git und macht alle Änderungen nachverfolgbar. Damit ist ein kleiner unbemerkter Fehler beim Bearbeiten der Systemkonfiguration schnell beseitigt.

Die zwei Optionen kann ich ja eben noch setzen, da wird schon nix passieren – denkt man oft genug. Ein paar Stunden später sitzt man verzweifelt vor einem verfummelten Serversystem. Verstellte Dienste und kaputte Konfigurationsdateien sind schwer wieder instand zu setzen. In den Backups liegt vielleicht genau die funktionierende Iteration der Konfigurationsdatei nicht. Etckeeper hilft: Es sichert bei jeder Paketinstallation, täglich und auch manuell den Stand der Dateien in /etc. Im Hintergrund greift es auf ein Versionskontrollsystem zurück. Die Entwickler empfehlen Git, auch wenn man andere wie Bazaar oder Mercurial einsetzen kann. Wer sich mit Git auskennt, findet sich praktisch sofort zurecht. Für Git-Neulinge erklären wir ein paar Grundlagen im Kasten auf Seite 168. Wer tiefer in die Materie einsteigen will, findet in [1] mehr Informationen.

Im Gegensatz zum normalen Verfolgen von Änderungen in Dateien durch Git müssen bei Konfigurationsdaten auch die Dateiberechtigungen überwacht werden. Die Änderungen von Leserechten können in /etc relevant sein, denn vorsichtige Software verweigert sofort den Dienst, wenn etwa private Schlüssel auf einmal globale Leserechte haben. Mit dem einfachen Zurückspielen von Dateiinhalten ist es also dort nicht getan. Etckeeper achtet daher auch auf Rechteänderungen und speichert diese zusätzlich ab. Auf Extended Attributes, wie sie für SELinux notwendig sind, versteht es sich jedoch nicht.