12 Linux DD command examples

el comando dd significa «data duplicator» y se usa para copiar y convertir datos. Es muy potente utilidad de bajo nivel de Linux que puede hacer mucho más como;

• copia de seguridad y restaurar todo el disco duro o partición.
• copia de seguridad de MBR (Master Boot Record)
* puede copiar y convertir formato de cinta magnética, convertir entre formatos ASCII y EBCDIC, intercambiar bytes y también puede convertir minúsculas a mayúsculas.
* También puede ser utilizado por linux kernel make files para crear imágenes de arranque.,

solo el superusuario puede ejecutar este comando porque puede enfrentar una gran pérdida de datos debido a su uso inadecuado, por lo que debe tener mucho cuidado al trabajar con esta utilidad. En ese momento la pérdida de datos puede convertir la utilidad dd como un «destructor de datos» para usted. Es por eso que se recomienda que los principiantes no deben usar este comando en una máquina de producción hasta que se familiaricen con esto. Debe asegurarse de que la ubicación de destino debe tener suficiente espacio mientras ejecuta este comando.

sintaxis del comando dd

antes de comenzar con algún trabajo práctico necesitamos hablar sobre su sintaxis.,

dd if=<source file name> of=<target file name> 

normalmente no explicamos sobre la sintaxis, pero esta sintaxis de comandos requiere alguna explicación. La sintaxis es totalmente diferente en comparación con muchos comandos de Linux que conocemos. En esta sintaxis, dd es seguido por dos cosas

if = < source> –esta es una fuente desde la que desea copiar los datos y ‘if’ significa input-file.

of=<destination> –esta es una fuente desde la que desea escribir/pegar datos y ‘of’ significa archivo de salida.,

– estas opciones incluyen, qué tan rápido deben escribirse los datos, qué formato, etc.

Input(nombre de archivo de origen) y Output(nombre de archivo de destino) en sintaxis son discos, particiones, archivos y dispositivos desde los que desea escribir y leer datos. Hay muchas opciones que discutiremos en ejemplos.

aprenda el comando Linux DD con ejemplos

Ejemplo 1: clonar un disco duro a otro disco duro. Esto es útil cuando estamos construyendo muchas máquinas con la misma configuración. No necesitamos instalar el sistema operativo en todas las máquinas., Simplemente instale el sistema operativo y el software requerido en la máquina y luego clone con el siguiente ejemplo.

 dd if=/dev/sda of=/dev/sdb

Ejemplo 2: podemos tomar copia de seguridad de una partición/disco duro completo para la restauración futura.

copia de seguridad de una partición en un archivo(en mi directorio personal como hdadisk.img)

dd if =/dev/sda2 of=~/hdadisk.img

Restaurar este archivo de imagen en otra máquina

dd if=hdadisk.img of=/dev/sdb3

Ejemplo 3: ¿se siente usted hdadisk.img es un poco grande? Utilice gzip o bzip2 para comprimir al crear una imagen.

dd if =/dev/sda2 | bzip2 hdadisk.img.bz2

Ejemplo 4: ¿sabe que el comando dd también se puede usar como copiador de archivos?, Sí, si no tiene el comando cp, use el comando dd para copiar un archivo de una ubicación a otra.

dd if=/home/imran/abc.txt of=/mnt/abc.txt

Ok, eso está bien para el uso básico del comando dd. Pero la belleza del comando dd radica en usos avanzados como la limpieza de discos, limpieza completa de discos, copias de seguridad de MBR, etc.

uso avanzado del comando Linux DD

desde aquí debe tener cuidado al usar este comando y primero debe probar estos comandos en una máquina de prueba antes de familiarizarse.

Ejemplo 5: Limpie / elimine el contenido de un disco para que esté vacío para que alguien lo use.,

dd if=/dev/zero of=/dev/sdb

esto borrará su segundo disco duro y cada bit se escribirá con cero. usted puede estar interesado en aprender/dev /null y/dev / zero archivos que hacen cosas similares, pero hay un poco de diferencia.

¿cómo es la escritura del fichero en el disco duro con los datos?

normalmente lo que escribes en un disco a nivel de bloque escribirá una combinación de ceros y unos. Espero que sepas esto y lo que estamos haciendo aquí es que solo estamos escribiendo ceros que borrarán todos los 1 del disco duro. Esto eventualmente hace que su disco esté vacío.,

Ejemplo 6: qué ocultar su culo mediante la eliminación de sus datos personales. Mucha gente piensa que si hacemos rm-rf / < sus datos> harán lo necesario. Pero podemos recuperar esas eliminaciones utilizando herramientas de recuperación de disco como Photorec o algunas herramientas forenses. Pero si desea que algunos no recuperen sus datos, debe escribir datos aleatorios en su partición donde residen los datos.

dd if=/dev/random of=/dev/sdb

Haga el comando anterior varias veces para que sea realmente difícil recuperar datos. Si estoy en tu lugar, escribiré debajo del script de shell para hacer eso.,

for i in {1..10};do dd if=/dev/random of=/dev/sdb;done

esto ejecutará el comando dd 10 veces seguidas una tras otra.

Ejemplo 7: podemos crear un sistema de archivos virtual con el comando dd que se puede usar como swap. Para saber más sobre usted debe saber sobre cómo crear espacio de intercambio virtual en Linux.

dd if = /dev / zero of=/swapfile bs=1024 count = 200000

donde bs significa block size y count no es más que el número de bloques utilizados para crear este archivo swap.

asegúrese de usar tamaños de bloque en múltiplos de 1024 bytes que es igual a 1KB., Si no especifica el tamaño de bloque, DD utiliza un tamaño de bloque predeterminado de 512 bytes. A continuación, las convenciones funcionarán para los tamaños de bloque.

N y BYTES pueden ir seguidos de los siguientes sufijos multiplicativos: c =1, w =2, b =512,

kB =1000, K =1024, 
Mb =1000*1000, MB=1024*1024, 
Gb =1000*1000*1000, GB =1024*1024*1024, 
and so on for T, P, E, Z, Y.

Ejemplo 8: incluso podemos crear archivos ISO desde un CD-ROM o DVD-ROM usando el comando dd.,

dd if=/dev/dvd of=/opt/my_linux_image.iso

o con más

dd if=/dev/sr0 of=/home/$user/mycd_image.iso bs=2048 conv=sync

algunos otros ejemplos:

dd if=/dev/sda1 of=/dev/sdb1 bs=4096 conv=noerror,sync

esto hará que la clonación de una partición sda1 a otra partición sdb1, también se utiliza la opción de sincronización para sincronizar la partición

dd if=/dev/sdx of=/dev/sdy bs=64k conv=noerror,sync

esto clonará toda la unidad, incluyendo MBR, todas las particiones y datos donde noerrr instruye a dd a ignorar todos los errores de lectura mientras continúa las operaciones. Las compensaciones de datos snyc permanecen sincronizadas y BS = establece el tamaño del bloque que se establece en 64k.,
Ejemplo 9: incluso podemos comprobar la cuota de disco usando el comando dd creando archivos enormes que consumen el disco duro en poco tiempo.

dd if=/dev/zero of=/usr/disk-img/disk-quota.ext3 count=40960 

esto creará un archivo de 20MB (imagen de disco) en dicha ruta.

Ejemplo 10: incluso podemos crear USB de arranque usando el comando dd.

dd if = / home / user user / bootimage.img of = /dev/sdc

esto creará una unidad USB con capacidad de arranque donde /dev / sdc es una unidad USB.ejemplo 11: recuperación de datos usando el comando ddrescue.
la herramienta ddrescue se utiliza para clonar y recuperar datos. esto no se instala de forma predeterminada en muchas máquinas Linux., A continuación se muestran los comandos a instalar para las distribuciones respectivas.

instalación de ddrescue en máquinas basadas en Debian

apt-get install gddrescue

instalación de ddrescue en máquinas basadas en Redhat

yum install gddrescue

puede copiar datos de un dispositivo de archivo/bloque(disco duro o CD-ROM) a otro mientras intenta rescatar los datos, es decir, error de lectura para maximizar data. Para recuperar datos el comando ddrescue debe ejecutarse en dos pasos seguidos de ejecutar el comando fsck.

Paso 1: copia todos y cada bloque sin errores de lectura y registro de estos errores en el archivo de registro.,

Paso 2: copiará solo el bloque malo e intentará leer 3 veces a la fuente antes de darse por vencido. Entonces puede ejecutar el comando para verificar si el sistema de archivos está dañado.

Paso 3: ejecutar el comando fsck.

ddrescue –f –n /dev/sdX /dev/sdY rescue.log ddrescue –d –f –r3 /dev/sdX /dev/sdY rescue.log fsck –f /dev/sdY

Ejemplo 12: informática forense usando dcfldd
dcfldd es la versión mejorada de dd que tiene características útiles utilizadas para informática forense y seguridad también. Toma los parámetros de dd. Puede usar el comando dcfldd cuando necesite saber que una copia y las copias posteriores son idénticas al original., dcfldd tiene algunas características adicionales como;

  • Hashing on-the-fly
  • Status output
  • Image / wipe verify
  • Split output
  • hashing

de nuevo tenemos que instalar este comando también, si no está presente.

instalación de dcfldd en máquinas basadas en Debian

apt-get install dcfldd

instalación de dcfldd en máquinas basadas en Redhat

yum install dcfldd

Ejemplo

el comando anterior leerá un Gb de la unidad de origen y escribirá en un archivo llamado image.dd.aa., también calculará el hash MD5 y el sha512 de cada Gigbyte leído.

vistas de publicaciones: 154,435
las siguientes dos pestañas cambian el contenido a continuación.

  • Bio
  • últimas publicaciones

tengo más de 11 años de experiencia en soporte de infraestructura de TI, Soporte de servidores, Soporte de Escritorio, operaciones de red y solución de problemas, operaciones de Centro de datos con una organización de renombre impulsada por la tecnología. Soy Máster en Informática.,

Latest posts by Imran Ashraf (see all)

  • 12 Linux dd command examples – March 8, 2016

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *