Cómo aprender el comando DD en Linux [15 ejemplos útiles]

Cómo aprender el comando DD en Linux [15 ejemplos útiles]

Breve: En esta guía avanzada, discutiremos algunos ejemplos prácticos del comando DD. Después de seguir esta guía, los usuarios avanzados podrán trabajar con los dispositivos de bloque cómodamente desde la interfaz de la línea de comandos.

En Linux, todo es un archivo y los dispositivos de bloque no son una excepción. A menudo, tiempo, necesitamos trabajar con dispositivos de bloque. Como usuarios de Linux, realizamos una variedad de operaciones en dispositivos de bloques, como, tomando una copia de seguridad de un disco o partición, una copia de seguridad de Master Boot Record (MBR), haciendo una unidad USB de arranque y la lista continúa.

Ciertamente, podemos usar herramientas gráficas para realizar todas estas operaciones. Sin embargo, la mayoría de los administradores de Linux prefieren usar el Comando DD Debido a su rica funcionalidad y robustez.

En esta guía avanzada, aprenderemos sobre el Comando DD para convertir y copiar archivos. Sin embargo, a diferencia del comando CP la mayor parte del tiempo se usa con dispositivos de bloque.

En esta guía, primero, entenderemos el uso del Comando DD Con ejemplos básicos, discutiremos algunos casos de uso avanzados.

Tabla de contenido

1
  • Sintaxis del comando DD
  • 1. Cómo copiar un archivo en Linux
  • 2. Cómo convertir el texto de minúsculas a mayúsculas
  • 3. Cómo convertir el texto de mayúsculas a minúsculas
  • 4. Evite sobrescribir el archivo de destino en Linux
  • 5. Agregar datos en un archivo utilizando el comando DD
  • 6. Omita bytes o caracteres mientras lee el archivo de entrada
  • 7. Partición de disco de copia de seguridad de Linux usando el comando DD
  • 8. Restaurar la partición de disco de Linux usando el comando DD
  • 9. Copia de seguridad del disco duro de Linux con comando DD
  • 10. Restaurar el disco duro de Linux usando el comando DD
  • 11. Registro de arranque maestro de respaldo usando el comando DD
  • 12. Restaurar el registro de arranque maestro usando el comando DD
  • 13. Copiar contenido de unidad de CD/DVD usando el comando DD
  • 14. Crear una unidad USB de arranque usando el comando DD
  • 15. Cómo mostrar la barra de progreso
      • Conclusión

Entonces empecemos.

Sintaxis del comando DD

La sintaxis más común de la Comando DD es como sigue:

$ dd [if =] [of =] 

En la sintaxis anterior:

  • si - representa el archivo de entrada o fuente.
  • de - representa el archivo de salida o destino.
Precaución - Es importante tener en cuenta que el comando DD debe usarse con mucha cautela mientras se trabaja con los dispositivos de bloque. Un pequeño error puede causar pérdida de datos permanente. Por lo tanto, se elogia fuertemente para probar estas operaciones en la máquina de prueba primero.

1. Cómo copiar un archivo en Linux

Uno de los usos básicos del Comando DD es copiar un archivo en un directorio actual. Entendamos creando un archivo de texto simple:

$ echo "Este es un archivo de texto de muestra"> Archivo-1.TXT 

Ahora, creemos una copia usando el Comando DD:

$ dd if = file-1.txt de = archivo-2.TXT 

En este ejemplo, el si El parámetro representa el archivo fuente, mientras que el de El parámetro representa el archivo de destino.

Copiar archivo con el comando DD

¿No es exactamente similar al Comando CP? Entonces, ¿qué tiene de especial el Comando DD?

El Comando DD es mucho más poderoso que el regular Comando CP. Las últimas secciones del tutorial discuten algunos de sus casos de uso avanzado.

2. Cómo convertir el texto de minúsculas a mayúsculas

El Comando DD nos permite realizar la conversión de casos. Para lograr esto podemos usar el convencer parámetro con él.

Para entender esto, primero, muestre el contenido del archivo-1.TXT archivo:

$ CAT File-1.TXT Este es un archivo de texto de muestra 

Ahora, convirtamos el contenido del archivo en la caja superior utilizando el siguiente comando:

$ dd if = file-1.txt de = superior.txt conv = ucase 

En este ejemplo, el conv = ucase La opción se utiliza para convertir las letras minúsculas en letras mayúsculas.

Finalmente, verifique el contenido del archivo recién creado:

$ Cat Uppercase.TXT Este es un archivo de texto de muestra 
Convierta el texto de minúsculas a mayúsculas en Linux

3. Cómo convertir el texto de mayúsculas a minúsculas

De manera similar, podemos usar el Comando DD Para convertir las letras de mayúsculas en minúsculas:

Usemos el conv = lcase opción para convertir las letras de mayúsculas en minúsculas:

$ DD IF = Case superior.txt de = caso inferior.txt conv = lcase 

Ahora, mostremos el contenido del archivo recién creado y verifiquemos que la conversión se haya realizado correctamente:

$ CAT BODER CASE.TXT Este es un archivo de texto de muestra 
Convertir texto en minúsculas en Linux

4. Evite sobrescribir el archivo de destino en Linux

Por defecto, el Comando DD Reemplaza el archivo de destino, lo que significa que sobrescribirá el archivo si existe en el destino con el mismo nombre.

Sin embargo, podemos deshabilitar este comportamiento predeterminado utilizando el conv = excl opción como se muestra.

$ dd if = file-1.txt de = archivo-2.txt conv = excl DD: no se pudo abrir 'Archivo-2.Existe el archivo de txt 

Aquí, podemos ver que el Comando DD ha abortado las operaciones porque el archivo con el mismo nombre está presente en el destino.

5. Agregar datos en un archivo utilizando el comando DD

A veces, queremos actualizar el archivo en un modo de adición, lo que significa que el nuevo contenido debe agregarse al final del archivo de destino.

Podemos lograr esto combinando las dos banderas - oflag = append y Conv = no runce. Aquí el hacer representa el indicador de salida, mientras que el no La opción se utiliza para deshabilitar el truncamiento en el destino.

Para comprender esto, primero, creemos un nuevo archivo de texto:

$ Echo "append Ejemplo Demo"> Dest.TXT 

A continuación, agregemos el contenido al desestimado.TXT Archivo usando el siguiente comando:

$ dd if = file-1.txt de = Dest.txt oflag = append conv = nonRunc 

Ahora, revisemos el contenido del desestimado.TXT archivo:

$ Cat Dest.Txt Append Ejemplo Demo Este es un archivo de texto de muestra 
Agregar datos a archivos utilizando el comando DD

6. Omita bytes o caracteres mientras lee el archivo de entrada

Podemos instruir al Comando DD para omitir los primeros caracteres mientras lee el archivo de entrada usando el SII y saltar opción.

Primero, mostremos el contenido del archivo-1.TXT archivo:

$ CAT File-1.txt Este es un archivo de texto de muestra 

A continuación, omitamos los primeros 8 caracteres usando el siguiente comando:

$ dd if = file-1.txt de = archivo-2.txt SIBS = 8 Skip = 1 

Ahora, verifiquemos el contenido del archivo-2.TXT archivo:

$ Cat File-2.txt un archivo de texto de muestra 
Omita los caracteres del archivo usando DD

En la salida anterior, podemos ver que el comando ha omitido los primeros 8 caracteres.

7. Partición de disco de copia de seguridad de Linux usando el comando DD

Hasta ahora discutimos los ejemplos básicos del Comando DD que no requiere acceso a la raíz. Ahora, veamos algunos casos de uso avanzados.

Al igual que los archivos, podemos tomar la copia de seguridad de la partición de disco utilizando el Comando DD. Por ejemplo, el siguiente comando toma una copia de seguridad del /dev/sda1 dividir a Partición-BKP.img:

$ sudo dd if =/dev/sda1 of = particion-bkp.img 
Partición de copia de seguridad en Linux usando el comando DD

8. Restaurar la partición de disco de Linux usando el comando DD

En el ejemplo anterior, respaldamos el /dev/sda1 Partición al Partición-BKP.img archivo.

Ahora, restaurémoslo al /dev/sdb1 Partición usando el siguiente comando:

$ sudo dd if = particion-bkp.img de =/dev/sdb1 
Restaurar la partición de Linux usando el comando DD

Es importante tener en cuenta que el tamaño de la partición de destino debe ser igual o mayor que el tamaño de copia de seguridad.

9. Copia de seguridad del disco duro de Linux con comando DD

La unidad de disco puede tener múltiples particiones. Por lo tanto, tomar y restaurar la copia de seguridad por partición puede convertirse en mucho tiempo a medida que aumenta el número de particiones. Para superar esta limitación, podemos hacer una copia de seguridad de toda la unidad de disco al igual que las particiones.

Entonces, tomemos la copia de seguridad del /dev/sda disco usando el siguiente comando:

$ sudo dd if =/dev/sda of = disk-bkp.img 
Copia de seguridad del disco duro de Linux con comando DD

El comando anterior toma de nuevo todo el disco, incluidas sus particiones.

10. Restaurar el disco duro de Linux usando el comando DD

Al igual que las particiones, podemos restaurar la copia de seguridad de todo el disco. En el ejemplo anterior, retrocedimos todo el disco al disco-bkp.img archivo. Ahora, usemos lo mismo para restaurarlo en el /dev/sdb disco.

Primero, eliminemos todas las particiones del /dev/sdb disco y verifique que todas las particiones se hayan eliminado:

$ lsblk /dev /sdb 

A continuación, restauremos la copia de seguridad del /dev/sdb conducir usando el siguiente comando:

$ sudo dd if = disk-bkp.img de =/dev/sdb 

Finalmente, verifique que la partición se haya creado en el /dev/sdb disco:

$ lsblk /dev /sdb 
Restaurar el disco duro de Linux usando el comando DD

11. Registro de arranque maestro de respaldo usando el comando DD

El registro de Boot Master (MBR) se encuentra en el primer sector del disco de arranque. Almacena información sobre las particiones de disco. Podemos usar el Comando DD Como se muestra a continuación para retrasarlo:

$ sudo dd if =/dev/sda of = mBr.img bs = 512 recuento = 1 

El comando anterior toma de nuevo los primeros 512 bytes I.mi. un sector.

Copia de seguridad MBR usando el comando DD

Es importante tener en cuenta que el comando anterior debe ejecutarse en el disco de arranque.

12. Restaurar el registro de arranque maestro usando el comando DD

En el ejemplo anterior, respaldamos el registro de Boot Master (MBR). Ahora, restauremos en el /dev/sdb disco usando el siguiente comando:

$ sudo dd if = mbr.img de =/dev/sdb 
Restaurar MBR usando el comando DD

13. Copiar contenido de unidad de CD/DVD usando el comando DD

Similar a las particiones y discos, podemos usar el comando DD para copiar contenido de la unidad de CD o DVD. Así que usemos el siguiente comando para hacer lo mismo:

$ sudo dd if =/dev/cdrom of = Alma-Minimal.Yo asi 

En Linux, la unidad CD/DVD está representada por el /dev/cdrom dispositivo. Por lo tanto, lo estamos utilizando como un archivo fuente.

Ahora, verifiquemos que el contenido se haya copiado con éxito verificando su comando de suma de verificación:

$ sha256sum alma-minimal.es 
Copiar contenido de CD/DVD usando el comando DD

14. Crear una unidad USB de arranque usando el comando DD

En el ejemplo anterior, creamos una imagen ISO del Alma Linux. Ahora usemos para crear una unidad USB de arranque:

$ sudo dd if = alma-minimal.ISO de =/dev/sdb 
Crear USB de arranque usando el comando DD

Es importante tener en cuenta que el comando anterior debe ejecutarse con la unidad USB correcta.

15. Cómo mostrar la barra de progreso

Por defecto, el Comando DD no muestra el progreso mientras realiza la operación de copia. Sin embargo, podemos anular este comportamiento predeterminado utilizando la opción de estado.

Así que usemos el estado = progreso opción con el Comando DD Para mostrar la barra de progreso:

$ sudo dd if = alma-minimal.ISO de =/dev/sdb status = progreso 
Mostrar progreso del comando DD
Conclusión

En este artículo, discutimos algunos ejemplos prácticos del Comando DD. Los usuarios avanzados pueden consultar estos ejemplos en la vida cotidiana mientras trabajan con Linux Systems. Sin embargo, debemos tener mucho cuidado al ejecutar estos comandos. Porque un pequeño error puede sobrescribir el contenido de todo el disco.

¿Conoce algún otro mejor ejemplo del comando DD en Linux?? Háganos saber sus puntos de vista en los comentarios a continuación.