¿Cómo decirle a fdisk que borre el contenido de la partición como lo hace GParted?

¿Cómo decirle a fdisk que borre el contenido de la partición como lo hace GParted?

Estoy intentando escribir un script para realizar algunos procedimientos con un pendrive USB, eliminando las particiones que encuentre y creando otras nuevas (más eneste enlace).

Cuando hago los procedimientos usando GParted, todo funciona bien, en particular cuando se crean las nuevas particiones con sus sistemas de archivos, los datos antiguos desaparecen (y esta operación no toma mucho tiempo para el contenido con el que estoy trabajando).

Pero cuando hago el procedimiento equivalente con fdisk, ¡siempre encuentro los datos antiguos en la misma partición antigua que estaba antes!

¿Cómo puedo proceder de manera que los datos de las particiones antiguas se borren por completo (y tan rápido como sucede con GParted)?

Probé comandos dd if=/dev/zero of=/dev/sdb bs=512 count=1y shred -vzn 0 /dev/sdbsimilares, pero en realidad no borraban los archivos o tomaban demasiado tiempo para hacerlo en comparación con GParted.

Respuesta1

No existe tal cosa en fdisk. A diferencia de GParted, no se preocupa en absoluto por los sistemas de archivos ni el contenido de las particiones; debe hacerlo manualmente.

Además, no explicó cómo determinó que "los datos antiguos habían desaparecido": ¿examinó el dispositivo de partición real o simplemente lo montó? Una partición puede estar llena de basura, y no importa, siempre y cuando el sistema de archivos diga "el directorio raíz tiene 0 archivos".

Dudo que GParted tenga una función para borrar completamente una partición; es más probable que simplemente haya creado un nuevo sistema de archivos.en la parte superiorde lo que había antes. (Dicho esto, en los SSD, las mkfsherramientashacerdescarte toda la partición usando TRIM, que es casi instantáneo. Sin embargo, con los HDD, nada puede hacer que un disco gire más rápido; dd no puede ser mucho más lento que GParted).

Entonces lo siguiente debería ser suficiente:

  1. Úselo wipefs --all /dev/xxxpara borrar las estructuras reconocibles del sistema de archivos,
  2. Utilice mkfs.ext4 /dev/xxx(o mkfs.lo que sea) para crear un sistema de archivos en blanco.

información relacionada