Open Source im professionellen Einsatz
Linux-Magazin 07/2016
© Igor Yaruta, 123RF

© Igor Yaruta, 123RF

Aus dem Alltag eines Sysadmin: Etckeeper

Jungbrunnen

Konfigurationsdateien verändern sich im Leben fast jedes Linux-Systems. Doch nicht immer zum Guten – manchmal degenerieren einzelne "/etc"-Dateien regelrecht. Dann ist "Sysadmin"-Kolumnist Charly Kühnast froh, einen Status aus besseren Tagen wiederherstellen zu können.

444

Über Ascii-Lifting mit Etckeeper hat das Linux-Magazin bereits berichtet ([1], [2]). Das Tool gehört zum Begleitgeschwader vieler Distributionen und findet sich ansonsten unter [3]. Auch Git muss natürlich auf dem Rechner installiert sein. Wer Git auf dem System noch nicht benutzt hat, sollten ein paar grundlegende Einstellungen vornehmen:

git config --global user.name "Charly"
git config --global user.email "charly@example.com"
git config --global core.edito "vim"

Da ich die Etckeeper- und Git-Kommandos mit »sudo« ausführen werde, verhindern diese Einstellungen, dass sich der »root« -Benutzer als Committer einträgt.

Den Zustand der Jugend konservieren

Zunächst muss ich das neue Repository initialisieren, dann speichere ich darin erstmalig alle »/etc« -Dateien:

cd /etc
sudo etckeeper init
sudo etckeeper commit "Initial etc commit"

Manche Distributionen, Ubuntu etwa, führen diesen Schritt automatisch bereits beim Installieren von Etckeeper aus. In diesem Fall sehe ich eine Ausgabe wie:

> On branch master
> nothing to commit, working directory clean

Manchmal will ich nicht alle Daten in der »/etc/« im Repository haben. Welche Verzeichnisse Etckeeper ignorieren soll, teile ich Git über die Datei ».gitignore« mit, und zwar gleich nach der Zeile »# end section [...] etckeeper« :

# end section managed by etckeeper
ghostscript/*

Nun sind aber seit dem ersten Commit alle Daten aus »/etc/« schon im Repository. Ich muss die unerwünschten also manuell entfernen:

sudo git rm -r --cached ghostscript/*

Zur Demonstration ändere ich eine Kleinigkeit an der »/etc/postfix/main.cf« . Und tatsächlich: »sudo git status« zeigt an, dass Git beim Vergleich der Daten mit dem Repository den Unterschied bemerkt (Abbildung 1).

Abbildung 1: Wenn jemand etwas in /etc konfiguriert hat, bemerkt Git beim Vergleichen mit dem Repository den Unterschied.

Jetzt darf ich die neue Version einchecken:

sudo git commit -a -m "main.cf changed"

Eine Übersicht über alle Aktionen liefert »sudo git log« :

commit 9695e06a8175bd5cf485316f20d8fb6d6fcc1e49
Author: Charly <charly@example.com>
Date:   Wed May 11 14:18:50 2016 +0200
    main.cf changed

Wichtig: Das Ganze implementiert eine Versionierung, kein Backup! Etckeeper und Git helfen Änderungen in Konfigurationsdateien nachzuvollziehen und notfalls zurückzurollen – aber das ist ja schon viel für alle, die etwas kaputtkonfiguriert haben.

Infos

  1. Mathias Huber, "Etckeeper stellt Systemkonfiguration unter Versionskontrolle": http://www.linux-magazin.de/Online-Artikel/Etckeeper-stellt-Systemkonfiguration-unter-Versionskontrolle
  2. Markus Stubbig, "Wie sich Admins die ungeliebte Dokumentation erleichtern": Linux-Magazin 11/15, S. 76
  3. Etckeeper: https://github.com/joeyh/etckeeper

Der Autor

Charly Kühnast administriert Unix-Systeme im Rechenzentrum Niederrhein. Zu seinen Aufgaben gehören Sicherheit und Verfügbarkeit der Firewalls und der DMZ.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 1 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Einführung

    Charly Kühnast kann sich noch gut an die Zeit erinnern, als das Einbinden und die Funktionsprüfungen eines SSL-Zertifikats eine einfache Sache war. Jetzt hat er ein Shellskript gefunden, das trotz des Wirrwarrs an Schlüsselprotokollen und Ciphers klare Auskünfte erteilt.

  • Etckeeper stellt Systemkonfiguration unter Versionskontrolle

    Erfahrene Sysadmins empfehlen, neben den selbst geschriebenen Skripten auch Konfigurationsdateien unter Versionskontrolle zu stellen. Das GPL-Tool Etckeeper ergänzt die Fähigkeiten von Git und Konsorten und bringt die Schäfchen des Admins ins Trockene.

  • Zodiac FX

    Weil White-Label-Switches mit Picos für das Heimlabor fast unerschwinglich sind, trat Northbound Networks mit einer Kickstarter-Kampagne an, um diese Lücke zu schließen – heraus kam der Zodiac FX.

  • System-Dokumentation

    Niemand nimmt dem Admin das Dokumentieren einer Systemlandschaft ab. Doch viele Kapitel können nützliche Programme wie Etckeeper oder Sosreport beisteuern. Dieser Artikel zeigt, wie einzelne Tools Hand in Hand arbeiten und zu einer umfassenden Dokumentation beitragen.

  • Online-Artikel: Systemkonfiguration mit Etckeeper verwalten

    Unter "/etc" befinden sich unter Linux/Unix die Konfigurationsdateien für das System und viele Anwendungen. Das Tool Etckeeper hilft dem Admin, sie zu verwalten. Ein neuer Online-Artikel stellt das GPL-Programm vor.

comments powered by Disqus

Ausgabe 09/2017

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.