Queremos crear una trusted network en la que tú puedas participar....

Linux Clonar particiones con el comando DD

Patrocinantes Reparación Electrónica de Portátiles en Madrid
Reparación de Pantallas para Portátiles en Madrid
Servicio Técnico de Ordenadores Portátiles en Madrid

El comando dd (duplicate disk) es sumamente útil para clonar particiones o discos completos.

Notar que no es lo mismo clonar una partición o disco que realizar un respaldo, la diferencia radica en que una clonación es una copia exacta de los datos en la que se incluye el espacio no utilizado y un respaldo es una copia nada mas de los datos.

Antes de empezar debemos tener en claro dos cosas esenciales una el tamaño de los discos tanto el de origen como el de destino, deben ser del mismo tamaño y segundo debemos manejar con claridad como se denominan los discos, particiones y unidades en GNU/Linux.

Tamaño de disco


Para saber el tamaño de disco debemos ejecutar en la consola el comando df -h  donde df es el comando y -h es la opción que nos dará una información mas legible ya que nos devuelve el resultado en MB o GB



maury $ df -h 
S.ficheros            Tamaño Usado  Disp Uso% Montado en
/dev/sda1             450G   66G  362G  16% /
udev                  1,6G  312K  1,6G   1% /dev
none                  1,6G  212K  1,6G   1% /dev/shm
none                  1,6G  208K  1,6G   1% /var/run
none                  1,6G     0  1,6G   0% /var/lock
none                  1,6G     0  1,6G   0% /lib/init/rw
/dev/sdb1             963M  8,9M  954M   1% /media/USB
 

Para mas información sobre este comando man df o df -help

Esquema de particiones en GNU/Linux

  • La primera unidad de disco flexible se llama /dev/fd0.
  • La segunda unidad de disco flexible se llama /dev/fd1.
  • La primera unidad de disco SCSI (Identificación SCSI address-wise) se llama /dev/sda.
  • La segunda unidad de disco SCSI (address-wise) se llama /dev/sdb, y así sucesivamente.
  • La primera unidad de un CD-ROM SCSI se llama /dev/scd0, también conocida como /dev/sr0.
  • El disco maestro en el controlador IDE primario se llama /dev/hda.
  • El disco esclavo en el controlador IDE primario es llamado /dev/hdb.

    En cuanto a las particiones solo se le deben agregar un numero /dev/sdb1 seria la primera partición de un discao scsi

Manos a la obra

La sintaxis básica del comando es la siguiente:

dd if=origen of=destino

donde if significa "input file" (archivo de entrada)
of significa "output file"(archivo de salida)

Teniendo esto claro pasamos entonces a un ejemplo donde copiaremos lo siguiente

Clonando unidades USB:

maury $ dd if=/dev/sdb1 of=/home/maury/res2.img
1974209+0 registros de entrada
1974209+0 registros de salida
1010795008 bytes (1,0 GB) copiados, 35,4239 s, 28,5 MB/s

maury $ dd if=/home/maury/res2.img of=/dev/sdb1
1974209+0 registros de entrada
1974209+0 registros de salida
1010795008 bytes (1,0 GB) copiados, 271,184 s, 3,7 MB/s 
maury $

En casos donde las particiones no deben ser una copia exacta usar el comando cp ya que es mas ligero y no copia el espacio no utilizado.

La clonación se usa para los casos en los que desemos recuperar el sistema operativo ejemplo /etc.

Es posible que queramos comprimir el archivo para no desperdiciar espacio de almacenamiento para ello debemos combinar lo anterior con pipes "|" y gzip

maury $ dd if=/dev/sdb1 |gzip > /home/maury/resp.img.gz
1974209+0 registros de entrada
1974209+0 registros de salida
1010795008 bytes (1,0 GB) copiados, 52,937 s, 19,1 MB/s
maury $

Para descomprimir y copiar al usb los datos clonados usar el parámetro -d 

maury $ dd if=/home/m32/resp.img.gz |gzip -d > /dev/sdb1
1823352+1 registros de entrada
1823352+1 registros de salida
933556703 bytes (934 MB) copiados, 260,409 s, 3,6 MB/s

 maury $

Con esto ya tienen para asegurar su sistema y ante un fallo grave simplemente clonan el respaldo a la partición correcta y todo a vuelto a la normalidad.

Nota: el proceso tarda mucho tiempo, a tener paciencia. 

Para mas opciones man dd o dd --help


bye

4 comentarios:

Julia dijo...

Guauu lo probé y va de tiro no me imaginaba que fuera tan fácil XD

gracias chicos

mcun dijo...

Si es fabulosa la potencia e GNU/Linux fíjate que en windows se necesita un software que vale cerca de 100 u$$ y nadie sabe que si le agrega algo como un backdoors o troyano, y rn linux con un simple comando ya lo tienes pelado.

Siempre me parecieron interesantes esas cosas de Linux y ese es un poco el motivo de este site, publicar cosas que están allí pero que pocos saben que están.

Julia gracias por tu visita

bye

Unknown dijo...

Exelente me fuciono muy bien
pero el comando para restaurar la imagen comprimida me daba error por lo cual mejor la descomprimi y asi la restaure con el comando de arriba

Salu2 y gracias

mcun dijo...

Bueno me alegro que te sirva....

Me puedo ir a dormir tranquilo ;)