etckeeper

etckeeper permet de garder une trace des modifications effectuées dans /etc en le plaçant dans un dépôt CVS. Il interagit avec apt pour appliquer les changements automatiquement à /etc lorsque des paquets sont installés ou mis à jour. Mettre /etc sous contrôle de version est considéré comme étant une bonne pratique par la profession et le but de etckeeper est de rendre le processus aussi aisé que possible.

Installez etckeeper en tapant dans un terminal :

sudo apt-get install etckeeper

Le fichier de configuration principal, /etc/etckeeper/etckeeper.conf, est très simple. La principale option concerne le VCS à utiliser. Par défaut etckeeper iest configuré pour utiliser bzr comme système de contrôle de versions. Le dépôt est initialisé automatiquement (et exporté pour la première fois, NdT : en anglais committed) pendant l'installation du paquet. Il est possible de revenir en arrière avec la commande suivante :

sudo etckeeper uninit

Par défaut, etckeeper exportera les modifications de /etc non exportés, quotidiennement.. Ceci peut être désactivé avec l'option de configuration AVOID_DAILY_AUTOCOMMITS. Il exportera également les modifications avant et après une installation de paquet. Pour un suivi plus précis des changements, il est recommandé de les exporter manuellement avec un message d'exportation. Pour cela utilisez :

sudo etckeeper commit "..Motifdu changement de configuration.."

Vous pouvez voir le journal des fichiers de /etc en utilisant les commandes CVS :

sudo bzr log /etc/passwd

Pour vérifier l'intégration avec le système de gestion de paquets, installez postfix :

sudo apt-get install postfix

Lorsque l'installation est terminée, tous les fichiers de configuration de postfix devraient se trouver dans le dépôt CVS :

Committing to: /etc/
added aliases.db
modified group
modified group-
modified gshadow
modified gshadow-
modified passwd
modified passwd-
added postfix
added resolvconf
added rsyslog.d
modified shadow
modified shadow-
added init.d/postfix
added network/if-down.d/postfix
added network/if-up.d/postfix
added postfix/dynamicmaps.cf
added postfix/main.cf
added postfix/master.cf
added postfix/post-install
added postfix/postfix-files
added postfix/postfix-script
added postfix/sasl
added ppp/ip-down.d
added ppp/ip-down.d/postfix
added ppp/ip-up.d/postfix
added rc0.d/K20postfix
added rc1.d/K20postfix
added rc2.d/S20postfix
added rc3.d/S20postfix
added rc4.d/S20postfix
added rc5.d/S20postfix
added rc6.d/K20postfix
added resolvconf/update-libc.d
added resolvconf/update-libc.d/postfix
added rsyslog.d/postfix.conf
added ufw/applications.d/postfix
Committed revision 2.

Pour voir comment etckeeper garde un trace des changements manuels, ajoutez un nouvel hôte à /etc/hosts. En utilisant bzr, vous verrez quels fichiers ont été modifiés :

sudo bzr status /etc/
modified:
  hosts

Appliquez maintenant les changements :

sudo etckeeper commit "new host"

Pour de plaus amples informations à propos de bzr, consultez Bazaar.