Un pense-bête

Trucs de geek : rsync

Par pitié : faites des sauvegardes ! Je n'ose imaginer le nombre de photos perdues du fait de l'absence de sauvegardes. Copier vos fichiers sur un support externe ou plus habilement utiliser un programme de synchronisation comme rsync.

Pour copier des fcihiers il y a naturellement :

  • le gestionnaire de fichier
  • la commande cp
  • la commande rsync

Le plus aisé est naturellement la première option. On l'utilise tous les jours sur des volumes de fichiers souvent réduit.

Les geek et partisants de la ligne de commande trouveront que  la commande "cp" est baucoup plus rapide et paramètrable.

Mais si ces deux outils sont excélents pour une première copie de fichiers, ils sont trés limités pour les mises à jour suivantes. Et dans ce cas rien ne vaut la commande "rsync".

En effet immaginons une mise à jour de fichiers avec des fichiers soit différents en taille soit différents en date de modification soit identiques à tout point de vue.  Avec un gestionanire de fichiers il faudra répondre à la question "Le fichier existe déja. Souhaitez l'écraser ? Oui / Non / Tous". Alors que vous souhaiteriez peut être que seuls les fichiers anciens soient écrasés. Autre cas : si dans les dossiers de destination des fichiers existent alors qu'ils ne sont plus présents dans le dossier d'origine, la copie ne vous permettra pas de les supprimer. Il vous faudra la faire à la main, ce qui sur une répertoire avec 800 fichiers va être un peu compliqué et risqué.

Par contre "rsync" fait tout cela.

La commande de base est :

rsync options source destination

Nous n'allons voir qu'une version simple dont le but est de sauvegarder des photos sur une disque dur externe.

La commande sera la suivante :

$ rsync --delete-before -a -v -t /home/jfdigonnet/Images/Diaporama/ /media/jfdigonnet/DISKSV/Images/Diaporama/

Les options utilisées sont :

  • "--delete-before" qui permet de supprimer dans le dossier des destination les fichiers qui ne sont plus présents dans le dossier de départ. Dans ce cas on commence la synchronisation par les suppressions. On aurait pu opter pour des suppressions aprés synchronisation avec "--delete-after",
  • l'option "-a" regroupe un ensemble d'options :
    • "-r" qui permet de parcourir le dossier et le(s) sous dossier(s) (récursivité)
    • "-" permet de travailler en mode archive : on ne suit pas les liens symboliques,
    • "-t" qui préserve les dates,
    • "-g" qui préserve les groupes
    • "-o" qui met le propriétaire du fichier identique à celui du fichier source
  • l'option "-v" active le mode verbose (verbeux) et permet de suivre les opérations,
  • le dossier de départ à sauvegarder
  • le dossier où la suvegarde sera réalisée. il sera créé s'il n'existe pas.

 

Si vous souhaitez savoir ce qui va se passer avant de vous lancer (on n'est jamais trop prudent) vous devez utiliser l'option "-n".

SI vous ne souhaitez pas réaliser la commande tout de suite mais simplement savoir ce que cela faire utlisez l'option "-n".

La documentation complète est disponible sur : https://rsync.samba.org/ftp/rsync/rsync.html

Fait le 19/01/2015

Tags: geek, rsync