Gestión de discos

Comando dd de Linux

Comando dd de Linux
"Dd" es una herramienta CLI de Linux. Ahora, la versión actual de "dd" es parte de las coreutils de GNU, es la que presenta cada sistema UNIX / Linux. El propósito principal de esta herramienta es convertir y copiar archivos. Sin embargo, es bastante diferente a otras herramientas de copia de archivos como "cp".

características dd

"Dd" se puede utilizar para varios propósitos:

uso de dd

Estos son algunos de los usos más comunes e interesantes de "dd". Por supuesto, "dd" es mucho más capaz que estas cosas. Si está interesado, siempre recomiendo consultar otros recursos detallados sobre "dd".

Localización

cual dd

Como indica la salida, siempre que se ejecuta "dd", se inicia desde "/ usr / bin / dd".

Uso básico

Aquí está la estructura que sigue "dd".

dd si = de =

Por ejemplo, creemos un archivo con datos aleatorios. Hay algunos archivos especiales incorporados en Linux que aparecen como archivos normales como "/ dev / zero" que produce un flujo continuo de NULL, "/ dev / random" que produce datos aleatorios continuos.

dd if = / dev / urandom of = ~ / Desktop / random.txt bs = recuento de 1M = 5

Las primeras opciones se explican por sí mismas. Significa utilizar "/ dev / urandom" como fuente de datos y "~ / Desktop / random.txt ”como destino. Cuáles son las otras opciones?

Aquí, "bs" significa "tamaño de bloque". Cuando dd escribe datos, escribe en bloques. Con esta opción, se puede definir el tamaño del bloque. En este caso, el valor "1M" dice que el tamaño del bloque es 1 megabyte.

"Count" decide el número de bloques que se escribirán. Si no se soluciona, "dd" continuará el proceso de escritura a menos que finalice el flujo de entrada. En este caso, "/ dev / urandom" continuará generando datos infinitamente, por lo que esta opción fue primordial en este ejemplo.

Copias de seguridad

Con este método, "dd" se puede utilizar para volcar los datos de una unidad completa! Todo lo que necesita es decirle a la unidad como fuente.

dd si = de =

Si va a realizar tales acciones, asegúrese de que su fuente no sea un directorio. "Dd" no tiene idea de cómo procesar un directorio, por lo que las cosas no funcionarán.

"Dd" solo sabe cómo trabajar con archivos. Entonces, si necesita hacer una copia de seguridad de un directorio, use tar para archivarlo primero, luego use "dd" para transferirlo a un archivo.

tar cvJf demo.alquitrán.xz DemoDir /

dd if = demo.alquitrán.xz de = ~ / Escritorio / copia de seguridad.img

En el siguiente ejemplo, realizaremos una operación muy sensible: hacer una copia de seguridad del MBR! Ahora, si su sistema está usando MBR (Master Boot Record), entonces está ubicado en los primeros 512 bytes del disco del sistema: 466 bytes para el cargador de arranque, otros para la tabla de particiones.

Ejecute este comando para hacer una copia de seguridad del registro MBR.

dd if = / dev / sda of = ~ / Desktop / mbr.img bs = 512 recuento = 1

Restauración de datos

Para cualquier copia de seguridad, es necesaria la forma de restaurar los datos. En el caso de "dd", el proceso de restauración es un poco diferente al de cualquier otra herramienta. Tiene que volver a escribir el archivo de copia de seguridad en una carpeta / partición / dispositivo similar.

Por ejemplo, tengo esta "copia de seguridad.img "archivo que contiene la" demostración.alquitrán.archivo xz ”. Para extraerlo, utilicé el siguiente comando.

dd if = copia de seguridad.img de = demostración.alquitrán.xz

Nuevamente, asegúrese de que está escribiendo la salida en un archivo. "Dd" no es bueno con los directorios, recuerde?

De manera similar, si se usó "dd" para crear una copia de seguridad de una partición, restaurarla requeriría el siguiente comando.

dd si = de =

Por ejemplo, ¿qué tal si restauramos el MBR del que hicimos una copia de seguridad anteriormente??

dd if = mbr.img de = / dev / sda

Opciones "dd"

En algún momento de esta guía, se encontró con algunas opciones de "dd" como "bs" y "count", a la derecha? Bueno, hay más de ellos. Aquí hay una lista corta sobre qué son y cómo usarlos.

  • obs: determina el tamaño de los datos que se escribirán a la vez. El valor predeterminado es 512 bytes.

  • cbs: determina el tamaño de los datos que se convertirán a la vez.

  • ibs: determina el tamaño de los datos que se leerán a la vez.
  • recuento: copia solo N bloques

  • buscar: omite N bloques al inicio de la salida

  • omitir: omite N bloques al comienzo de la entrada

conv = ascii: convierte la entrada del archivo de EBCDIC a ASCII

conv = ebcdic: convierte la entrada del archivo de ASCII a EBCDIC

conv = ibm: convierte la entrada del archivo de ASCII a EBCDIC alternativo

conv = lcase: convierte la entrada del archivo de mayúsculas a minúsculas

conv = ucase: convierte la entrada del archivo de minúsculas a mayúsculas

conv = swab: intercambia todos los pares de entrada

Opciones adicionales:

  • nocreat: no cree el archivo de salida
  • notruc: no truncar el archivo de salida
  • noerror: continúa la operación, incluso después de enfrentar el error
  • fdatasync: escribe datos en el almacenamiento físico antes de que finalice el proceso
  • fsync: similar a fdatasync, pero también escribe los metadatos
  • iflag: ajusta la operación en función de varias banderas. Los indicadores disponibles incluyen: agregar a Agregar datos a la salida

Opciones adicionales:

  • directorio: Frente a un directorio fallará la operación
  • dsync: E / S sincronizada para datos
  • sincronización: similar a dsync pero incluye metadatos
  • nocache: solicitudes para eliminar caché.
  • nofollow: no sigas ningún enlace simbólico

Opciones adicionales:

  • count_bytes: similar a "count = N"
  • seek_bytes: similar a "seek = N"
  • skip_bytes: similar a "skip = N"

Como ha visto, es posible apilar varios indicadores y opciones en un solo comando "dd" para modificar el comportamiento de la operación.

dd if = demo.txt de = demo1.txt bs = 10 recuento = 100 conv = ebcdic
iflag = append, nocache, nofollow, sync

Pensamientos finales

El flujo de trabajo de "dd" es bastante simple. Sin embargo, para que "dd" realmente brille, depende de usted. Hay muchas formas creativas en las que se puede utilizar "dd" para realizar interacciones inteligentes.

Para obtener información detallada sobre "dd" y todas sus opciones, consulte la página de información y man.

hombre dd
Instale el último juego de estrategia de OpenRA en Ubuntu Linux
OpenRA es un motor de juego de estrategia en tiempo real libre / gratuito que recrea los primeros juegos de Westwood como el clásico Command & Conquer...
Instale el último emulador de Dolphin para Gamecube y Wii en Linux
Dolphin Emulator te permite jugar los juegos de Gamecube y Wii que elijas en computadoras personales con Linux (PC). Al ser un emulador de juegos de ...
Cómo usar GameConqueror Cheat Engine en Linux
El artículo cubre una guía sobre el uso del motor de trucos GameConqueror en Linux. Muchos usuarios que juegan juegos en Windows a menudo usan la apli...