¿Por qué el archivo eliminado no se elimina realmente del disco duro?

8

De un artículo sobre recuperación de archivos , leí que cuando se elimina un archivo en su computadora, solo se elimina un puntero al archivo y el espacio ocupado por el archivo se marca como de uso gratuito. ¿Es la única razón para que esto recupere los archivos "eliminados" o hay alguna otra razón por la cual el espacio ocupado no se elimina realmente (los bits se ponen a cero)?

John Nevermore
fuente
Considere borrar los bloques utilizados por un archivo en medios lentos. FAT se diseñó inicialmente para disquetes, e incluso los disquetes se hicieron más rápidos a medida que la tecnología progresaba. La capacidad de recuperar archivos borrados es en gran medida un efecto secundario de la decisión de no sobrescribir los datos, y no al revés. Los sistemas de archivos más modernos (particularmente aquellos con tecnología de copia en escritura: btrfs, zfs, ...) tienen otras consideraciones (al momento de eliminar el archivo, es posible que ni siquiera tenga un registro de dónde se ha almacenado históricamente cada copia , y ciertamente no desea duplicar cada escritura si no es necesario).
un CVn

Respuestas:

20

La razón para preferir desvincular en lugar de poner a cero un archivo es el rendimiento. Es mucho más fácil simplemente poner a cero una variable en la estructura de datos del sistema de archivos en lugar de comenzar a sobrescribir un archivo completo. En los sistemas de archivos modernos, desvincular el archivo requiere una cantidad constante de tiempo, independientemente del tamaño del archivo, mientras que el tiempo dedicado a sobrescribir un archivo es proporcional al tamaño del archivo.

zxcdw
fuente
"Desvincular el archivo lleva una cantidad constante de tiempo, independientemente del tamaño del archivo"; si eso es cierto depende de las estructuras de datos utilizadas para administrar el espacio libre. Muchos sistemas de archivos más antiguos usan un mapa de bits en bloque, donde liberar espacio requiere tiempo proporcional al tamaño del archivo.
Michael Borgwardt
@MichaelBorgwardt Gracias, modificó la respuesta para mayor claridad.
No podría haberlo dicho mejor.
octopusgrabbus
8

Porque llevaría mucho más tiempo y no es necesario a menos que desee hacer imposible la recuperación de archivos eliminados, lo cual rara vez es el caso.

Michael Borgwardt
fuente
2
+1 por "mucho más tiempo". El sistema de archivos no fue diseñado con la puesta a cero de datos como requisito, pero fue diseñado para ser lo más rápido posible.
Scott Whitlock