Perché il file eliminato non viene effettivamente eliminato dal disco rigido?


8

Da un articolo sul recupero dei file ho letto che quando un file viene eliminato sul tuo computer, viene eliminato solo un puntatore al file e lo spazio occupato dal file viene contrassegnato come libero da usare. È l'unico motivo per questo per recuperare file "cancellati" o ci sono altri motivi per cui lo spazio occupato non è effettivamente cancellato (bit impostati su zero)?


Valuta di cancellare i blocchi utilizzati da un file su un supporto lento. FAT è stato inizialmente progettato per i floppy disk e anche i floppy sono diventati più veloci con il progredire della tecnologia. La possibilità di recuperare file cancellati è in gran parte un effetto collaterale della decisione di non sovrascrivere i dati, non viceversa. I file system più moderni (in particolare quelli con tecnologia copy-on-write: btrfs, zfs, ...) hanno altre considerazioni (quando si elimina il file, è possibile che non si abbia nemmeno una registrazione di dove ogni copia è stata archiviata storicamente e certamente non vuoi raddoppiare ogni scrittura se non devi farlo).
un CVn

Risposte:


20

Il motivo per preferire lo scollegamento anziché l'azzeramento di un file è la prestazione. È molto più semplice azzerare semplicemente una variabile nella struttura dei dati del filesystem piuttosto che iniziare a sovrascrivere un intero file. Nei moderni filesystem il distacco del file richiede una quantità costante di tempo indipendentemente dalla dimensione del file, mentre il tempo impiegato per sovrascrivere un file è proporzionale alla dimensione del file.


"Scollegare il file richiede una quantità costante di tempo indipendentemente dalle dimensioni del file" - se ciò è vero dipende dalle strutture di dati utilizzate per gestire lo spazio libero. Molti filesystem più vecchi usano un bitmap a blocchi, dove liberare spazio richiede tempo proporzionale alla dimensione del file.
Michael Borgwardt,

@MichaelBorgwardt Grazie, modificato la risposta per chiarezza.

Non avrei potuto dirlo meglio.
octopusgrabbus

8

Perché ci vorrebbe molto più tempo e non è necessario a meno che non si voglia rendere impossibile il recupero di file cancellati, cosa che accade raramente.


2
+1 per "molto più tempo". Il file system non è stato progettato con l'azzeramento dei dati come requisito, ma è stato progettato per essere il più veloce possibile.
Scott Whitlock,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.