%20-%20Al%20copiar%20con%20Robocopy%20-%20Ninguna%20de%20las%20soluciones%20conocidas%20funciona.png)
Estoy intentando copiar una carpeta de un disco duro a otro usando las siguientes opciones de robocopy:
robocopy "H:\Source" "T:\target" /E /COPY:DATSO /R:1 /W:1 /DCOPY:T /Z /LOG:T:\Belfirst_copy.log /NP
Para archivos donde el propietario no es el administrador, sino algún usuario de dominio específico, aparece el siguiente error:
ERROR 1307 (0x0000051B) Copying NTFS Security to Destination Directory T:\target\...(a lot of files/dirs)
This security ID may not be assigned as the owner of this object.
Probé todas las soluciones propuestas que pude encontrar:
- Otorgue al usuario del dominio con el que he iniciado sesión y ejecuto el script acceso completo al directorio de origen y de destino.
- Otorgue al usuario del dominio con el que he iniciado sesión y ejecuto el script como el privilegio "Restaurar archivos y directorios".
- Ejecutar como administrador
- Ejecutar como un archivo bat
- Cerrar sesión e iniciar sesión nuevamente y volver a intentarlo
- usa la opción /B
- Pruebe sin la opción /COPY:S
Por razones obvias, copiar sin la opción /COPY:O resuelve el problema. Pero eso, por supuesto, supera el propósito.
¿Qué me estoy perdiendo?
Plataforma: Windows Server 2008 R2
(Esto está muy relacionado con "Fallo de Robocopy con la tarea programada de Windows Server 2008", pero todavía no tengo suficiente reputación para agregar un comentario allí).
Respuesta1
Normalmente, sólo puedes adquirir la propiedad NTFS de los objetos del sistema de archivos para ti. No puede asignar la propiedad a una tercera persona. (Esto evita que los usuarios, por ejemplo, almacenen datos comprometedores o incriminatorios bajo la propiedad de otra persona desprevenida).
Hay un privilegio de "restaurar archivos y directorios" en la política de seguridad. microsoftestados:
Esta configuración de seguridad [...] determina qué usuarios pueden establecer principios de seguridad válidos como propietario de un objeto.
Aparentemente, necesitas este privilegio para copiar la propiedad. Robocopy debe ejecutarse en un contexto de seguridad que permita establecer la propiedad de directores arbitrarios.
De forma predeterminada, los administradores locales tienen este privilegio:
De forma predeterminada, este derecho se otorga a los grupos Administradores, Operadores de respaldo y Operadores de servidor en controladores de dominio, y a los grupos Administradores y Operadores de respaldo en servidores independientes.
(El privilegio "restaurar archivos y directorios" es parte de la política. Es posible que deba cerrar sesión y volver a iniciarla para que entre en vigor).
Respuesta2
Yo también tuve este problema. Escribí un archivo por lotes para realizar una copia automática del usuario que ha iniciado sesión actualmente y copiar toda su carpeta de perfil en una ubicación compartida de la red. El uso de variables y esta combinación de cambia cada carpeta copiada sin errores. Se debe crear un comando para cada carpeta individual, pero funciona. Es posible que deba otorgar permiso al usuario para crear una carpeta en el recurso compartido de red o crearla antes de realizar la primera copia de seguridad.
robocopy "%HOMEPATH%\FOLDER" "\SERVER\NETWORK_SHARE\%USERNAME%\FOLDER" /s /mir /zb /b /copy:dat