Dies ist eine alte Version des Dokuments!
ETCkeeper ist ein sehr nützliches Programm welches das kritische Verzeichnis etc/ unter Versionskontrolle stellt. Dies ist nützlich bei der Installation von neuen Packages, Änderungen in der Konfig und bei allgemeinen Backups. ETCkeeper wird außerdem automatisch ausgeführt wenn per aptitude
# sudo apt-get intstall "package"
neue Pakete installiert werden. Für ETCkeeper können unterschiedliche Versionverwaltungssysteme genutzt werden, am meisten Sinn macht jedoch GIT1), da es als einziges VCS2) auch symbolische Links verarbeitet und versionieren kann.
Zunächst muss GIT installiert werden:
# sudo apt-get install git-core
Danach wird noch der ETCkeeper installiert:
# sudo apt-get install etckeeper
Damit der ETCkeeper auch weiß was für ein VCS er nutzt muss ihm das in der Konfiguration mitgeteilt werden. Dazu wird die Konfigurationsdatei bearbeitet:
# sudo vi /etc/etckeeper/etckeeper.conf
Da standardmäßig das VCS „bazaar“ genutzt wird muss dieses auskommentiert werden und git angegeben werden. Die Konfiguration sieht dann folgendermaßen aus:
# The VCS to use. # VCS="hg" VCS="git" #VCS="bzr" # VCS="darcs" # Options passed to git commit when run by etckeeper. #GIT_COMMIT_OPTIONS="" # Options passed to hg commit when run by etckeeper. #HG_COMMIT_OPTIONS="" # Options passed to bzr commit when run by etckeeper. #BZR_COMMIT_OPTIONS="" # Options passed to darcs commit when run by etckeeper. #DARCS_COMMIT_OPTIONS="" # Uncomment to avoid etckeeper committing existing changes # to /etc automatically once per day. #AVOID_DAILY_AUTOCOMMITS=1 # Uncomment to avoid etckeeper committing existing changes to # /etc before installation. It will cancel the installation, # so you can commit the changes by hand. #AVOID_COMMIT_BEFORE_INSTALL=1 # The high-level package manager that's being used. # (apt, pacman-g2, yum etc) HIGHLEVEL_PACKAGE_MANAGER=apt # The low-level package manager that's being used. # (dpkg, rpm, pacman-g2, etc) LOWLEVEL_PACKAGE_MANAGER=dpkg
Damit der ETCkeeper funktioniert muss zunächst einmal ein lokales GIT-Repository angelegt werden und die Grundkonfiguration geschrieben werden.
Die Initialisierung geschieht im Verzeichnis /etc
einfach über
# sudo etckeeper init
Es sollte die Meldung Initialized emtpy Git repository in /etc/.git/
erscheinen.
Danach muss der Inhalt von /etc noch zur Versionskontrolle hinzugefügt werden:
# cd /etc # sudo git status # sudo git commit -m "initial checkin" # sudo git gc //gc komprimiert das Repository um Platz zu sparen.
Nachdem diese konfiguration vorgenommen wurde arbeitet etckeeper im Hintergrund und versioniert automatisch bei der installation von Paketen.
Bei manuellen Änderungen in der Konfiguration muss folgendermaßen vorgegangen werden um Änderungen zu versionieren:
# sudo git status # sudo git commit -a -m "MESSAGE"
Falls eine Datei in /etc zurückgesetzt werden kann dies einfach mit folgendem Befehl realisiert werden:
# sudo git checkout --<File>
Ein deutscher Artikel über ETCkeeper: http://www.linux-magazin.de/Online-Artikel/Etckeeper-stellt-Systemkonfiguration-unter-Versionskontrolle
Offizielle Seite: http://kitenet.net/~joey/code/etckeeper/
Offizielle Entwicklerbeschreibung und Tutorial: http://git.kitenet.net/?p=etckeeper.git;a=blob_plain;f=README;hb=27ca6c9eb668c9ab55cf65f8e620893589536c84
Bei Verwendung dieses Wikis erklären Sie sich mit dem Haftungsausschluss, Nutzungsbedingungen und der Datenschutzerklärung dieses Wikis einverstanden. Impressum.