Jun 06, 2025
Ismail
8minutes de lecture
Copier des fichiers d’un périphérique à un autre peut être une tâche fastidieuse. Heureusement, vous pouvez simplifier ce processus sous Linux en utilisant la commande rsync.
rsync, abréviation de remote sync, vous permet de transférer et de synchroniser des fichiers ou des dossiers entre des périphériques locaux et des serveurs Linux distants. Que vous soyez un professionnel ou que vous débutiez, la maîtrise de la commande rsync peut rationaliser votre gestion des fichiers sous Linux.
Cet article se penche sur la commande rsync et son fonctionnement. Nous montrerons également comment utiliser la commande rsync à l’aide d’exemples pratiques.

rsync est une commande Linux puissante et polyvalente qui permet de transférer et de synchroniser des fichiers entre des périphériques locaux et distants. Contrairement aux commandes de copie traditionnelles, rsync utilise un algorithme de transfert delta pour ne transmettre que les différences entre les fichiers source et destination. Cette approche réduit considérablement l’utilisation de la bande passante et accélère les transferts.
rsync dispose également de fonctionnalités robustes pour le transfert de fichiers vers un serveur de sauvegarde et les tâches de mise en miroir. Il préserve les attributs des fichiers et prend en charge les transferts sécurisés via SSH, ce qui le rend adapté aux transferts de fichiers locaux et distants.
Cette section explore les différentes options de rsync et la syntaxe de base pour différents objectifs.
rsync dispose de nombreuses options de ligne de commande, de paramètres et de fichiers de configuration pour adapter son comportement. En voici quelques-uns couramment utilisés :
Pour obtenir une liste complète de toutes les options rsync disponibles, exécutez la commande suivante :
man rsync
Vous obtiendrez des informations détaillées sur chaque option et paramètre.
La syntaxe de base d’une commande rsync est la suivante :
rsync [OPTIONS] SOURCE DESTINATION
Lorsque vous utilisez rsync pour transférer des données d’un ordinateur local vers un serveur privé virtuel (VPS) Linux, la communication repose sur le démon rsync. La syntaxe de rsync pour le shell distant est la suivante :
rsync [OPTIONS] -e "SSH_COMMAND" SOURCE DESTINATION
L’option -e permet de spécifier le shell distant. Dans la plupart des cas, vous utiliserez ssh pour vous connecter à l’hôte distant en utilisant le protocole de mise à jour à distance rsync.
Examinons deux scénarios courants.
Utilisez la commande suivante pour extraire des données d’un système distant vers votre machine locale :
rsync -avz -e ssh utilisateur@hote_distant:/chemin/vers/source/ /chemin/vers/destination/locale/
Utilisez la commande suivante pour transférer des données de votre système de fichiers local vers un répertoire distant à l’aide du protocole CVS :
rsync -avz /chemin/vers/source/locale/ utilisateur@hote_distant:/chemin/vers/destination/distante/
rsync est généralement inclus par défaut dans de nombreuses distributions Linux. Vérifions si rsync est déjà installé sur votre système.
Pour les utilisateurs de Windows travaillant avec un hébergement VPS, utilisez PuTTY SSH pour vous connecter. Si vous utilisez macOS ou Linux, accédez à Terminal.
Une fois connecté, exécutez la commande ci-dessous :
rsync --version
Vous obtiendrez un résultat similaire à celui qui suit :
rsync version 3.2.7 protocol version 31

Si rsync n’est pas préinstallé sur votre machine locale ou distante, installez-le manuellement. Voici les commandes d’installation pour les différents systèmes d’exploitation :
Pour les distributions basées sur Debian, y compris Ubuntu :
sudo apt-get install rsync
Pour les distributions basées sur Fedora, telles que CentOS :
sudo dnf install rsync
Pour macOS :
brew install rsync
Avant d’apprendre à utiliser rsync, préparons deux répertoires de test nommés original et duplicate. Le répertoire original contiendra trois fichiers d’exemple, tandis que le répertoire duplicate sera vide au départ.
Pour créer ces répertoires, suivez les commandes suivantes :
cd
mkdir original
mkdir duplicate
Ensuite, créez trois fichiers d’exemple dans le dossier original à l’aide de la commande touch :
touch original/file{1..3}Pour vous assurer que tous les fichiers échantillons ont été créés, listez tous les fichiers du répertoire original et observez le système de fichiers à l’aide de la commande suivante :
rsync original/
L’un des principaux cas d’utilisation de rsync est la réplication de données entre deux répertoires au sein d’un même système. Pour ce faire, utilisez la commande suivante :
rsync original/* duplicate/
Le contenu du répertoire original sera reproduit dans le répertoire duplicate. Si vous ajoutez un nouveau fichier ou mettez à jour des fichiers existants dans le répertoire original, seuls les fichiers nouveaux ou modifiés seront transférés. Toutefois, si le répertoire duplicate n’existe pas, une erreur se produira.
Pour synchroniser les fichiers et créer un nouveau dossier simultanément, utilisez plutôt cette commande :
rsync original/ duplicate/
Pour synchroniser des dossiers et des sous-répertoires entre deux emplacements, utilisez la commande rsync copy directory :
rsync -r original/*/ duplicate/
Pour synchroniser un sous-répertoire spécifique, tapez la commande ci-dessous :
rsync -r original/nom_sous_répertoire/ duplicate/
Remplacez nom_sous_répertoire par le nom du sous-dossier que vous souhaitez synchroniser.
Il se peut que vous souhaitiez exclure un sous-répertoire particulier de la synchronisation. Dans ce cas, entrez la commande suivante :
rsync -r --exclude=nom_sous_répertoire original/ duplicate/
Pour synchroniser ou mettre à jour des fichiers entre deux dossiers, utilisez cette commande :
rsync -av original/ duplicate/
Pour copier les fichiers du répertoire original vers un serveur distant, entrez cette commande :
rsync -av -e ssh original/ nom_utilisateur@hote_distant:/chemin/vers/destination/
Remplacez nom_utilisateur, hote_distant, et /chemin/vers/destination/ par les valeurs appropriées.
Au fur et à mesure que vous vous familiariserez avec rsync, nous explorerons sa capacité à combiner plusieurs commandes pour réaliser des tâches complexes de gestion de fichiers.
Vous pouvez combiner les fonctions de synchronisation et d’exclusion pour obtenir des résultats précis.
L’exemple ci-dessous montre comment vous pouvez synchroniser tous les fichiers du répertoire rsync original tout en excluant les fichiers TXT :
rsync -av --exclude='*.txt' original/ duplicate/
Combinez l’option -r avec les commandes de synchronisation pour vous assurer que les répertoires rsync et leur contenu sont synchronisés de manière récursive.
rsync -av -r original/ duplicate/
Avant de synchroniser un dossier rsync réel, vous pouvez utiliser l’option –dry-run pour prévisualiser les changements que rsync va effectuer sans faire de modifications réelles.
rsync -av --dry-run original/ duplicate/
L’option –delete permet de supprimer du répertoire de destination les fichiers qui n’existent plus dans le répertoire source. Pour utiliser cette option, incluez-la dans votre commande rsync comme suit :
rsync -av --delete original/ duplicate/
rsync permet de synchroniser des fichiers ou des types de fichiers spécifiques à l’aide de motifs et de caractères génériques. Par exemple, pour synchroniser uniquement les fichiers TXT, entrez :
rsync -av original/*.txt duplicate/
Vous pouvez également exclure des fichiers en vous basant sur des motifs spécifiques contenus dans leur nom. Pour exclure un fichier nommé exemple.txt, tapez la commande suivante :
rsync -av --exclude=exemple.txt original/ duplicate/
Combinez les options –include et –exclude pour inclure plusieurs fichiers ou répertoires tout en excluant les autres. Voici un exemple pour inclure les fichiers commençant par la lettre L et exclure tous les autres fichiers :
rsync -av --include='L*' --exclude='*' original/ duplicate/
Pour limiter la synchronisation aux fichiers d’une taille inférieure à un certain seuil, utilisez l’option –max-size suivie de la taille limite. La commande rsync permettant de synchroniser uniquement les fichiers de moins de 10 Mo est la suivante :
rsync -av --max-size=10M original/ duplicate/
Il peut être utile de surveiller la progression de la synchronisation, en particulier pour les transferts de fichiers volumineux. rsync vous permet d’inclure une barre de progression à l’aide de l’option –progress. Voici la commande que vous pouvez utiliser :
rsync -av --progress original/ duplicate/
Le résultat ressemblera à ceci :
fichier1.txt
5,120,000 100% 50.00MB/s 0:00:00 (xfr#1, to-chk=2/3)
fichier2.txt
5,345,678 100% 55.67MB/s 0:00:00 (xfr#2, to-chk=1/3)
Pour ajouter une barre de progression et conserver les fichiers partiellement transférés au lieu de les supprimer en cas d’interruption, utilisez l’option -P :
rsync -av -P original/ duplicate/
Enfin, rsync offre un moyen pratique de créer des fichiers de sauvegarde à l’aide de l’option –backup. Cette option vous permet de sauvegarder des fichiers sur un serveur, afin d’éviter qu’ils ne soient écrasés pendant la synchronisation.
Pour créer une sauvegarde à distance et spécifier son répertoire, utilisez la commande suivante :
rsync -av --backup --backup-dir=/chemin/vers/sauvegarde/ original/ duplicate/
Lorsqu’elle est exécutée, l’option de sauvegarde rsync génère une liste de fichiers incrémentielle et ajoute un tilde (~ ) au nom du fichier d’origine, par exemple important.txt.
rsync est un puissant outil de synchronisation à distance, de transfert de données et de mise en miroir de fichiers. Dans ce guide, nous avons couvert tout ce dont vous avez besoin pour démarrer avec l’outil, de l’installation aux exemples pratiques de rsync que vous pouvez appliquer via la ligne de commande. La maîtrise de rsync améliorera votre gestion des fichiers Linux, la rendant plus efficace et plus fiable.
Comment vérifier l’espace disque sous Linux
Comment transférer des données avec la commande Curl
Comment calculer l’exécution d’un processus avec la commande Time
Comment transférer des fichiers à l’aide de la commande Scp
Comment surveiller les changements avec la commande Watch
Comment arrêter et redémarrer le serveur
rsync est principalement conçu pour les systèmes d’exploitation de type Unix, notamment Linux et macOS. Cependant, il peut également être utilisé sur les systèmes Windows à l’aide d’applications clientes rsync tierces telles que Cygwin ou Windows Subsystem for Linux (WSL). Cela fait de rsync un choix polyvalent pour la synchronisation de fichiers entre différents systèmes d’exploitation.
Au lieu de transférer des systèmes de fichiers entiers, rsync n’envoie que les différences entre les fichiers de destination et les fichiers sources, ce qui réduit l’utilisation de la bande passante. Il peut fonctionner sur des connexions SSH sécurisées, offrir une compression flexible des fichiers et reprendre les transferts interrompus. Il est particulièrement pratique lorsqu’il s’agit de traiter un grand nombre de fichiers sur un système distant.
Bien que rsync soit un outil puissant, il présente certaines limites. Tout d’abord, il n’est peut-être pas adapté à la synchronisation en temps réel, car il fonctionne en mode batch. En outre, il n’offre pas de cryptage natif, les utilisateurs s’appuyant souvent sur SSH pour des transferts sécurisés. Enfin, rsync peut être complexe pour les débutants, nécessitant une courbe d’apprentissage pour maîtriser ses nombreuses options.
Tout le contenu des tutoriels de ce site est soumis aux normes éditoriales et aux valeurs rigoureuses de Hostinger.