Como clonar discos duros con el comando DD en GNU/Linux

By Published On: 4 de febrero de 2011Categories: GNU-Linux, Tutoriales1 Comment


Cuando clonamos un disco duro nos referimos a copiar exactamente la misma información de un disco A copiarla en un disco B, con esto nos referimos al sistema operativo, aplicaciones instaladas y archivos, es decir todo lo almacenado en nuestro disco A pasarlo al B.


Empecemos la acción:
Primero debemos de tener el disco A que es el disco el cual copiaremos en el disco B. Deben ambos estar en la misma PC y deben de estar de la siguiente manera: A- master(maestro o principal) y B- slave(esclavo o secundario). De esta manera el disco A quedara como hda o sda y el B como hdb o sdb; hdX se utiliza para discos IDE donde X indica el orden de estos, es decir hda esta primero que hdb lógicamente, lo mismo para sdX donde sd se utiliza para discos SATA y/o USB, y X al igual que hd se utiliza para indicar cual es master, maestro o primario, y slave, esclavo o secundario.



Para averiguar cual es primario o el orden de los discos escribimos el siguiente comando


ernesto@ernesto-laptop:~$ df -h


df se utiliza para saber el espacio libre de los discos y particiones que están siendo usadas por nuestro sistema, con -h indicamos que las medidas de la capacidad de los discos (entiéndase por tamaño) debe de ser en una cantidad comprensible para el humano y por tanto nos devuelve los valores en MegaBytes. 

Nos desplegara una tabla donde nos indicara los siguientes campos: filesystem (sistemas de archivos, disco duro o partición) aquí nos dirá en que punto están montado nuestros discos y que partición estan siendo usadas determinada por un numero que esta luego de la partición es decir si tengo /boot montada en mi disco principal seria: /dev/sda1 donde 1 indica que es la primera partición de mi disco en sda; luego esta size que indica la capacidad o tamaño del disco, used indica cuanto espacio ha sido usado, avail indica cuanto espacio queda disponible, use% nos dice que porcentaje de espacio ha sido utilizado, mounted on indica en que carpeta esta montado el disco.


Luego de que sabemos en donde esta cada disco, reiniciamos la PC y arrancamos desde un LiveCD; Esta operación es necesaria solamente si el disco a copiar es del sistema que estamos usando, es decir, si vamos a copiar el disco de nuestra pc necesitamos reiniciar porque sino nos dirá error por la razón de que esta siendo utilizado. 


Posteriormente cuanto arranque nuestro LiveCD abrimos la consola nuevamente, ratificamos que el disco que copiaremos este y a donde sera copiado también (solo para estar seguro) entonces luego escribimos lo siguiente:


ernesto@ernesto-laptop:~$ dd if=/dev/sda of=/dev/sdb bs=1M


Donde:
dd = comando para realizar el clonado o copiado byte a byte
if = desde el dispositivo donde compiaremos (/dev/sda el disco master, maestro o primario)
of = el dispositivo donde se copiara (/dev/sdb el disco slave, esclavo o secundario)
bs =1M; determina que la copia se realizará mega a mega


Empezara a trabajar y al final nos dará como resultado que el disco B tendrá todo el contenido de A.


NOTA: Para realizar esta operación debemos tener bien en cuenta de que el espacio usado por el disco A debe estar disponible en el disco B, es decir, si A utiliza 4gb aunque sea un disco de 10gb de capacidad, entonces necesitamos un disco B de al menos 4gb, no es necesario que B sea mayor que A, con que sea equivalente o tenga la capacidad de almacenar la información de A en B es suficiente. Al esto ocurrir y en caso de que quede en B espacio libre, se puede aprovechar y hacer particiones luego de esta operación. Los datos y particiones de B serán borrados por la razón de que el disco B al final de la operación es un CLON del disco A.


Muchas gracias.

One Comment

  1. Unknown 11 de noviembre de 2013 at 14:25 - Reply

    Hola un disco me tira este error cuando pongo esto:

    sudo dd if=/dev/sdh of=/dev/sdc bs=1M
    dd: opening ‘/dev/sdh’: Permission denied

    Es un disco de notebook que no me deja clonar, que puedo hacer?
    Uso Linux Mint 15 MATE.

Leave A Comment