Mise en place de sauvegardes avec backup-manager
Sauvegardez simplement le contenu de votre pc sur un autre pc simplement via backup-manager et en toute sécurité via ssh
Préambule
- Soit :
- serv_prod : le serveur de production dont vous souhaitez sauvegarder le contenu,
- serv_backup : le serveur sur lequel vos backups seront uploadés,
- user_prod : l’utlisateur sous lequel seront réalisés les fichiers de backup,
- user_backup : l’utilisateur que l’on utilise pour se connecter à serv_backup.
Créer vos utilisateurs de backup sur les serveurs respectifs
sudo adduser user_prod --home /home/backup sudo adduser user_backup --home /home/backup
Installation et configuration de backup-manager
C’est tout simple, sur serv_prod :
sudo aptitude update sudo aptitude install backup-manager dar
- backup-manager vous demande un certain nombre d’informations :
- Dépot des archives : /home/backup
- utilisateur propriétaire du dépot : user_prod
- groupe propriétaire du dépot : user_prod
- format des sauvegardes : .tar.bz2
- fréquence des sauvegardes : hebdomadaire
- Suivre les liens symboliques : non
- Format du nom des archives : long
- Temps de conservation des sauvegardes : 14 (permet de conserver 2 semaines de sauvegardes par ex)
- Répertoires à sauvegarder : indiquer ici les répertoires qui vous intéressent
- Répertoires à ne pas sauvegarder : /home/backup
- Encrypter les archives : non
- Activer le système de transfert des fichiers
- Protocole de transfert à utiliser : scp
- Hote distant : ip ou nom d’hote de serv_backup
- Utilisateur distant : user_backup
- Clé privée : /home/backup/.ssh/id_dsa
- Répertoire de destination : /home/backup
- Activer la gravure : non
Lors de l’installation de base, il ne vous demande pas tout cela. Pour remplir tous ces champs, vous pouvez faire :
sudo dpkg-reconfigure backup-manager
Paramétrage avancé de backup-manager
Sur serv_prod, éditez /etc/backup-manager.conf
Si vous voulez passer en mode incrémental, changez la valeur suivante :
export BM_ARCHIVE_METHOD="tarball-incremental"
Si vous voulez sauvegarder aussi vos base MySQL, vos dépôts subversion (il faudra ensuite renseigner les sections MySQL et Subversion plus loin dans le fichier).
export BM_ARCHIVE_METHOD="tarball-incremental mysql svn"
Pour utiliser Dar et définir la taille maximale d’un volume de sauvegarde ( ex découper vos sauvegardes en tranches de 100 Mo – pratique pour les transferts) :
export BM_TARBALL_FILETYPE="dar"
et un peu plus bas :
export BM_TARBALL_SLICESIZE="100M"
Mise en place de l’authentification par clé entre serv_prod et serv_backup
Sur serv_prod, connectez vous en user_prod.
Créez une paire de clé privée/publique ssh :
ssh-keygen -t dsa
- On va vous demander :
- le chemin où sera stocké votre clé privée, tapez simplement entrée pour accepter la valeur par défaut
- une passphrase : laissez vide et tapez sur entrée
- la confirmation de votre passphrase : tapez encore sur entrée.
La raison pour laquelle on ne définit pas de passphrase est que cela au permet d’automatiser les scripts et éviter que la passphrase soit demandée lors de la connexion au serveur.
Copiez ensuite votre clé publique sur le serveur de backup :
ssh-copy-id -i ~/.ssh/id_dsa user_backup@serv_backup
Testez ensuite la connection :
ssh user_backup@serv_backup
Vous devriez pouvoir vous connecter sans authentification.
Exécutez votre premier jeu de sauvegarde avec backup-manager
Lancez backup-manager :
sudo backup-manager -v
Automatisation des sauvegardes
Comme vous avez rentré une fréquence lors de l’installation de backup-manager, vous aurez une entrée correspondante dans /etc/cron.* (si vous avez choisi une fréquence hebdo, ce sera dans/etc/cron.weekly).