¿Cuál es el propósito de `rm -P`?

11

Estaba leyendo la página del manual para rmcuando encontré esta opción:

-P    Overwrite regular files before deleting them.  Files are overwritten 
      three times, first with the byte pattern 0xff, then 0x00, and 
      then 0xff again, before they are deleted.

Supongo que -Pestá destinado a eliminar completamente un archivo, pero ¿no establecería todos los bytes 0xffo 0x00sería suficiente? ¿Por qué tiene que alternar entre las dos tres veces?

theabraham
fuente

Respuestas:

12

Existe una técnica llamada recuperación de información residual que puede leer datos que se eliminaron en base a la idea de que cuando el disco está magnetizado para almacenar datos, otras partes cercanas a los datos también se ven afectadas por esto y debería ser posible volver a -Leer datos de esta manera ... esta es una técnica costosa, pero úsela si es paranoico;)

Al escribir datos 3 veces (en este caso), las partes al lado de la pista en el disco también deben volver a configurarse para que sea imposible volver a leer de esta manera.

Jontas
fuente
55
También encontré un buen artículo wiki sobre el tema: en.wikipedia.org/wiki/Data_remanence . ¡Gracias!
theabraham
1
"Hay una técnica" - no. Existe una técnica hipotética que nunca se ha demostrado que funcione, y que muchas compañías profesionales de recuperación de datos han considerado inviable. Existen teorías de conspiración de que las agencias secretas aprovechan esta técnica, pero dado que los detalles técnicos han sido desmentidos, son solo eso: teorías de conspiración.
Konrad Rudolph el
8

Esta opción es en gran medida inútil. Sobrescribir con múltiples patrones es un poco de paranoia que no está justificada por las pruebas del mundo real: en los discos duros modernos, sobrescribir una o varias veces, con ceros o unos o patrones aleatorios, no hace ninguna diferencia. El caso es menos claro para SSD, pero estos tienen sus propios problemas; sobrescribir varias veces desgasta el dispositivo más rápido sin realmente ayudar a borrar los datos de todos modos.

La razón principal por la que borrar un archivo al eliminarlo es en gran medida inútil es que muy a menudo hay versiones anteriores del archivo, copias de seguridad del editor, archivos de intercambio del editor, etc., que no se borraron. Además, el sistema de archivos en sí mismo puede tener datos modificados (debido a la desfragmentación o una verificación del sistema de archivos).

Si tienes miedo de que un archivo pueda dejar migas, encripta. Si un archivo está encriptado, no necesita tomar ninguna precaución al eliminarlo; solo necesita asegurarse de no perder la llave. Puede cifrar el archivo específicamente, en cuyo caso debe asegurarse de que todas las copias de seguridad y otros archivos que puedan contener todos o parte de los datos también estén cifrados; o puede cifrar el volumen en el que se encuentra el archivo (que generalmente se ocupa de estos otros archivos).

Para más información, ver

Gilles 'SO- deja de ser malvado'
fuente
1

En la medida en que elimina el contenido del archivo antes de desvincularlo (para evitar la recuperación), también estaría eliminando las "otras copias" del archivo (realmente el mismo archivo) que podrían existir en cualquier otra parte del sistema de archivos en forma de enlaces duros.

Con BTRFS o cualquier otro sistema de archivos de copia en escritura, espero que no haga nada para la destrucción forense de los datos, aunque todos los demás enlaces duros al archivo estarían compuestos de basura. También dejaría intactas cualquier otra copia de vaca del archivo ... o cualquier copia del archivo en instantáneas.

asesino
fuente