40 votes

<div>Commande ROBOCOPY pour effectuer une sauvegarde incrémentielle</div>

Je suis dépassé par la documentation de ROBOCOPY. Je veux faire une sauvegarde incrémentielle de mes fichiers locaux sur le lecteur réseau (M). Je veux que cela s'exécute aussi rapidement que possible, sans fichier journal et avec le moins de texte possible à l'écran. Mes fichiers se trouvent tous quelque part à l'intérieur d'un dossier (MonDossier) qui a de nombreux sous-dossiers imbriqués. Par "incrémentiel", je veux dire "ne copier que ce qui est nouveau ou modifié". Je ne veux pas supprimer les fichiers historiques dans la destination, mais si j'ai modifié un fichier, je veux seulement la version plus récente. Et si je n'ai pas modifié un fichier, alors je ne veux pas le copier par-dessus le fichier de sauvegarde existant. Est-ce que ce qui suit est correct? (Exécution sous Win7 Entreprise.)

robocopy C:\MonDossier M:\MonDossier /z /np /xo /e

S'il vous plaît, pas de suggestions pour autre chose que robocopy. Je n'ai pas le droit d'installer quoi que ce soit. Et je ne me soucie pas des trucs de sécurité. J'ai des gens pour ça (que je les veuille ou non). ;-)

52voto

pederpansen Points 698

J'utilise avec succès une variante du script suivant depuis quelques années maintenant :

robocopy C:\source M:\destination /MIR /FFT /R:3 /W:10 /Z /NP /NDL

Explication des paramètres

  • L'option /MIR (équivalente à /E /PURGE) signifie "miroir" et est l'option la plus importante. Elle considère votre dossier source comme le "maître", ce qui fait que robocopy copie/miroite tous les changements dans le source (nouveaux fichiers, suppressions, etc.) vers la cible, ce qui est utile pour une sauvegarde.

  • /FFT est une option très importante, car elle permet une différence de 2 secondes lors de la comparaison des horodatages des fichiers, de sorte que les différences mineures d'horloge entre votre ordinateur et votre dispositif de sauvegarde n'ont pas d'importance. Cela garantira que seuls les fichiers modifiés sont copiés, même si les heures de modification des fichiers ne sont pas exactement synchronisées.

  • /R:3 spécifie le nombre de tentatives, si la connexion échoue, et /W:10 spécifie un temps d'attente de 10 secondes entre les tentatives. Ce sont des options utiles lors de la sauvegarde sur un réseau.

  • /Z copie les fichiers en "mode de redémarrage", de sorte que les fichiers partiellement copiés puissent être repris après une interruption.

  • /NP et /NDL suppriment une partie de la sortie de débogage, vous pouvez ajouter également /NS, /NC, /NFL pour réduire davantage la quantité de sortie (consultez la documentation pour plus de détails). Cependant, je suggère d'imprimer une certaine sortie de débogage lors des premières exécutions, pour vous assurer que tout fonctionne comme prévu.

Paramètres supplémentaires utiles mentionnés par d'autres utilisateurs

  • /XJD exclut les "points de jonction" pour les répertoires, des liens symboliques qui pourraient causer des problèmes comme des boucles infinies lors de la sauvegarde. Voir les commentaires de Brian pour plus de détails.

  • /MT[:N] utilise le multithreading et peut accélérer les transferts de nombreux petits fichiers. Pour N, une valeur de 2 à 4 fois le nombre de cœurs devrait être suffisante sur une machine normale. Commenté par Zoredache sur la question d'origine.

Modifications en réponse au commentaire de Granger :

Si vous voulez vraiment conserver les fichiers qui existent sur la destination, mais pas sur le côté source, remplacez simplement l'option /MIR par /E. Cependant, je recommande vivement d'utiliser /MIR lorsque vous souhaitez utiliser la destination pour des sauvegardes progressives. Sinon, tous les fichiers qui ont été renommés ou déplacés côté source encombreront la destination, ce qui signifie que vous aurez des doublons. Je crée généralement un sous-dossier "backup" sur la destination qui contient une copie 1:1 de l'arborescence de mon dossier source. De cette manière, vous pouvez toujours garder des fichiers historiques à côté du dossier de sauvegarde et les supprimer ou les réorganiser en toute sécurité ultérieurement.

7voto

kentaromiura Points 3361

J'aime utiliser ce qui suit:

robocopy "C:\Utilisateurs\" "F:\robocopy\" /XJD /R:0 /XA:SH /E /ZB /XO /XD "Téléchargements" "AppData" /LOG:robocopy.log /TEE

Je lance cela en tant qu'administrateur pour que le mode de sauvegarde (/b) puisse effectuer une copie des fichiers en cours d'utilisation.

D'autres options non liées à la nature incrémentielle de la sauvegarde sont:

/XD pour exclure des répertoires de la sauvegarde.

/XJD pour exclure les points de jonction ("Ma musique").

/R:0 pour définir le nombre de tentatives de réessai sur 0.

/XA:SH pour sauter les fichiers cachés et système.

Pour supprimer autant d'informations de journalisation que possible, ajoutez les options suivantes /NP /NS /NDL /NFL /NC.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X