Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
983 connectés 

  FORUM HardWare.fr
  Windows & Software
  Win 7

  Les blagounettes Robocopy

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Les blagounettes Robocopy

n°3208311
Vince31088​4
Posté le 31-10-2015 à 13:24:24  profilanswer
 

Plop la compagnie,
 
J'avais dans l'idée de me faire un script Windoze pour sauvegarder / archiver mes données. En réalité, j'ai déjà un Shell qui fonctionne plutôt bien sous Cygwin, mais pendant un moment, je me suis dis qu'il serai peut etre pas mal de simplifier un peu le truc, et de scripter un équivalent en full Windobe.
 
En cherchant un peu le ouèb, on tombe sur Robocopy, le copieur de fichier robuste  :lol:  a la sauce 'Grosoft.
 
Ni une ni deux, j'envoie la commande et obtient l'aide qui va bien :
 

Spoiler :

C:Windowssystem32>robocopy /?
 
-------------------------------------------------------------------------------
   ROBOCOPY   ::   Copie de fichiers robuste pour Windows
-------------------------------------------------------------------------------
 
  Début : Sat Oct 31 13:23:47 2015
 
              Syntaxe :: ROBOCOPY source destination [fichier [fichier]...] [options]
 
             source :: répertoire source (lecteur:chemin ou serveurpartagechemin).
        destination :: rép. de destination (lecteur:chemin ou serveurpartagechemin).
               fichier :: fichier(s) à copier (noms/caractères génériques : valeur par défaut "*.*";).
 
::
:: Options de copie :
::
                 /S :: copie les sous-répertoires non vides uniquement.
                 /E :: copie les sous-répertoires, y compris les vides.
             /LEV:n :: copie uniquement les n premiers niveaux de l’arborescence source.
 
                 /Z :: copie les fichiers en mode de redémarrage.
                 /B :: copie les fichiers en mode de sauvegarde.
                /ZB :: utilise le mode de redémarrage ; si l’accès est refusé, utilise le mode de sauvegarde.
            /EFSRAW :: copie tous les fichiers chiffrés en mode EFS RAW.
 
  /COPY:indicateurscopie :: spécifie les éléments à copier pour les fichiers (/COPY:DAT par défaut).
                       (indicateurscopie : D=Données, A=Attributs, T=horodaTages).
                       (S=Sécurité=ACL NTFS, O=infos prOpriétaire, U=infos d’aUdit).
 
           /DCOPY:T :: copie les horodatages de répertoire.
 
               /SEC :: copie des fichiers avec sécurité (équivaut à /COPY:DATS).
           /COPYALL :: copie toutes les infos de fichiers (équivaut à /COPY:DATSOU).
            /NOCOPY :: ne copie aucune info de fichier (utile avec /PURGE).
 
            /SECFIX :: corrige la sécurité de tous les fichiers, même les fichiers ignorés.
            /TIMFIX :: corrige les horodatages de tous les fichiers, même les fichiers ignorés.
 
             /PURGE :: supprime les fichiers/répertoires de destination qui n’existent plus dans la source.
               /MIR :: met en MIRoir une arborescence (équivaut à /E plus /PURGE).
 
               /MOV :: déplace les fichiers (les supprime de la source après la copie).
              /MOVE :: déplace les fichiers ET les répertoires (les supprime de la source après la copie).
 
     /A+:[RASHCNET] :: ajoute les Attributs donnés aux fichiers copiés.
     /A-:[RASHCNET] :: supprime les Attributs donnés des fichiers copiés.
 
            /CREATE :: crée une arborescence et des fichiers de longueur nulle uniquement.
               /FAT :: crée des fichiers de destination au format de nom 8.3 FAT uniquement.
               /256 :: désactive la prise en charge des chemins d’accès très longs (> 256 caractères).
 
             /MON:n :: source du moniteur ; réexécuté lorsque plus de n modifications sont observées.
             /MOT:m :: source du moniteur ; réexécuté après m minutes en cas de modification.
 
      /RH:hhmm-hhmm :: heures d’exécution : heures auxquelles de nouvelles copies peuvent être lancées.
                /PF :: vérifie les heures d’exécution Par Fichier (et non par passage).
 
             /IPG:n :: délai entre les paquets (ms) pour libérer la bande passante sur les lignes bas débit.
 
                /SL:: copie les liens symboliques par opposition à la cible.
 
            /MT[:n] :: Effectuer des copies multi-thread avec n threads (par défaut, 8).
                       n doit être au moins égal à 1 et pas supérieur à 128.
                       Cette option est incompatible avec les options /IPG et /EFSRAW.
                       Rediriger la sortie avec l’option /LOG pour de meilleures performances.
 
::
:: Options de sélection des fichiers :
::
                 /A :: copie uniquement les fichiers où l’attribut Archive est défini.
                 /M :: copie uniquement les fichiers où l’attribut Archive est défini et le réinitialise.
    /IA:[RASHCNETO] :: Inclut uniquement les fichiers où l’un des Attributs donnés est défini.
    /XA:[RASHCNETO] :: eXclut les fichiers où l’un des Attributs donnés est défini.
 
 /XF fichier [fichier]... :: eXclut les fichiers correspondant aux noms/chemins/caractères génériques donnés.
 /XD répertoires [répertoires]... :: eXclut les répertoires correspondant à des noms/chemins donnés.
 
                /XC :: eXclut les fichiers Changés.
                /XN :: eXclut les fichiers Nouveaux.
                /XO :: eXclut les fichiers anciens.
                /XX :: eXclut les fichiers et répertoires supplémentaires.
                /XL :: eXclut les fichiers et répertoires solitaires.
                /IS :: Inclut les mêmeS fichiers.
                /IT :: Inclut les fichiers optimisés.
 
             /MAX:n :: taille de fichier maximale : exclut les fichiers de taille supérieure à n octets.
             /MIN:n :: taille de fichier minimale : exclut les fichiers de taille inférieure à n octets.
 
          /MAXAGE:n :: Antériorité maximale du fichier : exclut les fichiers plus anciens que n jours/qu’une date n.
          /MINAGE:n :: Antériorité minimale du fichier : exclut les fichiers plus récents que n jours/qu’une date n.
          /MAXLAD:n :: dernière date d’accès MAXimale : exclut les fichiers inutilisés depuis n.
          /MINLAD:n :: dernière date d’accès MINimale : exclut les fichiers utilisés depuis n.
                       (si n < 1900, alors n = n jours, sinon n = date JJMMAAA).
 
                /XJ :: eXclut les points de Jonction (normalement inclus par défaut).
 
               /FFT :: suppose des heures de fichier FAT (granularité de 2 secondes).
               /DST :: compense les différences d’heure d’été d’une heure.
 
               /XJD :: eXclut les points de Jonction pour les répertoires.
               /XJF :: eXclut les points de Jonction pour les Fichiers.
 
::
:: Options de nouvelle tentative :
::
               /R:n :: nombre de tentatives après l’échec de copies : 1 million par défaut.
               /W:n :: délai entre les tentatives : 30 secondes par défaut.
 
               /REG :: enregistre /R:n et /W:n comme paramètres par défaut dans le Registre.
 
               /TBD :: attend la détermination des noms de partage (erreur de nouvelle tentative 67).
 
::
:: Options d’enregistrement dans le journal :
::
                 /L :: Liste uniquement : pas de copie, d’horodatage ou de suppression de fichiers.
                 /X :: signale tous les fichiers supplémentaires et pas uniquement ceux sélectionnés.
                 /V :: produit un résultat détaillé en affichant les fichiers ignorés.
                /TS :: inclut les horodaTageS des fichiers sources dans le résultat.
                /FP :: inclut le chemin d’accès complet des fichiers dans le résultat.
             /BYTES :: affiche les tailles en octets.
 
                /NS :: pas de taille : n’enregistre pas les tailles de fichier.
                /NC :: pas de classe : n’enregistre pas les classes de fichier.
               /NFL :: pas de liste de fichiers : n’enregistre pas les noms de fichiers.
               /NDL :: pas de liste de répertoires : n’enregistre pas les noms de répertoire.
 
                /NP :: pas de compteur de progression : n’affiche pas le pourcentage copié.
               /ETA :: affiche l’heure de fin estimée de la copie des fichiers.
 
          /LOG:fichier :: copie le statut dans le fichier journal (remplace le journal existant).
         /LOG+:fichier :: copie le statut dans le fichier journal (ajoute au journal existant).
 
       /UNILOG:fichier :: copie le statut dans le fichier journal en Unicode (remplace le journal existant).
      /UNILOG+:fichier :: copie le statut dans le fichier journal en Unicode (ajoute au journal existant).
 
               /TEE :: résultat dans la fenêtre de la console et dans le fichier journal.
 
               /NJH :: pas d’en-tête de tâche.
               /NJS :: pas de résumé de tâche.
 
           /UNICODE :: sortie au format UNICODE.
 
::
:: Options de tâche :
::
       /JOB:NomTâche :: prend les paramètres du fichier de tâche nommé.
      /SAVE:NomTâche :: enregistre les paramètres dans le fichier nommé
              /QUIT :: arrête après traitement de la ligne de commande (pour afficher les paramètres).
              /NOSD :: aucun répertoire source spécifié.
              /NODD :: aucun répertoire de destination spécifié.
                /IF :: Inclut les fichiers suivants.
 
C:Windowssystem32>


Sauf qu'après quelques tests, j'ai vraiment des trucs très très bizarre a mon sens :
 

  • On commence par le /B qui m'envoie systématiquement péter comme ca :


 

Code :
  1. ERREUR : vous ne disposez pas des droits de sauvegarde et de restauration de fichiers.
  2. *****  Ils sont requis pour effectuer des copies de sauvegarde (/B ou /ZB).
  3. ERREUR : mémoire insuffisante, fermeture de Robocopy.
  4. ERREUR : paramètre non valide #%d : "%s"
  5. ERREUR : fichier de tâche non valide, ligne #%d : "%s"


 
 
Pourquoi ? Strictement la même commande sans ce paramètre fonctionne correctement. Admettons  :??:  
 
 
 
 

  • Ensuite le /FAT, censé créer des fichiers au format FAT "8+3" : Donc nom de fichier sur 8 caractères + 3 charretières pour l'extension. J'ai des noms de fichiers a ralonge, le fichier copié est strictement le même ! Ca ne me sert pas, mais ca marche pas comme prévu hein ? 2nd  :??:  


 

  • Le paramètre /MT pour grosso modo parralléliser sur plusieurs threads la copie. Par défaut c'est a 8, et les valeurs autorisées vont entre 1 et 128. Premièrement, que je laisse par defaut (donc 8), que je mette 1 ou 128, mes copies durent exactement le même temps. J'ai testé grosso modo avec 4 Go de données, et c'est pareil.


 
       Par contre, les relevés de temps à la fin de Robocopy sont complètement faux si on spécifie une valeur pour /MT :
 
 


C:TempMS.Office.2010>robocopy /MT:1 /E /V /FP C:Temp D:TEMPROBOCOPY
 
-------------------------------------------------------------------------------
   ROBOCOPY   ::   Copie de fichiers robuste pour Windows
-------------------------------------------------------------------------------
 
[#ff0000]  Début : Sat Oct 31 13:37:20 2015[/#ff0000]
 
   Source : C:Temp
     Dest : D:TEMPROBOCOPY
 
    Fichiers : *.*
 
  Options : *.* /V /FP /S /E /COPY:DAT /MT:1 /R:1000000 /W:30
 
-------------------------------------------------------------------------------
 
          Nouveau rép.          0       C:Temp
          Nouveau rép.          6       C:TempMS.Office.2010
100%        Nouveau fichier                2.5 g        C:TempMS.Office.2010fr_office_professional_plus_2010_with_sp1_x86_x64_dvd_730410.iso
100%        Nouveau fichier                50557        C:TempMS.Office.2010fr_office_professional_plus_2010_with_sp1_x86_x64_dvd_730410.jpg
100%        Nouveau fichier                  166        C:TempMS.Office.2010fr_office_professional_plus_2010_with_sp1_x86_x64_dvd_730410.sha
100%        Nouveau fichier                1.3 g        C:TempMS.Office.2010OFFICE14.ISO
100%        Nouveau fichier                  177        C:TempMS.Office.2010OFFICE14.keys
100%        Nouveau fichier                10240        C:TempMS.Office.2010Thumbs.db
 
-------------------------------------------------------------------------------
 
               Total     Copié    IgnoréDiscordance     ÉCHEC    Extras
     Rép :         2         2         0         0         0         0
Fichiers :         6         6         0         0         0         0
  Octets :   3.908 g   3.908 g         0         0         0         0
[#ff0000]   Heures:   0:00:21   0:00:05                       0:00:00   0:00:05
 
 Terminé : Sat Oct 31 13:37:31 2015[/#ff0000]


Grosso modo très peu de variation de temps d'execution. Entre l'heure de début et l'heure de fin, on a 11 secondes. Le rapport de temps me parle de 21 secs et 5 secs ... Pas mal !  :heink:  
 
Sans le paramètre /MT, ca marche comme il faut :
 
 
 


C:TempMS.Office.2010>robocopy /E /V /FP C:Temp D:TEMPROBOCOPY
 
-------------------------------------------------------------------------------
   ROBOCOPY   ::   Copie de fichiers robuste pour Windows
-------------------------------------------------------------------------------
 
[#ff0000]  Début : Sat Oct 31 13:35:00 2015[/#ff0000]
 
   Source : C:Temp
     Dest : D:TEMPROBOCOPY
 
    Fichiers : *.*
 
  Options : *.* /V /FP /S /E /COPY:DAT /R:1000000 /W:30
 
-------------------------------------------------------------------------------
 
          Nouveau rép.          0       C:Temp
          Nouveau rép.          6       C:TempMS.Office.2010
100%        Nouveau fichier                2.5 g        C:TempMS.Office.2010fr_office_professional_plus_2010_with_sp1_x86_x64_dvd_730410.iso
100%        Nouveau fichier                50557        C:TempMS.Office.2010fr_office_professional_plus_2010_with_sp1_x86_x64_dvd_730410.jpg
100%        Nouveau fichier                  166        C:TempMS.Office.2010fr_office_professional_plus_2010_with_sp1_x86_x64_dvd_730410.sha
100%        Nouveau fichier                1.3 g        C:TempMS.Office.2010OFFICE14.ISO
100%        Nouveau fichier                  177        C:TempMS.Office.2010OFFICE14.keys
100%        Nouveau fichier                10240        C:TempMS.Office.2010Thumbs.db
 
-------------------------------------------------------------------------------
 
               Total     Copié    IgnoréDiscordance     ÉCHEC    Extras
     Rép :         2         2         0         0         0         0
Fichiers :         6         6         0         0         0         0
  Octets :   3.908 g   3.908 g         0         0         0         0
   [#ff0000]Heures:   0:00:14   0:00:14 [/#ff0000]                      0:00:00   0:00:00
 
 
   Débit :           288773898 Octets/sec.
   Débit :           16523.774 Méga-octets/min.
[#ff0000]
 Terminé : Sat Oct 31 13:35:15 2015[/#ff0000]
 
 
 


 
Quelqu'un a des petites réponses a proposer ?

Message cité 1 fois
Message édité par Vince310884 le 31-10-2015 à 13:41:48
mood
Publicité
Posté le 31-10-2015 à 13:24:24  profilanswer
 

n°3208523
nex84
Dura lex, sed lex
Posté le 02-11-2015 à 09:24:04  profilanswer
 

Vince310884 a écrit :

Quelqu'un a des petites réponses a proposer ?


 
Euh, et c'est quoi tes questions exactement ?


---------------
#TeamNoBidouille || Come to the Dark Side, we have cookies || Mangez 5 fruits et légumes par an ! || Le digital, c'est les doigts
n°3208540
Z_cool
HFR profile rating:⭐⭐⭐⭐
Posté le 02-11-2015 à 12:07:48  profilanswer
 

nex84 a écrit :


 
Euh, et c'est quoi tes questions exactement ?


c'est clair pourtant.
 
en petite réponse, tu a "oui" ou "non"
 
enfin perso toutes les autres que je peux imaginer seront plus longue


---------------
#mais-chut
n°3208551
Vince31088​4
Posté le 02-11-2015 à 12:50:01  profilanswer
 

Bah chépa, ptete savoir si vous observez le meme comportement ? Et si non, pourquoi alors je rencontre ce genre d'incohérences , et essayer de l'expliquer ?

n°3208553
pongyi
Posté le 02-11-2015 à 12:57:32  profilanswer
 

Vince310884 a écrit :

Bah chépa, ptete savoir si vous observez le meme comportement ? Et si non, pourquoi alors je rencontre ce genre d'incohérences , et essayer de l'expliquer ?


 
au risque de choquer certains sur ce post, je te conseille d'utiliser un programme comme syncBack Free qui automatise tout ça parfaitement bien.
Attention simplement si tu es utilisateur de lien symboliques (ça semble poser problème, mais à confirmer)
 
Mais pour une arborescence "standard" de dossiers / fichiers, SyncBack Free fonctionne parfaitement bien et le plus simplement du monde.


Message édité par pongyi le 02-11-2015 à 13:03:57
n°3208556
nex84
Dura lex, sed lex
Posté le 02-11-2015 à 13:08:58  profilanswer
 

Il faudrait déjà connaitre le besoin exact.
 
Robocopy est  très bien mais il y a des solutions plus faciles a gérer (SyncBack est un bon exemple).


---------------
#TeamNoBidouille || Come to the Dark Side, we have cookies || Mangez 5 fruits et légumes par an ! || Le digital, c'est les doigts
n°3208563
HPIR40
Posté le 02-11-2015 à 14:02:40  profilanswer
 

J'ai exactement le même soucis avec Robocopy sous windows server 2012 R2.
 
Il a fallu effectivement que je supprime le /B pour ne plus avoir le message d'erreur:
 

Code :
  1. ERREUR : vous ne disposez pas des droits de sauvegarde et de restauration de fichiers.
  2.     *****  Ils sont requis pour effectuer des copies de sauvegarde (/B ou /ZB).
  3.     ERREUR : mémoire insuffisante, fermeture de Robocopy.
  4.     ERREUR : paramètre non valide #%d : "%s"
  5.     ERREUR : fichier de tâche non valide, ligne #%d : "%s"


 
Bon maintenant j'ai un autre soucis, c'est qu'il me dit
 
 

Code :
  1. ERREUR 5 (0x00000005) Copie de la s‚curit‚ NTFS dans le r‚pertoire de destination \\xxxxx
  2. AccŠs refus‚.


 
alors que je copie et colle sans soucis dans le répertoire de destination.
 
Dans mon script je n'utilise que les options MIR /SEC /TEE
 
 
 

n°3208637
Vince31088​4
Posté le 02-11-2015 à 19:52:53  profilanswer
 

nex84 a écrit :

Il faudrait déjà connaitre le besoin exact.
 
Robocopy est  très bien mais il y a des solutions plus faciles a gérer (SyncBack est un bon exemple).


Besoin de sauvegarde donc copie de DATAS sur un autre espace et d'archivage donc on ne remplace pas immédiatement le backup précédent, on attends une certaines rétention avant d'écraser/supprimer un backup. Je souhaite 2 périodicité, une mensuelle et une hébdo.
 
L'outil doit tourner en background, logger, et m'avertir simplement que le backup est correctement fait ou pas.
 
Pour rappel j'ai un shell qui fait tout ca, mais je m'interessait a une solution native Windoze ...
 
 
Donc ce Robocopy, c'est moi qui n'ai rien compris, ou c'est bel et bien complètement buggé ?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Windows & Software
  Win 7

  Les blagounettes Robocopy

 

Sujets relatifs
Robocopy.besoin d'aide pour corriger script robocopy pour copier des datas
ROBOCOPY: pb de dateRobocopy et répertoires vides
Robocopy, distination cachéScript robocopy suppression
Backup automatique sur Disque Externe | Robocopy / alerte Mail+Androidrobocopy exclure fichier supprimé sur destination
Robocopy : problèmes avec les espaces ?[Robocopy] win 2008 server
Plus de sujets relatifs à : Les blagounettes Robocopy


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR