Usar dd para clonar un disco mientras está montado – ¿riesgos?

Quiero clonar un disco duro usando dd. Como quiero mantener vivo un process continuo en la máquina, me gustaría hacerlo mientras el sistema de files aún está montado. Entiendo que esta no es la forma "ideal" de hacer esto, pero también parece que de Google es posible.

El clon se está utilizando como una copy de security; en el caso de una falla en el disco duro, me gustaría tener una image para dd nuevamente en un nuevo disco duro. El sistema operativo que se ejecuta vive en el disco que quiero clonar.

El process que tengo ejecutando hace algunas E / S de disco pero no con el disco que deseo clonar. Por lo que yo sé, solo los processs OS / sistema leerían o escribirían en el disco mientras yo hago esta operación. Lo que quiero saber es si este uso ligero puede arruinar toda la image clonada. Imagino que existe el peligro de que se dañen algunos files si se escriben tal como los lee dd, pero no tengo idea de la probabilidad de que se arruine la copy de security. ¿Alguien puede compartir algunas ideas?

Además de ponerlo en un disco e intentar iniciarlo, ¿hay alguna manera de verificar la integridad de la image?

¡Gracias!

No hay daño al ejecutar un dd mientras se ejecuta el server. La integridad de la copy de security depende principalmente de lo que hace el server y de las particiones que allí se alojaron.

En su mayoría, el contenido estático no tiene ningún problema en absoluto, se esperan algunos problemas con las particiones DB o Log. Recomendaría detener los serveres de database en las particiones de database.

Si también está realizando una copy de security de los filesystems basados ​​en transactions, las copys de security deberían recuperarse de inmediato.

dd podría usarse principalmente para hacer copys de security de algún server tal como es, sin embargo, también necesitaría realizar copys de security de files en un nivel superior.

dd funcionará bastante bien como una alternativa de clonación si el server se inicia para un medio alternativo y no hay actividad en absoluto.

Como dice la publicación anterior, a less que tenga una necesidad específica de utilizar dd, existen mejores alternativas, gratuitas y comerciales.

Para nombrar unos pocos:

Clonezilla
Systemimager
volcar / restaurar

La utilidad dd es una herramienta realmente básica. Funciona en el nivel de bytes sin procesar de lo que sea que lo señale. El resultado de esto es que si algo está escribiendo en un file, puede copyr el file durante el time en que se está escribiendo, lo que probablemente resulte en un file dañado, y ciertamente uno que simplemente está mal.

Las cosas que necesitaría hacer para hacer esto de manera segura ya están implementadas en una variedad de progtwigs de respaldo. Es más simple usar uno de esos.

Si tiene suerte, la corrupción del sistema de files se detectará tan pronto como intente montar la copy. Si no tiene suerte, no se detectará hasta más tarde.

También es posible que consigas get una copy consistente del sistema de files a exception de los files que fueron modificados durante la copy. Pero no contaría con eso. Podría funcionar con ext4 siempre que no cree, elimine o mueva ningún file, para que los directorys no se modifiquen.

Si copy un sistema de files que está montado de solo lectura, por supuesto, todo estará bien. Excepto que no deberías usar dd , usa cat lugar.

Hay varias maneras confiables de clonar un disco. Elija uno de estos, en lugar de uno que prácticamente garantiza la corrupción.

  • Algunos filesystems ofrecen una funcionalidad de clonación, por ejemplo btrfs . No creo que ext4 lo haga.
  • Si el sistema de files está en el esquema de partición nativa de Linux, es decir, un volumen LVM , puede hacer una instantánea LVM. Eso requiere que use LVM, en lugar de poner el sistema de files directamente en algún otro esquema de partición como MBR o GPT. Te quedarás con un sistema de files que no se ha desmontado limpiamente, pero representa una instantánea consistente del original en un punto en el time.
  • Si puede get el sistema de files en una matriz RAID-1, puede clonar agregando un miembro a la matriz, esperando que se sincronice, y desconectando el nuevo miembro. Aquí también tendrá una instantánea consistente pero no limpia. Puede crear un volumen RAID-1 alnetworkingedor de un sistema de files existente , pero eso requiere un paso fuera de línea para networkingucir el sistema de files en 128kB.
  • Puede hacer una copy de security a nivel de file. Eso no le dará una vista coherente del sistema de files, ya que copyr files lleva time, pero garantiza al less que todos los files que no se modificaron durante la copy de security se copyrán correctamente.