Quiero borrar un SSD de todas sus particiones y datos, para poder volver a particionarlo (esto no es por razones de seguridad).
Lo he visto, sudo dd if=/dev/zero of=/dev/sdb bs=1M
pero si esto solo llena cada partición con ceros, no estoy seguro de lo que quiero hacer.
Planeo ejecutar este comando con bastante frecuencia, y no quiero agotar las escrituras de mi SSD. ¿Alguien podría darme consejos para abordar este problema?
Respuestas:
En un SSD: puede RECORTAR discos enteros o particiones usando
blkdiscard
. No es muy seguro, pero prácticamente instantáneo (el disco simplemente marca todas las celdas como no utilizadas).Por seguridad: utilice el cifrado de disco completo. No se moleste en limpiar todo el disco si está encriptado; solo necesita limpiar el área que contiene sus claves (por ejemplo, el primer 1–2 MiB de cada partición encriptada).
Para volver a particionar: de nuevo, no se moleste en borrar todos los datos. Solo necesita destruir los sistemas de archivos usando
wipefs
, luego friegue los primeros 1 MiB de su disco para purgar los cargadores de arranque sobrantes. Después de formatear una partición usandomkfs
, el sistema operativo simplemente asumirá que está completamente vacía.(De hecho, en Linux, mkfs.ext4 RECORTARÁ automáticamente toda la partición antes de formatearla).
fuente
mkfs
será la basura de todos modos Pero diversas situaciones extrañas. Qué sucederá -wipefs
existe porque se necesitaba.)man wipefs
dice? (Sugerencia: mire el primer ejemplo en la sección de ejemplos de la página de manual)blkdiscard
sería bueno también, ya que crearía un rompecabezas del resto del disco, incluso si el atacante conocía la clave (suponiendo que el mapeo anterior no se pueda recuperar también). "luego friegue los primeros 1 MiB de su disco para purgar los cargadores de arranque sobrantes": la sección adicional se usa solo como desbordamiento de los primeros 512B. Si limpia primero 512B, no se verá perjudicado por el resto de 1M.Como Kamil Maciorowski menciona , la mejor manera, con el menor desgaste de escritura, de eliminar un disco completo , es usar el comando de 'borrado seguro' de ATA. Esto le indicará al hardware que haga un solo borrado completo, en lugar de sobrescribir las celdas repetidamente como con herramientas como
shred
. Esto solo se puede hacer para todo el disco, si necesita limpiar selectivamente las particiones, vea la respuesta de grawity (blkdiscard
)La implementación exacta del comando depende del hardware.
La mayoría de los SSD utilizarán una señal eléctrica a granel para limpiar chips enteros de una manera todo o nada. Esto incurre en un desgaste de escritura (normal), pero solo en la mínima medida posible (~ ciclo de escritura simple).
Los SSD de autocifrado generalmente solo borrarán la clave de cifrado dentro del chip del controlador (realmente instantáneo). Las unidades de autocifrado siempre cifran, incluso listas para usar (con una clave predeterminada de fábrica). Por lo tanto, limpiar la clave solo deja un revoltijo descifrable en los chips flash, incluso si no se configuró una clave de usuario.
dd if=/dev/zero
.El proceso se documenta bastante bien aquí: https://www.thomas-krenn.com/en/wiki/SSD_Secure_Erase (personalmente he usado este proceso repetidamente en mis propios SSD cuando reinstalé los SO)
Editar: si está interesado en las implicaciones de seguridad: consulte esta pregunta de Security.SE
fuente
Teniendo en cuenta que ha pedido una solución sobre cómo borrar rápidamente los discos Reemplace / dev / sdx con su disco, muy probablemente / dev / sda
Esto borrará la tabla de particiones.
Esto borrará todo el disco, tomará un tiempo.
fuente
cat
. Úselodd
para mejorar el rendimiento.dd
usa buffers de 512 bytes, lo que arruinará el rendimiento ... Coreutils (cp
y presumiblemente tambiéncat
) tienen un tamaño de buffer más sensible. No hay nada de esodd
que lo haga de alguna manera inherentemente más rápido, de todos modos.dd
. La última vez que intenté usarcat
para escribir una imagen en un disco, fue significativamente más lento que usarlodd
con un tamaño de búfer apropiado.