41 votes

Est-ce que robocopy reprendra après avoir été interrompu ?

Mon répertoire utilisateurs est de 58 Go et je le copie sur un disque de sauvegarde USB portable à partir de la récupération de Windows en utilisant Robocopy.

robocopy G:\Users\ E:\Backup\T420\ /MIR /SEC /MT:32 /V /LOG:G:\bak\robocopy.txt

L'ordinateur portable est en USB 2 et le disque de sauvegarde est en USB 3.

Cela fait maintenant plus de 18 heures qu'il tourne, ce qui est plus long que ce que j'attendais.

Même à une vitesse lente pour de l'USB 2, cela ne devrait prendre que 8 heures environ

https://www.wolframalpha.com/input/?i=58+gB+at+2+MB%2Fs

Si j'appuie sur Ctrl-C et que j'inspecte le journal pour voir ce qui se passe, puis que je lance à nouveau la commande, cela prendra-t-il le même temps ou reprendra-t-il là où il s'est arrêté ?

En supposant qu'il reprenne, quel genre de surcharge de temps y a-t-il pour déterminer quels fichiers restent à copier et où reprendre ?

EDIT : Il s'est avéré que la raison pour laquelle cela prenait autant de temps était à cause de certains fichiers OneDrive faux ou non entièrement synchronisés qui ne pouvaient pas être copiés et des valeurs par défaut de réessai d'1 million de fois. Changer le nombre de réessais et le délai a permis de terminer /r:2 /w:5

2voto

Je vais contester un peu ici. Je comprends la frustration d'une copie lente, mais interrompre la copie n'est pas la façon de vérifier la progression de la copie.

Regardez le graphique de l'historique d'E/S du disque

Démarrer le moniteur de performances et regarder l'historique de l'activité d'E/S du disque. Vous devriez le faire lorsque le système est quiescent; s'il effectue beaucoup d'autres tâches, vous pourriez être en train de regarder cette activité disque. Cependant, cela sera irrégulier; vous cherchez l'activité "de base" qui est présente tout au long du graphique. Sur mon Mac, il sépare les lectures et les écritures; évidemment vous regardez les écritures. (la plupart des autres activités seront des lectures).

entrer une description de l'image ici

Ancienne version de Mac. Windows est plus robuste. Le premier tas est rsync planifiant la copie, le deuxième tas est trois gros fichiers vidéo MP4, et le dernier tas est une multitude de petits fichiers.

Dans mon expérience, en pratique, cette barre sautera un peu. Lors de la copie de gros fichiers uniques - vidéos et fichiers TIFF, il se cale sur ce que est le débit d'un maximum matériel.*

Mais lors de la copie de milliards de petits fichiers, le débit MB par seconde plonge... parce que les disques doivent lire (et écrire) une entrée de répertoire pour chaque fichier. Vous n'avez pas de temps d'attente de déplacement de tête et de retards d'attente pour le secteur sur les clés USB Flash, mais vous en avez sur les disques durs physiques - en grande quantité. Les disques durs et les systèmes d'exploitation robustes ont des stratégies pour atténuer la douleur, mais il y a toujours une grande douleur.

  • C'est pourquoi je transforme toutes mes collections de petits fichiers en packages ZIP, tarballs, ou images disque.

Regardez les fichiers eux-mêmes arrivant sur le disque de destination

Utilisez votre windows (ou une ligne de commande) pour parcourir les répertoires de destination. Trouver le "bord avant" de la copie, c'est-à-dire les répertoires qui sont ajoutés en ce moment. Regarder l'activité et vérifier si c'est normal.

Écoutez le disque dur

Si votre disque fait

tictictic...

C'est une bonne copie en cours. Le disque effectue de grands transferts de blocs, utilisant son arrangement de secteur formaté pour une utilisation optimale, etc. Si, en revanche, vous entendez

shikkita shikkita shikkita

C'est une activité intensive du disque. Quelque chose s'est mal passé avec votre sauvegarde, et cela nuit au débit. Ce son signifie que le disque cherche la tête beaucoup - et quand la tête bouge, elle ne copie pas. De plus, lorsqu'elle arrive, elle doit se stabiliser et attendre en moyenne 0,5 tours de plateau de disque pour que le secteur souhaité se présente. Les disques tournent à 5400-10 000 tr/min, donc c'est 3-6 ms à chaque recherche.

Dans le diagramme précédent, en effet, la section épaisse avait le disque silencieux comme une souris, et dans la section ultérieure, shickkita.

Par exemple, une fois j'avais un nid de 5,5 millions de petits (30-500 octets) fichiers au milieu d'une grande sauvegarde. Quand le disque a commencé à sonner comme une mêlée de la Première Guerre mondiale, j'ai vérifié le graphique et j'ai vu les mauvaises nouvelles. À ce rythme, la copie aurait pris des jours.

Alors j'ai fermé les applications, créé un RAMdisk suffisant, et copié les 5,5M fichiers sur le RAMdisk. En lisant depuis le HDD, cela a bénéficié du cache disque; l'écriture a été instantanée bien sûr. Cela a pris une demi-heure. Puis je l'ai réécrit sur le disque dur comme un fichier ZIP, qui s'est écrit comme un flux continu de données, donc "tic...tic...tic...". C'était encore plus rapide.

Supprimer les 5,5M fichiers a pris une éternité, mais ensuite, le fichier ZIP a été sauvegardé en moins d'une minute. Une grande amélioration par rapport à un jour!

En ce qui concerne le moment d'interrompre la copie, faites-le lorsque ce qui précède vous indique que la copie ne fonctionne pas correctement, et que vous avez un plan ou souhaitez expérimenter pour le corriger.

Ne jamais, jamais, jamais utiliser le multi-threading

Les moniteurs montrent que vous obtiendrez le meilleur débit en streaming d'un seul gros fichier comme une vidéo. L'optimisation de secteur du disque fonctionne à plein régime: le secteur nécessaire suivant apparaît sous la tête du disque juste au moment où il est nécessaire.

Mais supposez que vous copiez 2 grandes vidéos en même temps. Le disque essaye de faire les deux en même temps: Il se déplace vers la vidéo 1, écrit un bloc, se déplace vers la vidéo 2, écrit un bloc, se déplace vers la vidéo 1, écrit un bloc, ad nauseum. Soudainement, nous cherchons au lieu d'écrire, et le débit fait ce que l'on attend.

Donc ne faites pas ça. Et le graphique de l'historique d'E/S du disque vous dira pourquoi.

Par exemple, je "rsync" du disque dur interne à l'externe 2. Je fais également du rsync de l'externe 1 à l'externe 2. Ce sont tous configurés dans des scripts. Je ne lance pas les deux en même temps, car ils se disputeront sur l'externe 2, ralentissant ainsi les deux copies.

Maintenant, ce que vous avez fait, avec /MT:32, c'est lui dire de créer 32 copies en même temps, ce qui est exactement ce que je vous dis de ne pas faire ici. *Peut-être que le multi-threading aide sur des disques hybrides, des disques RAM, des RAIDs, ou de bons algorithmes de recherche d'ascenseurs qui s'entendent bien avec l'ensemble de données particulier. Cela ne semble pas être le cas ici. Mais quoi qu'il en soit, ne prenez pas ma parole pour argent comptant - vous devriez utiliser les graphiques pour expérimenter et trouver le bon compromis pour votre matériel. (Ce qui sera probablement "1").


* le plus faible de a) le débit USB de l'ordinateur, b) le débit USB du périphérique, c) le débit de lecture du disque et d) le débit d'écriture du disque.

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