robocopy, o "Robust File Copy", es un comando de replicación de directorios, disponible desde la Línea de Comandos. Formaba parte del Kit de Recursos de Windows, y se presentó como una característica estándar de Windows Vista y Windows Server 2008. Permiete copiar de forma rápida, eficaz y eficiente archivos, carpetas, datos, informaciones, discos CDROM, DVD en local, en red y en internet. Es una utilidad de copia robusta que nos permite un mejor control de los resultados y verificar la integridad de los archivos o carpetas copiadas con más detalle. También permite un número mayor de modificadores que xcopy y copy.
Robocopy: una herramienta robusta de Windows para realizar copias de seguridad
- Es una especie de comando de tercera generación que toma las cualidades de los conocidos COPY y XCOPY y las perfecciona al máximo.
¿Qué es Robocopy? Robust File Copy
Robocopy es una herramienta de Windows especializada en operaciones de copia y backups (copias de seguridad). El programa se controla con comandos y parámetros especiales que se introducen en la línea de comandos de Windows. Sin embargo, los usuarios menos experimentados de Windows no tienen por qué utilizar la línea de comandos (cmd.exe). Como alternativa, existe un software especial que simplifica la operación y proporciona una interfaz gráfica para el uso de Robocopy. Un ejemplo es la herramienta gratuita GUI RoboMirror.
Entre las herramientas de copia integradas en Windows, Robocopy es la más versátil, seguida de xcopy, que es incluso un poco más potente. Robocopy tiene un total de 72 parámetros que te permiten hacer lo que necesites. De hecho, con esta herramienta es posible hacer todas las copias de seguridad de datos que te puedas imaginar con código. El programa puede incluso crear copias de seguridad graduales, que prescinden de las copias de seguridad completas y solo hacen copias de seguridad de los cambios recientes realizados durante las operaciones habituales. Este método de copia de seguridad ahorra espacio y, en el caso de las copias de seguridad en la red o en la nube, no supone una carga de ancho de banda ni de recursos tan grande.
Además, la herramienta es capaz de reflejar estructuras de directorios enteras con solo un poco de código, es decir, incluir también subdirectorios en las acciones de copia y en las copias de seguridad. Con esta funcionalidad, Robocopy puede complementar de forma óptima otras rutinas de copia de seguridad que se centran, por ejemplo, en crear una imagen del sistema de Windows 10. También puede utilizarse como complemento o alternativa a rsync para las copias de seguridad de servidores.
Sin embargo, es necesario familiarizarse con Robocopy para poder apreciar la funcionalidad y la flexibilidad de sus copias de seguridad. Los menos versados tienen que lidiar con el programa de forma más intensa al principio, incluso si utilizan una herramienta GUI con una interfaz gráfica de usuario. Solo así podrán realizar copias de seguridad de forma eficiente y aprovechar al máximo el sorprendente potencial de Robocopy en Windows 10. No obstante, incluso los principiantes pueden crear tareas de copia sencillas con una sintaxis de comandos relativamente simple. Pero hay que tener cuidado al utilizar Robocopy. De lo contrario, se pueden sobrescribir o borrar archivos de forma accidental.
Características
- Capaz de soportar las interrupciones en la copia de archivos ya sea por cortes de energía o en la conexión de red.
- Realiza reintentos automáticos si no se puede acceder a un archivo determinado.
- Permite copiar grandes cantidades de archivos, algo que no es posible con XCOPY.
- Cuenta con un indicador de progreso.
- Permite realizar copiado multihilo.
- Admite la copia selectiva de objetos.
- Copia toda la información de un elemento como propiedades, atributos, datos del propietario, y además mantiene inalterables los permisos del archivo.
La sintaxis del comando para las copias de seguridad de Robocopy
Formas prácticas y sencillas de usar el comando ROBOCOPY
Permite copiar de forma recursiva carpetas con subdirectorios aunque estén vacíos.ROBOCOPY ORIGEN DESTINO /E
ROBOCOPY ORIGEN DESTINO /S
ROBOCOPY ORIGEN DESTINO /MIR
Es posible indicar archivos específicos para ser copiados usando asteriscos de la siguiente forma:
ROBOCOPY ORIGEN DESTINO *.doc /E
Al igual que todas las herramientas de línea de comandos de Windows 10, Robocopy requiere una sintaxis de comando específica para realizar ciertas tareas. La estructura básica de su sintaxis es la siguiente:
robocopy <source> <destination> [<file>[...]] [<options>]</options></file></destination>
El parámetro “source” define la ruta del directorio de origen. El parámetro “destination” define la ruta del directorio de destino para la acción de copia correspondiente. Para el parámetro “file”, que especifica los archivos a copiar, también se permiten marcadores de posición. Si introduces *.* en lugar de un nombre de archivo concreto, copiarás todos los archivos del directorio de origen (sin subdirectorios). Si quieres copiar todos los archivos de un determinado tipo, puedes combinar un asterisco con el tipo de archivo. Por ejemplo, solo se copian los archivos actuales de Word con la extensión “.docx” con la siguiente sintaxis:
robocopy <directorio de origen> < directorio de destino> *.docx</directorio>
Al final de una orden de copia, la sintaxis puede completarse con otros parámetros. Entre otras cosas, se puede especificar la frecuencia con la que se debe repetir un intento de copia hasta que se ejecute con éxito. Además, se puede definir el tiempo de espera entre los intentos de repetición. Estos parámetros de control contribuyen significativamente a la variedad funcional y a la robustez. Suponen una ventaja decisiva sobre el explorador de archivos de Windows, que no ofrece al usuario ninguna opción de intervención y a veces aborta acciones de copia complejas con muchos archivos sin razón aparente.
Resumen de los principales comandos de Robocopy
A continuación, tienes un resumen de los principales comandos y parámetros de copia que puedes utilizar para realizar todas las copias de seguridad rutinarias que quieras con Robocopy. Te mostraremos cómo utilizar los comandos de Robocopy de forma práctica con ejemplos concretos.
| /COPY:copyflag[s] | Copia las propiedades del archivo que selecciones - por defecto: /COPY:DAT- D: Contenido del archivo- S: Información de seguridad (listas de control de acceso NTFS, ACLs)- A: Atributos- O: Información del propietario- T: Marca temporal- U: Información de seguimiento (seguimiento NTFS de los accesos a los archivos) |
|---|---|
| /COPYALL | Copia toda la información del archivo (alternativa a: COPY:DATSOU) |
| /NOCOPY | La información del archivo no se copia (a menudo se utiliza en combinación con /PURGE) |
| /PURGE | Los archivos y carpetas del directorio de destino se eliminan si ya no existen en el directorio de origen |
| /MIR | El directorio de origen se refleja (corresponde a la combinación de /E + /PURGE) |
| /MON:n | Robocopy se reactiva automáticamente después de n modificaciones (operación en segundo plano para las copias de seguridad automáticas) |
| /MOT:n | Robocopy se reactiva automáticamente después de n minutos (operación en segundo plano para las copias de seguridad automáticas) |
| /RH:hhmm-hhmm | Especifica un periodo de tiempo en el que Robocopy estará activo. |
| /XF | Excluye ciertos tipos de archivos |
| /XD | Excluye ciertos directorios |
| /R:n | Define el número de reintentos para las operaciones de copia fallidas (valor por defecto: 1 000 000) |
| /W:n | Define el tiempo de espera entre reintentos (en segundos). El valor por defecto de n es 30 (es decir, un tiempo de espera de 30 segundos hasta el siguiente intento de copia). |
| /L | Lista de archivos de copia de seguridad (la prueba se ejecuta con fines de seguimiento, no se realiza la copia de seguridad) |
| /LOG: | Crea un nuevo archivo de registro para cada operación de copia de seguridad o sincronización |
| /LOG+: | Continúa un archivo de registro ya existente |
| /TEE | Presentar la información de salida tanto en la pantalla como en el archivo de registro |
| /MOV | Los archivos se transfieren y se eliminan del directorio de origen después de copiarlos |
| /MOVE | Los archivos y directorios se transfieren y se eliminan del directorio de origen después de copiarlos |
| robocopy /? | Pide la ayuda de Robocopy desde la línea de comandos |
rucos y consejos al usar ROBOCOPY en Windows
• Al usar Robocopy en archivos batch puedes especificar como origen simplemente %1, de esta forma puedes arrastrar carpetas y directorios completos encima del batch y soltarlos, la copia se efectuará hacia el destino especificado en el código, un ejemplo:
robocopy %1 D:BACKUP /E
• Ten siempre la precaución de que los nombres de directorios que contengan espacios, deben estar encerrados entre comillas, por ejemplo:
➔ G:\Videos New - No funcionará
➔ "G:\Videos New" - OK
• Puedes crear en un archivo de texto la línea de comandos a ejecutar y después copiarla y pegarla en el cuadro de Inicio, de esa manera no será necesario abrir la consola previamente.
Hazlo de forma similar al siguiente ejemplo:
CMD /K ROBOCOPY D:\Videos "G:\Videos New" /E
Usar ROBOCOPY para hacer una copia idéntica de un disco duro completo
Si en algún momento necesitas clonar un disco duro, es decir hacer una copia idéntica de todos los archivos e información, puedes usar ROBOCOPY para esa tarea.Es la opción ideal cuando necesitamos reemplazar un disco por otro más reciente.
Solo necesitamos conectar los dos discos y percatarnos que letra de unidad les asigna Windows.
En caso que vayamos a copiar un disco que posee una instalación de Windows, necesitamos hacer dicha tarea en otra PC.
Usa el siguiente comando en la consola de CMD o en la herramienta Ejecutar:
ROBOCOPY D:\ E:\ /E /R:0 /W:0 /V
Sustituye E: por la letra asignada al disco donde se va a pegar la información.
Las opciones /R:0 /W:0 evitan reintentos de lectura en caso de errores y que no habrá tiempo de espera.
¿Qué significa Modificado, Extra y Solitario en Robocopy?
La documentación de este comando no está bien detallada y es posible que os genere dudas cuando veáis salidas de este tipo. Veamos el significado de estos estados para nuestros archivos copiados.
- Modificado: Un archivo modificado se define como uno que ya existe tanto en destino como en origen, con tamaño y fecha de modificación idénticas, pero con diferentes ajustes de atributos.
- Solitario: Un archivo solitario existe en origen pero no en destino. Si queremos impedir que se generen nuevos archivos en destino, excluiremos los solitarios o «lonely».
- Extra: Un archivo «extra» existe en el destino pero no en origen. Si excluimos los archivos extra impediremos que nuestra operación elimine archivos en destino, en caso de que configuremos el modo /MIR o mirror.
Códigos de error de ROBOCOPY
Si haces un archivo batch para automatizar algunas tareas, puedes aprovechar los códigos de error generados para que se reproduzca un sonido y se muestre un mensaje de acuerdo con los resultados obtenidos.
• El código de error 0 significa que no se han hecho cambios.
• El código de error 1 significa que la copia ha sido hecha correctamente.
• El código de error 4 y mayor significa que ha habido algún error.
if errorlevel 16 echo ***ERROR FATAL*** & goto endif errorlevel 15 echo FAIL MISM XTRA COPY & goto endif errorlevel 14 echo FAIL MISM XTRA & goto endif errorlevel 13 echo FAIL MISM COPY & goto endif errorlevel 12 echo FAIL MISM & goto endif errorlevel 11 echo FAIL XTRA COPY & goto endif errorlevel 10 echo FAIL XTRA & goto endif errorlevel 9 echo FAIL COPY & goto endif errorlevel 8 echo FAIL & goto endif errorlevel 7 echo MISM XTRA COPY & goto endif errorlevel 6 echo MISM XTRA & goto endif errorlevel 5 echo MISM COPY & goto endif errorlevel 4 echo MISM & goto endif errorlevel 3 echo XTRA COPY & goto endif errorlevel 2 echo XTRA & goto endif errorlevel 1 echo COPY & goto endif errorlevel 0 echo Sin cambios & goto end
No hay comentarios:
Publicar un comentario