Backup backup backup!

Se si vuole evitare il licenziamento un buon inizio è quello di salvare SEMPRE una copia dei file di configurazione, più o meno critici, che si stanno editando. Secondo me ‘cp‘ e ‘date’ assieme stanno benone e danno il vantaggio di imbastire un rudimentale sistema di controllo delle revisioni.

Quando mi tocca editare un file critico prima lanciare vim ne faccio una copia così:
cp drbd.conf drbd.conf.`date +%Y%m%d%H%M`

Il risultato somiglia a questo

ls -l /etc/drbd.conf
-rw-r--r-- 1 root root 2729 Jun 12 16:47 /etc/drbd.conf
-rw-r--r-- 1 root root 1819 Jun 12 16:29 /etc/drbd.conf.200706121629
-rw-r--r-- 1 root root 1800 Jun 12 16:29 /etc/drbd.conf.200706121809

Backup di Subversion con gli hook

Gli hook sono dei piccoli script che vengono innescati da subversion in conseguenza di determinate operazioni, ad esempio la creazione di una nuova revision.

Si può sfruttare questo meccanismo per creare copie di backup dei nostri repository tutte le volte che viene effettuata una nuova commit.

Anzitutto si devono installare i subversion-tools, necessari perché contengono lo script hot-backup.py.

I pacchetti rpm per Red Hat e derivate si possono scaricare da qui.

A questo punto, nella directory $REPOSITORY/hooks creare un file eseguibile post-commit che contenga le seguenti righe:

REPOS=”$1″
REV=”$2″

/usr/lib/subversion/tools/backup/hot-backup.py ${REPOS} /tmp ;

REV=$((REV-1))

rm -rf /tmp/$miescript-“$REV”