Contenu | Rechercher | Menus

rsync

Présentation

rsync (pour remote synchronization ou synchronisation à distance), est un logiciel 1) de synchronisation de fichiers. Il est fréquemment utilisé pour mettre en place des systèmes de sauvegarde distante.
rsync travaille de manière unidirectionnelle c'est-à-dire qu'il synchronise, copie ou actualise les données d'une source (locale ou distante) vers une destination (locale ou distante) en ne transférant que les octets des fichiers qui ont été modifiés.

La notion d'unidirectionalité semble souvent mal comprise : elle signifie qu'en une commande, la synchronisation ne peut se faire que dans un sens. Rien n'empêche ensuite de relancer la commande une seconde fois dans l'autre sens !

D'un point de vue de l'entreprise, un serveur de synchronisation est utile pour centraliser les sauvegardes sur une même machine équipée accessoirement d'un enregistreur de bande.

Pour le particulier, il est intéressant (si vous avez plusieurs machines), d'avoir une sauvegarde simple et rapide de son Dossier Personnel.

Utilisation

Comme l'indique le manuel :

"rsync est un programme très similaire à rcp, mais possède bien plus d'options et utilise le protocole de mise à jour à distance rsync afin d'accélérer significativement le transfert de fichiers lorsque le fichier de destination existe déjà."

L'appel de base :

rsync source/ destination/

L'intérêt est une utilisation à travers le réseau. rsync utilise ssh par défaut. Un exemple :

rsync -az source/ login@serveur.org:/destination/

où:

  • -a ou --archive : est un moyen rapide de dire que vous voulez la récursivité et préserver pratiquement tout. La seule exception est que si --files-from a été spécifiée alors -r n'est pas utilisée. Ceci est équivalent à -rlptgoD.
  • -z ou --compress : Compresse les données lors du transfert.

Créer un dossier miroir

Voici un exemple d'une commande, utilisant le protocole ssh, qui copie à l'identique le dossier <source> vers le dossier <destination>.

Copie du dossier source vers le serveur:

rsync -e ssh -avz --delete-after /home/source user@ip_du_serveur:/dossier/destination/

où :

  • --delete-after : à la fin du transfert, supprime les fichiers dans le dossier de destination ne se trouvant pas dans le dossier source.
  • -z : compresse les fichiers
  • -v : verbeux
  • -e ssh : utilise le protocole ssh

Avec l'option -n la commande liste ce qu'elle va faire sans l'exécuter:

rsync -e ssh -avzn --delete-after /home/mondossier_source user@ip_du_serveur:/dossier/destination/

Interface graphique : Grsync (Gnome)

Dans les dépôts vous trouverez notamment le logiciel grsync qui offre une interface graphique pour rsync: voir ce tutoriel sur Grsync.
Voir aussi la page sauvegarde pour trouver d'autres interfaces graphiques.

Tutoriel

Liens

  • (fr) Le man de rsync en français, « traduction de Denis Mertz, 2002. Mise à jour par Éric Piel <eric POINT piel AT tremplin-utc POINT net>, 2005. Relecture par Frédéric Delanoy et Julien Soula. » (extrait de développez.com, 2005)

Contributeur : ostaquet, jahwork

1) sous licence GNU GPL

rsync.txt · Dernière modification: Le 24/04/2013, 14:37 par 80.12.110.201
Le contenu de ce wiki est sous licence : CC BY-SA v3.0