El comando dd
puede clonar un disco duro completo o una partición de disco a otro. El tiempo que tarde dependerá del tamaño del disco o de la partición. Sólo asegúrate de que el volumen de destino sea lo suficientemente grande para almacenarlo.
dd if=/dev/sda of=/dev/sdb bs=1M conv=noerror,sync
sda
es el disco de origen, mientras que sdb
es el de destino.1M
, corresponde al comando tamaño de bloque, bs
. El valor por defecto es de 512 bytes
, que es muy pequeño, por lo que es mejor incluir 1M
como condición. Sin embargo: mientras que un tamaño de bloque más grande hace que la transferencia sea más rápida, un tamaño de bloque más pequeño hace que la transferencia sea más fiable.conv=noerror
le dice a la utilidad que omita los errores de lectura del disco origen, es decir los sectores defectuosos, y que no detenga el proceso ante esos errores. De esta manera copiará sólo los sectores legibles.tal cual
, MBR, tabla de particiones, espacio vacío, etc., por lo que sólo se podrá grabar en un disco del mismo o mayor tamaño.dd if=/dev/sda1 of=/dev/sdb1 bs=1M conv=noerror,sync
Donde:
sda1
, es decir la partición 1 en el dispositivo sda, será clonada a sdb1
que es una partición recién creada en el dispositivo sdb, por ejemplo una unidad de disco duro secundaria o externa conectada a tu ordenador.Notas
# fdisk -l
dd
es silencioso, lo cual para procesos largos nos puede hacer dudar de si se está realizando. Para visualizar durante su ejecución información del proceso podemos instalar pv
, que actúa como una tubería de terminal que mide los datos que pasan a través de ella. Así, la orden de clonado de disco anterior quedaría:dd if=/dev/sda |pv|dd of=/dev/sdb bs=1M conv=noerror,sync