Gardez vos fichiers synchronisés à l'aide d'un simple utilitaire de ligne de commande.

Les Mac ont longtemps été équipés d'un utilitaire de synchronisation de fichiers inconnu de la plupart des utilisateurs. La synchronisation à distance, ou rsync, est un moyen de synchroniser des fichiers et des répertoires via l'interface de ligne de commande sur des ordinateurs Unix. Cet utilitaire facile à utiliser est couramment utilisé pour la sauvegarde de vos données, mais peut synchroniser des fichiers à toute autre fin pour laquelle vous choisissez de l'utiliser. La synchronisation à distance peut être meilleure que d'autres méthodes de sauvegarde en raison de sa vitesse et du fait qu'elle ne nécessite aucune autorisation spéciale pour exécuter une commande rsync. Avec juste une petite connaissance de la ligne de commande, vous pouvez sauvegarder en un rien de temps avec rsync.
Niveau de difficulté: moyen

De quoi as-tu besoin:

>> Mac OS X
>> Fichiers à synchroniser
>> Quelques connaissances en ligne de commande

1. Synchronisation simple de fichiers et de répertoires

Une des choses les plus simples que vous puissiez faire avec rsync consiste à sauvegarder les fichiers et la structure des répertoires. Pour utiliser rsync, vous devez utiliser le format de commande suivant lorsque vous spécifiez des informations dans Terminal:
rsync -options SourceDirectory DestinationDirectory
Il existe de nombreuses options différentes qui obligeront rsync à effectuer différentes opérations au cours du processus de synchronisation de fichiers. Le texte SourceDirectory sera remplacé par le chemin de répertoire des fichiers et répertoires qui seront utilisés lors du processus de synchronisation des fichiers, et le texte DestinationDirectory sera remplacé par le répertoire dans lequel les fichiers et répertoires sources seront copiés..
Pour commencer à utiliser rsync, ouvrez Terminal (situé dans / Applications / Utilitaires) et tapez la commande suivante:
rsync -r
Ensuite, ouvrez une fenêtre du Finder et faites glisser le dossier de l’emplacement source (le dossier contenant les fichiers que vous souhaitez sauvegarder) dans la fenêtre du terminal. Vous remarquerez que l'emplacement du répertoire sera entré dans la fenêtre du terminal.

Votre commande rsync ressemblera à ceci lorsque vous aurez fini de saisir toutes les options..

Enfin, localisez l’emplacement de destination dans le Finder (le dossier dans lequel vous souhaitez synchroniser les fichiers source) et faites-le glisser dans la fenêtre Terminal. Cet emplacement de répertoire sera également saisi dans la fenêtre du terminal, ce qui donnera à votre commande rsync l’apparence suivante:
rsync -r / Utilisateurs / Cory / Documents / Utilisateurs / Cory / Bureau / Sauvegarde
Appuyez sur Entrée dans la fenêtre Terminal pour que le contenu du répertoire source soit copié exactement dans le répertoire de destination. Dans ce cas, notre dossier Documents sera copié dans un dossier de sauvegarde sur notre bureau..

2. Conservation des horodatages lors de la synchronisation

Lorsque vous utilisez rsync, les fichiers copiés auront une date de modification identique à celle de l'exécution de la commande rsync. Pour résoudre ce problème, vous pouvez spécifier une autre option dans la commande rsync qui préservera les horodatages pendant le processus de synchronisation..

Sans conserver l'horodatage, les fichiers afficheront la date et l'heure de modification, ainsi que l'heure d'exécution de la commande rsync..

Pour ce faire, utilisez l'option -a au lieu de -r, comme dans la commande ci-dessus. L'option -a utilisera le mode récursif, préservera tous les liens symboliques, préservera les droits d'accès aux fichiers et aux répertoires, préservera l'horodatage et préservera le propriétaire et le groupe..
Pour ce faire, tapez la commande suivante, puis faites glisser et déposez les dossiers dans l'ordre approprié comme nous l'avons fait ci-dessus..
rsync -a SourceDirectory DestinationDirectory

3. Synchroniser un seul fichier

Vous souhaiterez parfois ne synchroniser qu'un seul fichier au lieu d'un répertoire entier et de tous les fichiers qu'il contient. Une fois encore, rsync peut répondre à ce besoin en supprimant simplement les options et en spécifiant un fichier pour la source au lieu d'un répertoire..

Une fois que vous avez appuyé sur Entrée, le fichier synchronisé apparaîtra sur votre bureau..

Disons que nous avons un fichier texte appelé “MonDocument.txt” Dans notre répertoire de documents que nous souhaitons synchroniser avec mon bureau, nous allons taper la commande suivante dans Terminal et appuyer sur Entrée:
rsync /Users/Cory/Documents/MyDocument.txt

/ Utilisateurs / Cory / Desktop
Notez que nous n'avons mis aucune option, telle que -a ou -r, car nous n'utilisons pas les fonctionnalités fournies par ces options..

4. Synchroniser uniquement les répertoires

Si vous travaillez sur un projet nécessitant la réplication de la structure de répertoires, mais pas des fichiers, rsync peut également vous aider. Il suffit d’utiliser l’option -dr:
rsync -dr SourceDirectory DestinationDirectory

Lorsque vous appuyez sur la touche Entrée, les répertoires et les sous-répertoires du répertoire source sont répliqués sur le bureau..

Donc, si vous deviez répliquer la structure de répertoires d'un dossier appelé “Mon dossier” dans votre dossier Documents sur votre bureau, vous pouvez spécifier la commande suivante:
rsync -dr / Utilisateurs / Cory / Documents / MyFolder

/ Utilisateurs / Cory / Desktop

5. Afficher la progression de rsync pendant la synchronisation

Si vous utilisez rsync avec un grand groupe de fichiers, vous pouvez consulter la progression de la synchronisation pour chaque fichier au fur et à mesure de son déroulement. Encore une fois, une autre option est là pour vous aider. Mettre rsync en mode commenté fera en sorte que l’utilitaire affiche, ligne par ligne, la progression de la copie des fichiers et des répertoires. Utilisez simplement l'option -v.

Le mode commenté vous montrera exactement les fichiers sur lesquels rsync travaille.

Pour voir la sortie en mode commenté, vous pouvez utiliser la commande suivante:
rsync -v -r SourceDirectory DestinationDirectory