etckeeper: mantendo os ficheiros de configuración do sistema con versións.

Imaxe de Paco
Enviado por Paco en 28 Novembro, 2009 - 16:16.

etckeeper permite xestionar os ficheiros de configuración do sistema (/etc) de forma sinxela nun repositorio dun Sistema de Control de Versións (SCV).

Basicamente insire hooks en apt para que remita os cambios feitos en /etc cando se instale algún paquete ou se actualice. Inserir os /etc nun sistema de control de versions é unha boa práctica na industria e un dos puntos fortes de etckeeper é facer este proceso o menos difícil posíbel.

Neste pequeno manual explicarei as bases do sistema polo que pode ser de interese para administrador de sistemas.

Para instalar etckeeper insira esto nunha terminal:

sudo apt-get install etckeeper

O ficheiro de configuración principal é moi sinxelo  /etc/etckeeper/etckeeper.conf. A opción principal é qué SCV empregar. De forma predefinida etckeeper emprega Bazaar (bzr). O repositorio crease automaxicamente (e remitido a primeira vez) durante a instalación do paquete. Mais é posíbel desfacer isto coa seguinte orde:

sudo etckeeper uninit

De forma predefinida, etckeeper remitirá os cambios non remitidos feitos en /etc diariamente. Isto pode desactivarse empregando a opción de configuración AVOID_DAILY_AUTOCOMMITS. Ademáis como dixen tamén remitirá os cambios antes e despois da instalación dun paquete. Para facer un seguimento máis preciso dos cambios, recoméndolle remitir os cambios de forma manual, xunto con un mensaxe de remisión, empregando:

sudo etckeeper commit "..Reason for configuration change.."

Se emprega as ordes do SCV directamente, vostede poderá ver información de rexistro sobre os ficheiros en /etc:

sudo bzr log /etc/passwd

Para demostrar a integración do sistema de xestión de paqeutes, instalaremos postfix:
sudo apt-get install postfix Cando a instalación remate, todos os ficheiros de configuración de postfix remitiránse ao repositorio:

Committing to: /etc/
added aliases.db
modified group
modified group
modified gshadow
modified gshadow
modified passwd
modified passwd added postfix......
Committed revision 2.

Para poñer un exemplo de como etckeeper xestiona os cambios de forma manual, engada un novo /etc/hosts e logo empregue bzr para ver que cambios se efectuaron:

sudo bzr status /etc/
modified: hosts

E agora para remitir os cambios:

sudo etckeeper commit "new host"