Commande Linux
rsync
remote sync
"Synchroniser des fichiers localement ou à distance. La commande de sauvegarde ultime."
Réseau ⭐⭐ Intermédiaire 🔥 Essentielle

C'est quoi, rsync ?

rsync synchronise des fichiers entre deux endroits — localement ou via SSH. Il ne transfère que les différences, ce qui le rend extrêmement efficace même sur des dossiers volumineux.

💡 L'analogie : rsync, c'est comme une sauvegarde intelligente. Il compare source et destination, et ne copie que ce qui a changé. Ni plus, ni moins.
Utilisations essentielles
# Synchroniser deux dossiers locaux
$ rsync -avz source/ destination/

# Vers un serveur distant via SSH
$ rsync -avz mon-site/ ubuntu@serveur:~/www/

# Avec suppression des fichiers obsolètes
$ rsync -avz --delete source/ destination/

# Exclure des fichiers
$ rsync -avz --exclude '.git' --exclude 'node_modules' src/ dst/

# Simuler sans rien copier (dry-run)
$ rsync -avzn source/ destination/

Flags essentiels

FlagSignification
-aArchive — préserve permissions, dates, liens symboliques
-vVerbose — affiche les fichiers transférés
-zCompresse les données pendant le transfert
-nDry-run — simule sans rien modifier
--deleteSupprime à destination les fichiers absents à la source
--progressAffiche la progression en temps réel
-e sshUtilise SSH (défaut si hôte distant)
💡 Attention au slash final
rsync source/ dst/ copie le contenu de source dans dst. rsync source dst/ (sans slash) copie le dossier source lui-même dans dst. Cette différence est critique.
← Précédent
sed
Suivant →
scp