mercredi 4 avril 2012

Backup avec Rsnapshot

Pour sauvegarder mes serveurs Linux, j'utilise maintenant Rsnapshot.

Il s'agit d'un script perl qui utilise rsync mais qui en plus permet de gérer la rotation des backups et de mettre en place une stratégie type fils/pere/grand-pere.

La configuration est très simple et est regroupe dans /etc/rsnapshot.conf
Seule particularité :

  • Utiliser des "tab" et non des espaces
  • Utiliser des / a la fin des path


    • bon :           /home/
    • mauvais :    /home

Penser toujours a exécuter : rsnapshot configtest pour vérifier votre config et sa syntaxe.
Ensuite vous pouvez utiliser rsnapshot du pour vérifier l'espace disque utilise.

Comme pour rsync on definit le serveur d'origine et la cible par exemple :

backup                              tintin@xxx.xxx.xxx.xxx:/etc/      backuptintin/


Bien sur avant on transmet la clé publique du serveur qui fait tourner rsnapshot vers le serveur que l'on souhaite sauvegarder pour s’authentifier et se connecter.

Ensuite en fonction de la configuration la rotation s'effectue :


  • daily.0
  • daily.1
  • daily.2
  • daily.3
  • daily.4
  • daily.5
  • daily.6
  • weekly.0
  • weekly.1
Le répertoire cible est le daily.0 et ensuite chaque répertoire renferme juste la différence (ce qui a été ajoute en plus) a l'aide des hard link.

Enfin, il possible d’exécuter des scripts au moment du backup ou d'exclure des fichiers/répertoires.

De plus rsync est porté sur Windows on peut donc avec cygwin utiliser rsnapshot et ainsi nous disposons d'un superbe outils pour sauvegarder nos serveurs.