Seguridad

Formatear unidad a bajo nivel con dd y /dev/zero en Linux Ubuntu

En este post vamos a ver cómo eliminar el contenido de una unidad de disco (puede ser una memoria USB, una partición o un disco duro completo) llenándolo de ceros.

La operación que vamos a realizar también se conoce como eliminado seguro, pues elimina todo el contenido de una unidad y la llena de ceros.

Para esto vamos a copiar datos del dispositivo especial llamado /dev/zero usando el comando dd.

Esto es distinto a simplemente formatear, pues vamos a “formatear a bajo nivel” llenando la unidad de ceros, formateando de forma segura.

Paquetes necesarios

El comando dd ya viene incluido en múltiples distribuciones de Linux, así que no es necesario instalarlo.

Lo que sí es necesario instalar es pv, pues permite visualizar el avance de una operación.

Como formatear el disco duro a bajo nivel es tardado, necesitamos una retroalimentación o feedback que pv nos va a dar, algo así como el progreso o avance.

Para instalar pv primero actualiza el índice de paquetes con:

sudo apt-get update

Después instala pv con:

sudo apt-get install pv -y

Este paquete es opcional, pero recomendado.

Formatear unidad a bajo nivel

Para ejecutar el borrado seguro primero debemos identificar la unidad de disco que vamos a borrar. Puede ser una partición o una unidad completa.

Ve al menú y busca “discos” o “disks” y selecciona tu unidad. Si no está montada haz click en el botón Play.

El nombre debe ser algo como /dev/...

1 – Identificar nombre de la partición

Ahora ve a la terminal y ejecuta:

sudo su

Para tener permisos de root. Después de eso (obviamente cambiando el nombre que tiene tu unidad):

dd if=/dev/zero |pv| dd of=/dev/sdb1

Si no instalaste pv, entonces el comando queda más corto:

dd if=/dev/zero of=/dev/sdb1

En cualquiera de los casos el comando dd se encarga de copiar un archivo, convirtiendo y formateando de acuerdo a los operandos.

La opción if es input file o archivo de entrada, que en este caso es /dev/zero. El archivo de destino/salida u output file (of) es en donde vamos a copiar los datos.

pv es para visualizar el progreso y su uso es opcional.

2 – Copiar de dev zero

Cuando la operación termine es probable que indique el mensaje de “No queda espacio en el dispositivo”

Esto es porque nunca se termina de leer de /dev/zero, así que el dispositivo se llenará de ceros hasta alcanzar su máxima capacidad.

Después de formatearlo a bajo nivel es probable que quieras formatearlo como normalmente lo haces, pues los datos ya se habrán eliminado de manera segura.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

  • Quería agradecerte, me sirvió mucho la información. También quería consultarte si después de haber iniciado un formateo hay algún modo de ver el progreso sin antes haber usado el comando pv?. Muchas gracias de nuevo

    • Gracias por sus comentarios. Me parece que el progreso se puede ver únicamente con pv, no conozco otra manera de hacerlo.
      Saludos :)

Entradas recientes

Creador de credenciales web – Aplicación gratuita

Hoy te voy a presentar un creador de credenciales que acabo de programar y que…

2 días hace

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

1 semana hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

1 semana hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

1 semana hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

1 semana hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

1 semana hace

Esta web usa cookies.