La forma más rápida y segura de copiar datos masivos de una unidad externa a otra

Necesito poder copiar alrededor de 2 TB de datos desde una unidad externa (disco externo USB único) a otra unidad externa (Drobo conectado a través de Firewire).

Finder no es una opción. Si encuentra algún problema, detiene el proceso y tengo que averiguar por qué falló y comenzar de nuevo. Podría llevarme meses superarlo.

He leído acerca de CP y RSYNC, pero no estoy muy familiarizado y temo que pueda equivocarme en algunos de los interruptores y perder archivos, o arruinar las fechas de los archivos, o peor...

¿Alguien puede sugerir cómo podría lograr esto con el mínimo riesgo y costo?

A partir de MacOS 10.13.4+, puede usar Finder para copiar archivos grandes (y todos los enlaces asociados). Lo intenté yo mismo para crear otro disco de copia de seguridad de Time Machine (a partir de uno existente) y funciona de manera rápida y hermosa. Aparentemente, antes de la versión 10.13.4, esto era un error, pero ya se solucionó. Más información en esta respuesta: apple.stackexchange.com/a/323691/261070 .
La respuesta a esto depende de cómo defina "más rápido". ¿Quiere la velocidad de transferencia más rápida o el tiempo más corto entre el momento en que usted (un ser humano) comienza a trabajar en esto y lo termina? El tiempo que te tome dependerá de cosas como si la Terminal te asusta o no. La respuesta ideal para usted también dependerá de si se trata de una operación única o repetida, así como de si está dispuesto a gastar dinero o no.
@youngrrrr: esa publicación dice que Apple arregló la copia del Finder para manejar enlaces duros . Todavía existe el problema de que si falla por cualquier motivo (corte de energía, lo que sea), no puede continuar donde lo dejó: Finder no solo transferirá las diferencias. Por lo tanto, esto puede tomar muchas veces más de lo que debería, ya que comienza repetidamente desde cero.

Respuestas (6)

La sincronización remota rsynces una opción confiable para copiar grandes cantidades de datos. Puede preparar el comando y realizar un ensayo antes de comprometerse con la copia; añadir --dry-runpara simular la copia.

Su comando final será bastante simple:

sudo rsync -vaE --progress /Volumes/SourceName /Volumes/DestinationName

Las banderas son:

  • vaumenta la verbosidad.
  • aaplica la configuración de archivo para reflejar exactamente los archivos de origen, incluidos los enlaces simbólicos y los permisos.
  • Ecopia atributos extendidos y bifurcaciones de recursos (solo OS X).
  • --progressmuestra el progreso durante la copia.

sudo, se usa para garantizar que rsynctenga los derechos adecuados para acceder y leer todos los archivos en su disco, independientemente del propietario. Esto también permite rsyncescribir los archivos en la nueva unidad recreando la información del propietario original.

rsynces probablemente la mejor opción porque se puede volver a ejecutar en caso de problemas, ofrece un registro detallado y es lo más rápido posible sin dejar de ser seguro.

Existen numerosas guías para aprovechar al máximo rsync, los ejemplos del comando rsync proporcionan ejemplos relevantes. Tenga cuidado con las barras diagonales finales; estos pueden marcar una gran diferencia si su copia comienza con una carpeta.

Las herramientas alternativas incluyen dittoy cp. Ambas son opciones razonables pero ofrecen una sintaxis diferente.

Respondí una pregunta similar aquí hace un tiempo. Mi respuesta se copia a continuación.


Lo uso cp -Rfv sourcefile destinationfilecon éxito de forma bastante regular.

cp= copiar

R= mantiene jerarquías de archivos

f= si no se puede abrir un archivo de destino existente, elimínelo y vuelva a intentarlo

v= modo detallado, muestra los archivos transferidos a medida que avanza

sourcefile= datos que desea copiar

destinationfile= directorio/unidad en la que desea copiar

Sin embargo, vale la pena señalar que cp volverá a copiar archivos incluso si no han cambiado, mientras que rsync no perderá tiempo copiando archivos que ya existen en el destino. Por lo tanto, puede reiniciar desde donde lo dejó y/o hacer una copia incremental.
Puede agregar -npara no copiar archivos que ya existen y -ppara conservar todos los permisos, incluidos los atributos extendidos y las bifurcaciones de recursos cuando sea posible.

Usé la sincronización bittorrent para sincronizar 8 TB entre mi Drobo y QNAP.

La sincronización bittorrent también es una forma de hacer esto. Los votos negativos (en mi opinión) no son realmente necesarios.
@CousinCocaine sí, pero la pregunta era sobre cómo hacer algo, no qué aplicación usar.
@Dillon: saber qué aplicación usar es a veces el 99% de lo que necesita saber para saber cómo hacerlo.

Si no quiere seguir la ruta de la línea de comandos, uso la aplicación FreeFileSync de forma rutinaria para sincronizar 2 TB de datos desde un arreglo externo a una ubicación de red sin problemas. Puede controlar cómo maneja los errores y obtener un registro cuando esté completo.

Estoy en Mac y usé rsync en el pasado, y aunque funciona, sus comentarios no existen o son demasiado detallados. Probé un par de otras aplicaciones de Mac, pero ninguna de ellas era realmente confiable, por lo que me alegró mucho ver que FreeFileSync, una aplicación de código abierto, hizo un trabajo fantástico: gran progreso, manejo de errores, y también fue increíblemente rápido. ¡Cinco estrellas!

La forma "más rápida" sería mover físicamente ambas unidades para que sean internas en una sola computadora, hacer la copia (o rsync) y luego volver a moverlas.

Todavía usaría rsync, porque si se interrumpe por algún motivo (¿el gato pisa el interruptor de encendido?), rsync no volverá a copiar los archivos que ya fueron exitosos. Tampoco copiará ningún archivo que sea el mismo y esté en el mismo lugar.

Tenga en cuenta que esto es más rápido debido al tamaño del conjunto de datos. Si fuera mucho más pequeño, la ventaja de la velocidad sería cancelada por el tiempo que mueve las unidades.
No, más rápido para una gran cantidad de datos. Para una pequeña cantidad de datos, la copia es aún más rápida, pero el tiempo que lleva mover las unidades lo cancela. Sin embargo, es potencialmente más rápido en condiciones NO perfectas, porque si se interrumpe, rsync puede evitar copiar nuevamente los que se hicieron antes de la interrupción.
Si la velocidad de transferencia es más rápida pero una interrupción hace que comience de nuevo, es probable que todo el proceso no sea más rápido, y todo el proceso es lo que importa. "condiciones perfectas" = nada interrumpe el proceso . En mi experiencia, es muy común que suceda algo que cause un problema cuando se trata de una transferencia masiva. Por eso me refiero a una transferencia ininterrumpida como "perfecta".
Si estás usando rsync como dije, una interrupción no te hace empezar de nuevo.
No estás entendiendo lo que quiero decir con "empezar de nuevo" en este contexto. Soy muy consciente del hecho de que rsync puede continuar donde lo dejó en la sincronización de datos. Pero si emite un comando y no se completa, está comenzando de nuevo con la intervención humana, lo que hace que todo el proceso lleve más tiempo. O pierdes tu tiempo cuidando todo el asunto, o hay una gran demora entre la falla y cuando la descubres. Lo que le importa a un ser humano es el tiempo de todo el proceso y el tiempo de la intervención humana.
Volver a escribir el comando (o para muchos de nosotros, presionar la flecha hacia arriba y entrar) es bastante insignificante en comparación con copiar varios gigabytes en una interfaz interna, que a su vez es trivial en comparación con copiarlos a través de un cable entre dispositivos. En cuanto al cuidado de niños, si no estoy haciendo otra cosa en la misma máquina, no tengo ningún problema en acercarme de vez en cuando para mirarlo. En cualquier caso, no importa qué comando use o qué configuración, todavía está "cuidando niños" o no. CUALQUIER operación de copia puede fallar.
No, eso no es verdad. BitTorrent Sync, ahora Resilio Sync, no es un comando que escribe, por lo que siempre funciona y mantiene las cosas sincronizadas.

Si desea copiar la unidad A en la unidad B exactamente, puede hacerlo con la Utilidad de disco.


Usaremos la función de restauración de Disk Utility . Algunos antecedentes sobre la diferencia entre restaurar y copiar y pegar:

La función Restaurar en la Utilidad de disco utiliza una función de copia en bloque que puede acelerar el proceso de copia . También hace una copia casi exacta del dispositivo de origen . Cuando decimos "casi exacto", no queremos dar a entender que se pueden perder datos útiles, porque ese no es el caso. Lo que significa es que una copia de bloque copia todo en un bloque de datos de un dispositivo a otro . Los resultados son casi una copia exacta del original. Una copia de archivo, por otro lado, copia los datos archivo por archivo y, aunque los datos del archivo siguen siendo los mismos, la ubicación del archivo en los dispositivos de origen y de destino probablemente será muy diferente .

Usar una copia en bloque es más rápido , pero tiene algunos límites que afectan cuándo se puede usar, el más importante es que copiar bloque por bloque requiere que tanto el dispositivo de origen como el de destino se desmonten primero de su Mac. Esto asegura que los datos del bloque no cambien durante el proceso de copia. Sin embargo, no te preocupes; no tienes que hacer el desmontaje. La función Restaurar de Disk Utility se encarga de eso por usted. Pero sí significa que ni el origen ni el destino pueden estar en uso cuando utiliza las funciones de restauración .

Fuente: https://www.lifewire.com/use-disk-utility-to-clone-macs-drive-4042367


Instrucciones

para copiar todos los archivos del Dispositivo A al Dispositivo B

ADVERTENCIA : cuando restaura un volumen a otro, se borran todos los archivos del volumen de destino. Antes de restaurar un volumen, copie todos los archivos del volumen de destino que desee guardar en un volumen diferente.

  1. Elija Ver > Mostrar todos los dispositivos.
  2. Seleccione el volumen en la barra lateral que desea restaurar, luego haga clic en el botón Restaurar ingrese la descripción de la imagen aquío seleccione Editar > Restaurar.

Este es el volumen que se borra y se convierte en la copia exacta. [Dispositivo B]

  1. Haga clic en el menú emergente Restaurar, luego elija el volumen que desea copiar [Dispositivo A].
  2. Haga clic en Restaurar, luego haga clic en Listo.

Fuente: https://support.apple.com/guide/disk-utility/restore-a-disk-dskutl14062/mac

La copia en bloque también pierde tiempo copiando espacio libre y fallará si el destino es un bloque más pequeño que el origen. (Puede fallar de una manera que no se detecta de inmediato). Y si el destino es más grande, el espacio adicional se vuelve inutilizable.
@WGroleau, ¿puede ampliar "el espacio adicional se vuelve inutilizable"?
la copia del bloque incluye el bloque que dice qué bloque es el último. Si el destino es lo suficientemente grande para los datos pero más pequeño que el origen, el sistema operativo piensa que hay bloques disponibles que no existen. Si el destino es más grande, el sistema operativo cree que los bloques adicionales no existen.
@WGroleau solo para que lo entienda correctamente si tengo una unidad de 500 gb con un solo archivo de 1 gb y una copia en bloque en una unidad de 1000 gb, ¿qué sucederá? ¿Y puede vincular el sitio?
Mire la página del manual para 'dd'. Copiará 500 GB, pero la mayoría de los 499 GB estarán vacíos. La parte que no lo es solo es visible para el sistema operativo y le dice que tiene una unidad de 500 GB. También busque "mapa de partición" y "mapa de volumen"
Puede bloquear la copia no solo de dispositivos, sino también de volúmenes/particiones individuales. Y las particiones se pueden cambiar de tamaño.
En mi experiencia, después de dddejar bloques sin copiar, Disk Utility no puede recuperarlos cambiando el tamaño.