Etckeeper
Présentation
etckeeper est une collection d’outils permettant de nversionner /etc dans un dépôt git, mercurial, bazaar ou darcs. Cela vous permet d’utiliser votre gestionnaire de versions préféré pour revoir ou annuler les modifications apportées à /etc.
etckeeper s’interface avec les outils de gestion de paquets tel que apt ou yum pour valider automatiquement les modifications de fichier lors de l’installation ou la suppression d’un paquet. Il est également capable de suivre des informations non prises en charge par votre outil de suivie de versions, comme par exemple les dossiers vide ou les droits sur les fichiers.
Installation
Sur debian like : apt-get install etckeeper
Sur Redhat like : yum install etckeeper
Il est nécessaire sur Rhel6 et 7 d’ajouter les dépôts Epel.
Configuration et initialisation
Le fichier /etc/etckeeper/etckeeper.conf permet de définir l’outil de suivi de versions choisi. Par défaut c’est git qui est utilisé.
Une fois etckeeper installé, il faut se placer dans le répertoire /etc et executer la commande etckeeper init
pour initialiser le dépôt et ajouter le fichier .gitignore (ou équivalent).
Ensuite il suffit de lancer la commande etckeeper commit
pour valider la première version des fichiers.
Utilisation
etckeeper commit
permet de valider les modifications quel que soit l’outil de suivi de versions utilisé.
Lors de l’installation d’un paquet avec yum ou apt, etckeeper va commiter le dossier /etc avant et après l’installation du paquet.
Astuces
Il arrive parfois que certains fichiers soient suivis alors qu’ils changent de façon automatique tous les jours. Il est donc nécessaire d’arréter de les suivre:
$ git rm --cached printcap
$ echo printcap >> .gitignore
$ git commit -a -m "ne plus suivre printcap"