Etckeeper

2018-09-23 Git Gauthier C.

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"