Backup Manager

ouaip Après avoir configuré mon serveur dédié, je me suis attaqué à la sauvegarde des données de celui-ci. Pour cela, j'utilise Backup Manager : un logiciel en ligne de commande efficace et répondant à mes besoins.
Il permet de créer des archives dans différents formats (tar, gzip, bzip2, lzma, dar, zip) et gère l'export de celles-ci via le réseau ou sur support CD/DVD.

On commence par un aptitude install backup-manager pour l’installer.
L'ensemble de la configuration se fait via le fichier /etc/backup-manager.conf.

Ce qui m'intéresse, c'est de faire une sauvegarde quotidienne incrémentielle (en générant des archives compressés) de mes fichiers de configurations, des sites internet et des bases de données associés. La sauvegarde se fait en local, puis est exportée sur un autre serveur via ftp. Le répertoire ou se trouve les archives ne peut être accessible que via l'utilisateur ou le groupe "root".
Je vais m'intéresser ici qu'aux lignes les plus importantes :

export BM_REPOSITORY_ROOT="/backups/"
C'est le chemin où seront stockées les sauvegardes

export BM_ARCHIVE_TTL="5"
Le nombre de jours de rétention des sauvegardes

export BM_ARCHIVE_PREFIX="$HOSTNAME-"
Ici le nom de la machine fait partie du nom de vos fichiers de sauvegarde

export BM_ARCHIVE_METHOD="tarball-incremental"
On choisi une sauvegarde incrémentielle (enregistre que les modifications depuis la dernière sauvegarde)

export BM_ARCHIVE_METHOD="tarball-incremental mysql"
Pour inclure les bases de données dans la sauvegarde, il faut ajouter "mysql"

export BM_MYSQL_DATABASES="bdd1 bdd2 bdd3"
Je précise ici le nom des bases de données à sauvegarder

export BM_TARBALL_NAMEFORMAT="short"
Permet de rendre le nom de l'archive plus court et plus lisible.

export BM_TARBALL_DIRECTORIES="/etc /var /home"
On spécifie les dossiers à sauvegarder

ouaip Voilou, maintenant il nous reste à spécifier l'export via ftp des sauvegardes créées sur un autre serveur :

export BM_UPLOAD_METHOD="ftp"
On indique ici que nous allons utiliser le ftp comme moyen d'exportation de nos archives

export BM_UPLOAD_HOSTS="ftp.exemple.net"
On indique l'adresse du serveur ftp

export BM_UPLOAD_DESTINATION="/backups/"
Dossier de destination sur le ftp

export BM_UPLOAD_FTP_USER="jasonbourne"
Nom du compte utilisateur du ftp

export BM_UPLOAD_FTP_PASSWORD="motdepasse"
Mot de passe du compte utilisateur du ftp

export BM_UPLOAD_FTP_PURGE="true"
On indique ici que l'on souhaite purger le fichier distant

coolA ce niveau là, la sauvegarde est en place et on peut la tester de suite en faisant un backup-manager -v (l'option -v active le mode verbose). Le fichier de configuration est très bien documenté et permet de s'y retrouver facilement. D'autres options et paramètres sont disponible ce qui permet une grande souplesse dans le choix de sauvegarder ses données.