L'utilitaire Rsync
L'utilitaire Rsync
Problématique
Un disque dur qui déraille, un système compromis, un "rm –rf /", ...
Lorsque l'on pense au backup, il est toujours trop tard.
rsync propose une manière extrêmement simple de sauvegarder ses données. Les données sont ce qu'il y a de plus important. Cela correspond à toutes nos heures de travail et toutes nos idées.
Malheureusement, ces dites données ont une fâcheuse tendance à disparaître assez souvent. Que ce soit une erreur humaine ou alors une déficience matérielle, le résultat est toujours le même : « Ah si j’avais pensé à sauver mes données ... » suivi de quelques insultes bien senties.
Il existe un grand nombre de solutions de sauvegarde, mais elles sont assez complexes à mettre en place (fonctionnement client-serveur) et sont destinées aux entreprises (multi-utilisateurs).
Que faire lorsque l’on souhaite uniquement sauver quelques dossiers (projets, documents, mails ...)?
On peut graver périodiquement nos données, ce qui peut revenir coûteux et encombrant.
On
peut copier nos données via le réseau, mais transférer toutes nos
données alors qu’il n’y a eu que très peu de changement n’est pas
optimal en gain de temps et ressources.
La solution rsync
rsync est un outil qui permet le transfert des fichiers de façon incrémentale, c’est-à-dire qu’il ne copie que les nouveautés et modifications. Sa mise en place est très simple puisque c’est le même utilitaire pour le client et le serveur et qu’il n’y a aucune configuration à faire.
Avant de commencer
Pour mettre en place notre solution de sauvegarde nous avons besoin :
un serveur de sauvegarde avec OpenSSH et rsync.
un client avec OpenSSH et rsync.
Vous avez été prévenus, c’est très simple.
Utilisation de rsync
Par exemple, si nous avons deux dossiers « source » et « destination » :
rsync -a source destination
rsync -a source/ destination
La première commande copiera « source » dans « destination », alors que la seconde copiera tout le contenu de « source » dans « destination ».
Passons maintenant à la copie via le réseau.
rsync -a -e ssh source/ login@serveur.org:/destination/
Plus d’options
-a : permet de copier tous les fichiers, y compris les fichiers et dossiers cachés (fichiers commençant par .)
-c : active la compression de type gzip pendant le transfert.
-v : affiche les opérations avant de les effectuer
--delete : si le fichier « linux » existe dans « destination » et pas dans « source », il sera supprimé.