FlexBackup : Sauvegarde d'un répertoire
Flexbackup est un utilitaire en perl très flexible pour sauvergarder le contenu d'un répertoire.
emerge flexbackup
Voici les parties importante du fichier /etc/flexbackup.conf :
$set{'research'} = "/home/david/research /var/cvsroot/python /var/cvsroot/latex"; $set{'mail'} = "/home/david/.thunderbird"; $set{'etc'} = "/etc /home/david /var/www/davidgrant.ca/htdocs";
$prune{'/home/david'} = ".jpi_cache konserve-backup .cxoffice .wine .mozilla .kde3.1 .thunderbird"; $prune{'/home/david/.thunderbird'} = "Junk News";
$compress = 'gzip'; # one of false/gzip/bzip2/lzop/zip/compress/hardware $compr_level = '6';
$device = '/mnt/sata/backup';
Les noms "research", "mail", et "etc" sont simplement pour simplifier le nommage des répertoire à sauvergarder lors de l'utilisation de flexbackup en ligne de commande. Tous les répertoires dans "research" seont sauvergarder dans leur propre archive, tel que "home-david-research.0.tar.gz", "var-cvsroot-python.0.tar.gz", et "var-cvsroot-latex.0.tar.gz".
$prune$ permet de masqué certains répertoire que l'on ne veut pas sauvergarder.
$compress est ici réglé à 'gzip' mais on peut utiliser bzip2 pour des archives plus petites. $compr_level=6 permet de régler le level de compression.
On peut utiliser le crontab suivant pour les backups :
0 3 1-7 * * flexbackup -set all -full -w 7 0 3 * * 6 flexbackup -set all -differential 0 3 * * 1-5 flexbackup -set all -incremental
Ceci va permettre de faire une sauvergarde compléte le premier dimanche de chaque mois, une sauvegarde différentielle tous les samedis et une sauvegarde incrémentale tous les jours. Les sauvegardes sont faites à 3h.