GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment utiliser Rsync

Présentation

La commande remote sync ou rsync est utilisée pour transférer et synchroniser des fichiers et des répertoires entre des machines, des hôtes, des shells distants ou une combinaison des éléments ci-dessus. C'est un utilitaire puissant que vous devez connaître si vous travaillez avec Linux. Nous couvrirons ici les bases de la commande rsync. Bien que cet article utilise Ubuntu 20.04, vous pouvez utiliser les mêmes commandes sur d'autres distributions Linux.

Qu'est-ce qui rend rsync si spécial ?

Les commandes rsync utilisent la compression et la décompression lors de la réception et de l'envoi de fichiers, cela signifie qu'elles consommeront très moins de bande passante. Rsync ne met à jour que les différences entre la source et la destination car il utilise le protocole de mise à jour à distance. Il prend également en charge les propriétaires, les groupes, les liens, les autorisations et les appareils.

Comment installer rsync ?

La plupart des distributions Linux sont livrées avec rsync installé. Si ce n'est pas le cas, utilisez la commande suivante sur votre système Ubuntu :

sudo apt-get install rsync

Syntaxe Rsync

Cette section passera brièvement en revue la syntaxe rsync.

Transfert ou synchronisation local à local

rsync {option} {source} {destination}

Transfert ou synchronisation local vers distant

rsync {option} {source} {[email protected]:destination}

Transfert ou synchronisation distant vers local

rsync {option} {[email protected]:destination} {destination}

Source est le répertoire source

Destination est le répertoire de destination

L'option est les options de la commande rsync

L'utilisateur est le nom d'utilisateur distant

Host est l'IP ou le nom d'hôte distant

Comment utiliser rsync

Copier les fichiers localement

Pour copier des fichiers localement, utilisez :

rsync –a {filename} {destination}

Dans l'exemple ci-dessus, nous copions "source.zip ” de notre répertoire actuel vers Documents.

Vous pouvez vérifier si le fichier a été copié en répertoriant tous les fichiers et répertoires dans Documents, en utilisant :

ls

Comme vous pouvez le voir, "source.zip ” est présent dans le répertoire Documents.

Si vous n'ajoutez pas de nom au fichier dans la destination, il copiera le même nom que le fichier source. Pour changer le nom du fichier de destination, utilisez :

rsync –a {filename} {destination/filename}

Dans l'exemple ci-dessous, nous allons copier "source.zip " encore une fois, mais cette fois, renommez-le en "destination.zip ”.

"destination.zip " a été copié dans le répertoire Documents, comme illustré dans l'image ci-dessous.

Copier le contenu d'un répertoire vers la destination

Vous pouvez utiliser la commande ci-dessous pour copier le contenu de votre répertoire source vers la destination.

rsync –av {source}/ {destination}

L'image ci-dessus montre le contenu "Source ” étant copié dans le répertoire “Destination ” répertoire.

Copier tout le répertoire vers la destination

Si vous souhaitez uniquement copier le contenu de votre répertoire vers la destination, utilisez :

rsync –av {source} {destination}

L'exemple ci-dessus copie le "Source » et son contenu dans le répertoire « Destination ” répertoire.

Afficher la progression

Pour afficher la progression, utilisez :

rsync –rv –progress {source} {destination}

Ignorer les fichiers

Si vous souhaitez ignorer certains fichiers, utilisez :

rsync -vr --exclude '{condition}' {source} {destination}

La "Source ” contient les fichiers suivants :

Dans l'exemple ci-dessous, nous allons ignorer les fichiers qui commencent par un "s ”.

Comme le montre l'image, seul "fichier ” est copié.

Liste des fichiers et des répertoires

rsync peut être utilisé pour lister le contenu d'une source.

rsync {filename}

La commande ci-dessus répertorie le contenu du répertoire Documents.

Copier des fichiers d'une machine locale vers une machine distante

Pour déplacer des fichiers vers une machine distante, vous devrez installer openssh-server. La commande pour cela est :

sudo apt update
sudo apt install openssh-server

Une fois installé, vous pouvez utiliser la commande ci-dessous pour déplacer votre fichier ou répertoire.

rsync –a {source} {remote [email protected] IP:/destination}

Le mot de passe de la machine distante vous sera demandé.

Dans l'exemple ci-dessous, nous allons déplacer "doc ” dans le répertoire de base distant.

En utilisant ls, nous pouvons voir que "doc ” a été déplacé ici.

Copier des fichiers d'une télécommande vers une machine locale

Vous utiliserez la même commande que celle utilisée dans l'exemple ci-dessus.

rsync –a {remote source} {local [email protected] IP:/destination}

Dans cet exemple, nous allons déplacer "remotesrcdoc ” de la machine distante à la machine locale.

En utilisant ls, nous pouvons voir que "remotesrcdoc ” a été déplacé ici.

Ajouter la date actuelle au fichier de destination

Vous pouvez ajouter la date au nom de votre fichier ou répertoire de destination en utilisant :

rsync -av /home/test/Desktop/Linux /home/test/Desktop/rsync$(date +\\%Y-\\%m)

Dans l'exemple ci-dessous, nous allons déplacer "source.zip " sur le bureau, nommez-le destination et ajoutez-y la date.

Affichage des différences entre les fichiers source et destination
La commande ci-dessous peut être utilisée pour voir les différences entre les fichiers source et destination.

rsync –avzi {source}/ {destination}/

L'image ci-dessous montre que les fichiers "Donuts " et " Bonjour.txt ” ne sont pas présents dans le répertoire de destination.

Le paramètre "f ” signifie fichier. Les autres paramètres incluent :

t :changement d'horodatage

d :changement de destination

s :modification de la taille du fichier

Limiter la bande passante lors du transfert de fichiers

Pour limiter la bande passante lors du transfert de fichiers, utilisez :

rsync -vr --bwlimit=1000 {source}/* {destination}

Dans l'exemple ci-dessous, nous limitons la bande passante à 1 000 Ko.

En savoir plus sur rsync

Pour voir plus d'options disponibles sur rsync, utilisez :

rsync –help

Nous avons couvert certaines des bases de la commande rsync, nous avons vu comment transférer et synchroniser des fichiers localement et à distance.

Si vous souhaitez synchroniser vos fichiers à l'aide de la commande scp, rendez-vous ici.


Ubuntu
  1. Comment utiliser BusyBox sous Linux

  2. Comment utiliser rsync avancé pour les sauvegardes Linux volumineuses

  3. Comment utiliser la commande Linux Rsync (synchronisation à distance)

  4. La commande Linux rsync :comment l'utiliser

  5. Comment utiliser Chromecast ?

Comment installer Go sur Ubuntu 20.04

Comment utiliser la commande cd sous Linux

Comment supprimer un répertoire dans Ubuntu 20.04

Comment utiliser Ubuntu

Comment utiliser les index dans cPanel ?

Comment utiliser FTP