Robocopy, ou Robust File Copy, est un outil en ligne de commande intégré à Windows qui facilite la copie, la synchronisation et la sauvegarde de fichiers. Conçu pour être robuste face aux erreurs et aux interruptions, il est particulièrement apprécié par les administrateurs système et les utilisateurs avancés. Ce guide complet présente l’ensemble des fonctionnalités de Robocopy, agrémenté de nombreux exemples concrets pour vous aider à exploiter tout son potentiel.
1. Introduction à Robocopy
Qu’est-ce que Robocopy ?
Robocopy remplace avantageusement des commandes classiques comme COPY ou XCOPY grâce à sa capacité à reprendre automatiquement les transferts interrompus, à copier uniquement les fichiers modifiés et à offrir une flexibilité poussée via de multiples options.
Principaux atouts :
- Robustesse : Gestion automatique des erreurs et reprise en cas d’interruption.
- Performance : Optimisation de la copie en ne transférant que les modifications.
- Flexibilité : Options avancées pour filtrer, synchroniser, et générer des rapports.
Où le trouver ?
Robocopy est inclus par défaut dans Windows Vista, Windows 7, Windows 10, Windows Server 2008 et versions ultérieures. Il s’exécute directement via l’invite de commandes.
2. Syntaxe de Base et Commandes Essentielles
La syntaxe générale de Robocopy est :
robocopy <source> <destination> [options]
– <source> : répertoire source
– <destination> : répertoire de destination
– [options] : ensemble des paramètres permettant de personnaliser la copie
Exemple Basique : Pour copier le contenu du dossier C:\Documents vers D:\Backup :
robocopy C:\Documents D:\Backup
3. Options Avancées et Exemples Pratiques
Robocopy offre une large gamme d’options. Voici quelques-unes des plus utiles, accompagnées d’exemples concrets.
a. Synchronisation et Mirroring
Option /MIR
Synchronise le dossier source avec le dossier destination en copiant les fichiers nouveaux ou modifiés et en supprimant ceux qui ont été supprimés de la source.
robocopy C:\Data D:\Backup /MIR
Attention : Cette commande peut supprimer des fichiers du dossier de destination qui n’existent plus dans le dossier source.
Option /E
Copie tous les sous-répertoires, y compris ceux qui sont vides.
robocopy C:\Data D:\Backup /E
b. Gestion des Erreurs avec /R et /W
Option /R:<nombre>
Définit le nombre de tentatives en cas d’erreur (par défaut, Robocopy réessaie 1 million de fois).
robocopy C:\Data D:\Backup /R:5
Option /W:<secondes>
Spécifie le temps d’attente entre chaque tentative. La valeur par défaut est de 30 secondes.
robocopy C:\Data D:\Backup /R:5 /W:10
Exemple Complet : Copie du dossier C:\Projects vers E:\ProjectsBackup avec 3 tentatives et 15 secondes d’attente :
robocopy C:\Projects E:\ProjectsBackup /R:3 /W:15
c. Filtrage et Sélection des Fichiers
Exclure des fichiers et répertoires avec /XF et /XD
– /XF permet d’exclure certains types de fichiers.
– /XD permet d’exclure des dossiers spécifiques.
robocopy C:\Data D:\Backup /XF *.tmp *.bak /XD C:\Data\Temp
Copier selon la date de modification avec /MAXAGE et /MINAGE
Copie uniquement les fichiers modifiés dans une certaine période.
robocopy C:\Data D:\Backup /MAXAGE:7
Cet exemple copie les fichiers modifiés au cours des 7 derniers jours.
d. Journalisation et Reporting
Option /LOG
Enregistre la sortie de Robocopy dans un fichier log pour une analyse ultérieure.
robocopy C:\Data D:\Backup /LOG:C:\BackupLogs\log.txt
Option /TEE
Affiche simultanément la sortie sur la console et l’enregistre dans le fichier log.
robocopy C:\Data D:\Backup /LOG:C:\BackupLogs\log.txt /TEE
e. Autres Options Utiles
Mode redémarrable /Z
Permet de reprendre la copie en cas d’interruption, utile pour les connexions instables.
robocopy C:\Data D:\Backup /Z
Option /NP
Masque l’affichage de la progression, pour une sortie plus concise.
robocopy C:\Data D:\Backup /NP
Multi-threading avec /MT
Active la copie multi-threadée pour accélérer le processus. La valeur par défaut est 8, mais peut être ajustée.
robocopy C:\Data D:\Backup /MT:16
4. Exemples Pratiques de Scénarios d’Utilisation
Exemple 1 : Sauvegarde de Documents Personnels
Copie le contenu de C:\Users\VotreNom\Documents vers E:\SauvegardeDocuments, en excluant les fichiers temporaires, en activant le mode redémarrable et en générant un log détaillé :
robocopy C:\Users\VotreNom\Documents E:\SauvegardeDocuments /E /XF *.tmp /Z /LOG:E:\SauvegardeDocuments\backup_log.txt
Exemple 2 : Synchronisation d’un Répertoire de Travail
Synchronise le dossier de travail C:\Travail avec F:\BackupTravail en utilisant l’option /MIR pour refléter les modifications et supprimer les fichiers obsolètes :
robocopy C:\Travail F:\BackupTravail /MIR /R:3 /W:10 /LOG:F:\BackupTravail\sync_log.txt
Exemple 3 : Copie Multi-threadée pour de Gros Volumes de Données
Utilise 16 threads pour accélérer la copie de gros volumes, tout en désactivant l’affichage de la progression :
robocopy D:\GrosFichiers E:\BackupGrosFichiers /MT:16 /NP /LOG:E:\BackupGrosFichiers\multithread_log.txt
Exemple 4 : Sauvegarde de Fichiers Réseau avec Gestion Fine des Erreurs
Copie des fichiers depuis un serveur réseau en spécifiant 5 tentatives et une attente de 20 secondes entre chaque essai pour pallier les problèmes de connectivité :
robocopy \\Serveur\Partage D:\SauvegardeServeur /R:5 /W:20 /Z /LOG:D:\SauvegardeServeur\network_backup_log.txt
Exemple 5 : Copie en Mode Conservateur avec Sauvegarde Complète des Attributs
Pour copier des fichiers tout en préservant l’intégralité des attributs (données, attributs, timestamps, sécurité, propriétaire et informations d’audit), utilisez l’option /COPYALL avec /DCOPY:T pour copier les horodatages des dossiers :
robocopy C:\Data D:\Backup /COPYALL /DCOPY:T /LOG:C:\BackupLogs\full_backup_log.txt
Exemple 6 : Copie avec Compatibilité FAT et NTFS (/FFT)
Lors du transfert de fichiers entre des systèmes de fichiers différents (par exemple, FAT et NTFS), l’option /FFT peut aider à résoudre les problèmes liés aux différences de résolution temporelle :
robocopy C:\Source D:\Destination /FFT /LOG:C:\BackupLogs\fft_backup_log.txt
Exemple 7 : Sauvegarde Spécifique de Vidéos avec Exclusion des Fichiers Temporaires
Copie un dossier de vidéos tout en excluant les fichiers temporaires, et en utilisant un grand nombre de threads pour accélérer la copie :
robocopy D:\Videos E:\BackupVideos /MT:32 /XF *.tmp /LOG:E:\BackupVideos\videos_backup_log.txt
5. Conseils pour Optimiser l’Utilisation de Robocopy
- Planifiez vos copies : Exécutez Robocopy pendant les périodes de faible activité pour minimiser l’impact sur le réseau.
- Testez vos commandes : Vérifiez vos scripts dans un environnement de test avant de les utiliser en production.
- Exploitez la journalisation : Analysez régulièrement les fichiers log pour identifier et corriger d’éventuelles erreurs ou points d’amélioration.
- Automatisez avec des scripts : Intégrez Robocopy dans des scripts batch pour automatiser les sauvegardes et réduire les erreurs humaines.
- Utilisez le filtrage efficacement : Adaptez les options
/XFet/XDpour éviter la copie de fichiers ou répertoires non nécessaires.
6. Guide de Dépannage
Problèmes Courants et Solutions
- Fichiers non copiés malgré l’utilisation de Robocopy :
Vérifiez les options de filtrage et les permissions sur les dossiers source et destination. Consultez le log pour identifier les erreurs spécifiques. - Temps de copie trop long en cas d’erreurs fréquentes :
Ajustez les paramètres/Ret/Wpour réduire les délais inutiles si les erreurs sont rares, ou augmentez-les si des erreurs temporaires sont fréquentes. - Interruption de la connexion réseau :
Activez l’option/Zpour permettre une reprise en cas d’interruption et adaptez les valeurs de/Ret/Wselon la stabilité du réseau.
Conclusion
Robocopy est un outil indispensable pour la gestion avancée des transferts de fichiers sous Windows. Sa robustesse, sa flexibilité et ses nombreuses options en font une solution idéale pour les besoins simples de copie comme pour des scénarios de sauvegarde et de synchronisation complexes.
