Dans mon cas, j'ai commencé avec un contrôle total sur les partages source et destination. Le problème était que Robocopy réinitialisait l'ACL sur le partage de destination à une valeur nulle (personne n'a l'autorisation) avant de commencer à récurser les sous-répertoires. Après quelques tests rapides, ma conclusion est que Robocopy ne gère pas les autorisations héritées. Supposons que vous copiez C: \ Share1 vers D: \ et que C: \ Share1 hérite ses autorisations du répertoire racine C: \, il n'a en fait pas de liste de contrôle d'accès explicite. Par conséquent, lorsque vous copiez son ACL, vous copiez en fait ... rien. En copiant une ACL vide vers votre destination, vos autorisations sont supprimées à la première étape de la copie et toutes les écritures suivantes sur le partage échouent avec l'erreur 5.
Il s'agit uniquement d'un problème lorsque vous copiez à partir d'une source à laquelle vous accédez AVEC des autorisations héritées et d'une destination à laquelle vous accédez SANS autorisations héritées. Si vous copiez C: \ (qui vous a explicitement dans son ACL), vers D: \, il n'y a pas de problème. Si tel est bien votre problème, vous pouvez le résoudre en vous ajoutant explicitement à l'ACL source avec un contrôle total. Lorsque la copie s'exécute, votre entrée ACL est dupliquée vers la destination et les copies de fichier suivantes peuvent être écrites. Vous pouvez annuler vos modifications (à la fois sur la source et sur la destination) une fois la copie terminée.
Si vous continuez d'avoir des problèmes malgré ce qui précède, vous voudrez peut-être envisager d'essayer le commutateur / B, qui tente de sauvegarder le fichier en utilisant vos privilèges en tant qu'opérateur de sauvegarde. Cela vous permettra de copier des fichiers que vous n'auriez pas pu autrement, par exemple, si vous n'êtes pas sur l'ACL sur votre partage de destination. Par défaut, Robocopy tente de copier une copie redémarrable. En abandonnant les copies redémarrables, le pire des cas est que vous perdiez le fichier en cours de transfert en cas de perturbation. La prochaine passe redémarrera ce fichier depuis son début au lieu de le faire à mi-chemin.
J'espère que ça t'as aidé. Voici une citation du document Robocopy de Microsoft concernant le commutateur / B:
Citation:
Si vous copiez des informations de sécurité NTFS (ACL) avec des données de fichier, il est possible de copier des fichiers auxquels vous avez un accès en lecture, mais pas en écriture. Une fois qu'un tel fichier est copié une fois et que les ACL sont appliquées, vous pouvez constater que pour obtenir une erreur «Accès refusé» lorsque vous essayez de recopier le fichier. Dans cette situation, vous devez utiliser le commutateur / B ou / ZB pour copier les fichiers en mode de sauvegarde.
/ B copie tous les fichiers avec une sémantique de sauvegarde (mode de sauvegarde). / ZB tente d'abord de copier des fichiers en mode redémarrable (pour une meilleure résilience) mais si cela échoue avec une erreur «Accès refusé», il réessaye automatiquement la copie en utilisant le mode de sauvegarde.