Herramientas de usuario

Herramientas del sitio


informatica:sistemas_operativos:linux:coreutils:dd

dd

Programa que permite copiar y convertir datos de archivos a bajo nivel.

Completar

Usos

Clonar dispositivo de almacenamiento (SSD, USB, SD...)

Primero debemos identificar correctamente el dispositivo que queremos clonar. Para ello, podemos usar fdisk o lsblk:

sudo fdisk -l
sudo lsblk -f

Si queremos hacer una copia de ese dispositivo a un fichero llamado resultado.img:

dd if=/dev/sdX of=resultado.img bs=1M status=progress conv=fsync

Donde:

  • /dev/sdX es el dispositivo conectado por USB que queremos clonar
  • bs=1M: indica el tamaño del bloque (block size) que se lee y escribe de cada vez. Para este ejemplo, se hará la copia en bloques de 1 MiB. Si no le indicamos una unidad de medida, se hará en bytes (por defecto, 512 bytes). Un valor recomendable hoy en día suele ser 4M.
  • resultado.img es la imagen con el clon del dispositivo USB
  • status=progress: informa de la operación de copia
  • conv=fsync: sincroniza todos los datos escritos antes de que dd finalice, es decir, vacía el búffer usado como caché (en memoria RAM) obligando al sistema operativo a que escriba definitivamente los datos y así confirmar que los datos están físicamente almacenados. Esto evita que se pierdan datos si no expulsamos correctamente el dispositivo o hay algún corte de energía.

Es necesario desmontar todas las particiones que tenga el dispositivo si lo vamos a clonar entero. Si está identificado como /dev/sdb, podríamos desmontar todo con:

sudo umount /dev/sdb*

Eliminación de datos

dd if=/dev/urandom of=/<archivo, directorio, o disco a borrar>

Con el comando anterior, se estarán escribiendo datos aleatorios en el archivo, disco o dispositivo que queremos “borrar”.

urandom es un generador de números aleatorios.

Creación de unidades USB

Útil cuando queremos grabar una imagen de instalación de un sistema operativo en un dispositivo USB:

dd if=/<ruta_imagen.iso> of=/dev/sdX

Donde:

  • /dev/sdX es el dispositivo USB en el que se grabará la imagen ruta_imagen.iso.
informatica/sistemas_operativos/linux/coreutils/dd.txt · Última modificación: por tempwin