#4sysadmins

Inicio » GNU/Linux » El comando dd Linux

El comando dd Linux

Últimas Entradas

Follow #4sysadmins on WordPress.com

dd : Copia archivos. Es usado para copiar particiones completas o incluso clonar discos. Vamos a estudiar este comando mediante ejemplos:

Sintaxis:

dd if=origen of=destino

  • Clonar disco duro sda en sdb:
$ sudo dd if=/dev/sda of=/dev/sdb bs=1M
  • Podemos clonar solo los sectores legibles:
$ sudo dd if=/dev/sda of=/dev/sdb bs=1M conv=noerror,sync
  • Copiar un disco completo en la primera partición del disco sdb (evidentemente la partición sdb1 tiene que tener un tamaño mayor al del disco completo sda)
$ sudo dd if=/dev/sda of=/dev/sdb1 bs=1M
  • Crear una imagen de un disco duro o CD
$ sudo dd if=/dev/sda of=/home/syu/sda.[bin|iso]
$ sudo dd if=/dev/cdrom of=/home/syu/myCDRROM.iso
  • Rellenar un disco o partición con 0, es decir elimina su contenido:
$ sudo dd if=/dev/zero of=/dev/sda[X]
  • Para borrar solo el primer sector:
$ sudo dd if=/dev/zero of=/dev/sda count=1 bs=512
  • Para eliminar el cargador de arranque, pero no la tabla de particiones:
$ sudo dd if=/dev/zero of=/dev/hda count=1 bs=446
  • Respaldar el sector de arranque (MBR):
$ sudo dd if=/dev/sda of=/home/syu/Desktop/mbr.backup count=1 bs=512
$ sudo dd if=/home/syu/Desktop/mbr.backup of=/dev/sda
  • Crear un archivo de swap sin espacios vacíos:
$ dd if=/dev/zero of=/extra-swap bs=1024 count=1024

El tamaño conviene que sea un múltiplo de 4, debido a que el kernel escribe páginas de memoria (memory pages), de 4 kb de tamaño. Si el tamaño no es múltiplo de 4 los últimos kilobytes del archivo pueden ser desperdiciados. Podríamos haber indicado una velocidad mayor como de bs=4k.

Expliquemos las opciones aquí mencionadas y algunas otras:

  • ibs: Lee N bytes del archivo de origen
  • obs: Escribe N bytes en el archivo destino
  • bs: Se usa para indicar un mismo tamaño para ibs y obs. Es la ‘velocidad’ de lectura/escritura. Si bs=4k se leerá/escribirá en bloques de 4Kb. A mas velocidad menos seguro será el tratamiento de la información.
  • count: Es el tamaño a copiar. Para el ejemplo de la memoria swap. Se creará una partición de 1GB
  • skip: Se salta N bloques del archivo origen antes realizar la operación de copiado. El tamaño es dado por bs o ibs
  • seek: Se salta N bloques del archivo destino antes realizar la operación de copiado. El tamaño del bloque es indicado por bs o obs.
  • conv=modo,[modo2,…]: Realiza conversiones o acciones. Se pueden pasar varios parámetros separados por ‘,’. Por ejemplo conv=noerror,sync

Modos:

  • noerror: No se detiene el proceso ante errores de lectura en el origen
  • sync: Rellena cada bloque leído con ceros
  • ascii: Convierte los caracteres a ascii
  • lcase: Convierte caracteres a minúsculas
  • ucase: Convierte caracteres a mayúsculas
  • notrunc: No se trunca el archivo utilizado como destino
Anuncios

Deja un comentario, Gracias!

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: