Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
rsync [Le 15/05/2025, 15:19]
krodelabestiole mise en forme / +rclone +rsnapshot / réorganisation / màj
rsync [Le 04/08/2025, 14:28] (Version actuelle)
bcag2 [Quelques options] --ignore-existing
Ligne 3: Ligne 3:
 ====== rsync ====== ====== rsync ======
  
-===== Présentation =====+**[[wpfr>​rsync]]**(([[https://​github.com/​RsyncProject/​rsync|GitHub]])) (pour //​**r**emote **sync**hronization//​ ou synchronisation à distance) est une application libre((sous licence **[[wpfr>​Licence_publique_générale_GNU|GNU GPL]]**)) de synchronisation de fichiers en [[:commande shell|ligne de commande]].
  
-**[[wpfr>​rsync]]**(([[https://​github.com/​RsyncProject/​rsync|GitHub]])) (pour //​**r**emote **sync**hronization// ​ou synchronisation à distance) est une application ((sous licence **[[wpfr>​Licence_publique_générale_GNU|GNU GPL]]**)) de synchronisation de fichiers en [[:commande shell|ligne de commande]]. Il est parfois ​utilisé pour mettre en place des systèmes de [[:​sauvegarde|sauvegardes]] distantes ​ou des [[:​points_de_restauration_pour_un_systeme_linux|points de restauration]] du système (par exemple via l'​outil [[:​rsnapshot]] ou l'​interface [[:​Timeshift]]).+Il sert à copier ou déplacer des répertoires,​ à l'​instar de ''​[[:tutoriel:​console_ligne_de_commande#​mv]]'' ​ou ''​[[:​tutoriel:​console_ligne_de_commande#​cp]]'',​ mais fournit en plus des fonctionnalités complètes ​de synchronisation ​et de transfert distant (reposant sur [[:SSH]])Ainsi il peut aussi être utilisé ​de manière plus avancée pour maintenir un double d'un espace de stockage, ​pour mettre en place des systèmes ​rudimentaires ​de [[:​sauvegarde]] ​distante, ​ou pour créer ​des [[:​points_de_restauration_pour_un_systeme_linux|points de restauration]] du système (par exemple via l'​outil ​**[[:​rsnapshot]]** ou l'​interface ​**[[:​Timeshift]]** avec lesquels il est utilisé comme "​moteur"​ en arrière-plan).
  
-**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.+**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 fichiers qui ont été modifiés. Il offre la possibilité de supprimer sur la destination les fichiers n'​existant pas sur la source.
 <note help>La notion d’unidirectionnalité semble parfois mal comprise : elle signifie qu'en une commande, la synchronisation ne peut se faire que dans un sens. Rien n'​empêche ensuite de lancer une autre commande pour effectuer l'​opération dans l'​autre sens !</​note>​ <note help>La notion d’unidirectionnalité semble parfois mal comprise : elle signifie qu'en une commande, la synchronisation ne peut se faire que dans un sens. Rien n'​empêche ensuite de lancer une autre commande pour effectuer l'​opération dans l'​autre sens !</​note>​
  
-En particulier pour une entreprise, un [[:​tutoriel:​serveur_de_synchronisation_avec_rsync|serveur de synchronisation]] ​est utile pour centraliser les sauvegardes ​sur une même machine ​équipée accessoirement d'un enregistreur de bande.+En particulier pour une entreprise, un [[:​tutoriel:​serveur_de_synchronisation_avec_rsync|serveur de synchronisation]] ​peut être utile pour centraliser les données ​sur une même machine.
  
-Pour un particulier habitué à la [[:commande shell|ligne de commande]], il est intéressant (si vous avez plusieurs machines), d'​avoir une [[:​sauvegarde]] simple et rapide ​de son //Dossier Personnel//​.+Pour un particulier habitué à la [[:commande shell|ligne de commande]], il est intéressant (si vous avez plusieurs machines), d'​avoir une copie de son //Dossier Personnel//, même si il existe aujourd'​hui des outils bien plus complet et performants.\\ 
 +Pour plus de détails sur ce type d'​utilisation,​ voir ce tutoriel : //​[[:​tutoriel:​sauvegarder_home_avec_rsync|Sauvegarder "/​home"​ avec rsync]]//.
  
-Ici nous verrons son utilisation basique. Pour plus de détails, allez voir ce tutoriel : //​[[:​tutoriel:​sauvegarder_home_avec_rsync|Sauvegarder "/​home"​ avec rsync]]//​. +Si on préfère éviter ​la ligne de commande, il existe des interfaces graphiques à **rsync**, telles que **[[:Grsync]]**.
- +
-Pour les personnes qui n’aiment pas la ligne de commande, il existe des interfaces graphiques à **rsync**, telles que [[:​Grsync]].+
  
 ===== Utilisation ===== ===== Utilisation =====
Ligne 33: Ligne 32:
 Vous pouvez relancer cette commande à chaque nouvelle synchro, seuls les nouveaux fichiers seront synchronisés. Vous pouvez relancer cette commande à chaque nouvelle synchro, seuls les nouveaux fichiers seront synchronisés.
  
-En **réseau**,​ **rsync** utilise [[SSH]] par défaut. Un exemple :+En **réseau**,​ **rsync** utilise [[:SSH]] par défaut. Un exemple :
 <code bash>​rsync -az source/ login@serveur.org:/​destination/</​code>​ <code bash>​rsync -az source/ login@serveur.org:/​destination/</​code>​
 où: où:
Ligne 54: Ligne 53:
 rsync source destination</​code> ​ rsync source destination</​code> ​
  
-* Sauf dans le cas ou source est un lien symbolique vers un répertoire,​ la première commande ne copie que le lien, tandis que la seconde travaille bien à l'​intérieur du répertoire+* Sauf dans le cas où source est un lien symbolique vers un répertoire,​ la première commande ne copie que le lien, tandis que la seconde travaille bien à l'​intérieur du répertoire
 </​note>​ </​note>​
 <​note>​ <​note>​
Ligne 127: Ligne 126:
   * ''​-L''​ : remplace les liens symboliques par les fichiers référencés.   * ''​-L''​ : remplace les liens symboliques par les fichiers référencés.
   * ''​%%--%%remove-sent-files''​ : les fichiers envoyés sont //​supprimés//​ de chez l'​émetteur. Il ne s'agit donc plus de faire une synchro mais bien de faire un //​transfert//​.   * ''​%%--%%remove-sent-files''​ : les fichiers envoyés sont //​supprimés//​ de chez l'​émetteur. Il ne s'agit donc plus de faire une synchro mais bien de faire un //​transfert//​.
-  * ''​%%--%%delete''​ : efface sur la cible les fichiers qui ont disparu du répertoire de départ. Option très importante qui permet d'​être sûr que la copie est identique à l'​original. Mais si on se trompe ​sur l'​original,​ on perd la copie.+  * ''​%%--%%delete''​ : efface sur la cible les fichiers qui ont disparu du répertoire de départ. Option très importante qui permet d'​être sûr que la copie est identique à l'​original. Mais si on a effacé ​sur l'​original,​ on perd la copie.
   * ''​%%--%%delete-after''​ : idem option précédente,​ mais fait l'​effacement à la fin du transfert. Surtout intéressant avec l'​option ''​-v''​ ('​verbeux'​) : les fichiers effacés sont plus clairement affichés à la fin, et pas dispersés dans l'​ensemble des retours écran.   * ''​%%--%%delete-after''​ : idem option précédente,​ mais fait l'​effacement à la fin du transfert. Surtout intéressant avec l'​option ''​-v''​ ('​verbeux'​) : les fichiers effacés sont plus clairement affichés à la fin, et pas dispersés dans l'​ensemble des retours écran.
   * ''​%%--%%exclude=MOTIF''​ : exclut de la synchro les fichiers correspondant au MOTIF (par exemple ''​*.txt''​ pour exclure les fichiers avec l'​extension ''​.txt''​).   * ''​%%--%%exclude=MOTIF''​ : exclut de la synchro les fichiers correspondant au MOTIF (par exemple ''​*.txt''​ pour exclure les fichiers avec l'​extension ''​.txt''​).
 +  * ''​%%--%%ignore-existing''​ :​ ignore les fichiers déjà transférés. Intéressant pour des fichiers qui n'​évolueront pas, ce qui peut faire une sécurité de ne pas récupérer des fichiers chiffrés par un attaquant !
   * ''​-z''​ : compresse les fichiers pendant le transfert. N'a d’intérêt que pour des transferts à travers des réseaux, car sinon la compression / décompression fait perdre du temps.   * ''​-z''​ : compresse les fichiers pendant le transfert. N'a d’intérêt que pour des transferts à travers des réseaux, car sinon la compression / décompression fait perdre du temps.
  
  • rsync.1747315150.txt.gz
  • Dernière modification: Le 15/05/2025, 15:19
  • par krodelabestiole