amanda
, bacula
et BackupPC
. Il s'agit de systèmes client/serveur dotés de nombreuses options, dont la configuration peut être difficile. Certains disposent d'une interface de configuration web. Des dizaines d'autres paquets Debian sont dédiés à des solutions de sauvegarde, comme vous le montrera la commande apt-cache search backup
.
rsync
(du paquet éponyme) sauvegarde quotidiennement ces différents serveurs.
rsync
est précédée d'une duplication du contenu de la dernière sauvegarde par des liens durs (hard links), qui évitent de consommer trop d'espace disque. Le processus rsync
ne remplacera ensuite que les fichiers modifiés depuis la dernière sauvegarde. Ce mécanisme permet de conserver un grand nombre de sauvegardes sur un volume réduit. Toutes les sauvegardes étant accessibles en même temps (par exemple dans des répertoires différents d'un même volume accessible à travers le réseau), on pourra effectuer rapidement des comparaisons entre deux dates données.
dirvish
. Il emploie un espace de stockage des sauvegardes (bank, dans son vocabulaire) dans lequel il place les différentes copies horodatées des ensembles de fichiers sauvegardés (ces ensembles sont nommés vaults, donc « chambre forte », dans la documentation de dirvish
).
/etc/dirvish/master.conf
. Elle indique l'emplacement de l'espace de stockage des sauvegardes, la liste des ensembles à sauvegarder ainsi que des valeurs par défaut pour l'expiration des sauvegardes. Le reste de la configuration se trouve dans les fichiers bank/vault/dirvish/default.conf
et contient à chaque fois la configuration spécifique à l'ensemble de fichiers en question.
Exemple 9.3. Fichier /etc/dirvish/master.conf
bank: /backup exclude: lost+found/ core *~ Runall: root 22:00 expire-default: +15 days expire-rule: # MIN HR DOM MON DOW STRFTIME_FMT * * * * 1 +3 months * * 1-7 * 1 +1 year * * 1-7 1,4,7,10 1
bank
indique le répertoire dans lequel les sauvegardes sont stockées. Le paramètre exclude
permet d'indiquer des fichiers (ou des formes de noms de fichiers) à exclure de la sauvegarde. Le paramètre Runall
est la liste des ensembles de fichiers à sauvegarder avec un horodatage pour chaque ensemble, ce dernier permet simplement d'attribuer la bonne date à la copie au cas où la sauvegarde ne se déclencherait pas exactement à l'heure prévue. Il faut indiquer un horaire légèrement inférieur à l'horaire réel d'exécution (qui est 22h04 par défaut sur un système Debian, selon /etc/cron.d/dirvish
). Enfin, les paramètres expire-default
et expire-rule
définissent la politique d'expiration (donc de conservation) des sauvegardes. L'exemple précédent conserve pour toujours les sauvegardes générées le premier dimanche de chaque trimestre, détruit après un an celles du premier dimanche de chaque mois et après 3 mois celles des autres dimanches. Les autres sauvegardes quotidiennes sont conservées 15 jours. L'ordre des règles compte : dirvish
emploie la dernière règle qui correspond, ou celle mentionnée dans expire-default
si aucune des règles de expire-rule
ne correspond.
Exemple 9.4. Fichier /backup/root/dirvish/default.conf
client: rivendell.falcot.com tree: / xdev: 1 index: gzip image-default: %Y%m%d exclude: /var/cache/apt/archives/*.deb /var/cache/man/** /tmp/** /var/tmp/** *.bak
hostname
le rapporte), en particulier ceux qui sont dans l'arborescence racine (tree: /
) à l'exclusion de ceux listés dans exclude
. La sauvegarde restera limitée au contenu d'un seul système de fichiers (xdev: 1
), elle n'inclura pas les fichiers d'autres montages. Un index des fichiers sauvegardés sera généré (index: gzip
) et l'image sera nommée selon la date du jour (image-default: %Y%m%d
).
dirvish --vault vault --init
. Puis l'invocation quotidienne de dirvish-runall
créera automatiquement une nouvelle copie de sauvegarde juste après avoir supprimé celles qui devaient l'être.
dconf
(voir Section 13.3.1, « GNOME » à ce propos).