Ci sono due cose a cui pensare qui, come suggerito da altre risposte.
Il primo è la corruzione del file system. Ciò si riferisce alle strutture di metadati che rendono utilizzabile il file system ed è compreso e controllato dal kernel.
Il secondo è il contenuto dei file. Quando il contenuto di un file è danneggiato, il kernel non lo saprà (o se ne occuperà). I sistemi complessi come i database implementano le proprie strutture di metadati per risolvere questo problema, ma per la maggior parte dei tipi di file su un tipico sistema desktop non esiste nulla del genere.
Se stai modificando un file, una "modifica" al file potrebbe consistere in scritture in più posizioni. Quando tutte queste scritture sono state completate, il file è in uno stato coerente, ma quando solo alcune di queste scritture sono completate, il contenuto del file potrebbe essere danneggiato (incoerente)
Il sistema operativo "dovrebbe" raggruppare le scritture correlate in una transazione. Quindi, ad esempio quando un file cresce, i dati devono essere scritti nei blocchi appartenenti a quel file e le strutture del file system devono essere aggiornate per allocare quei nuovi blocchi al file e possibili modifiche alla voce della directory (ad es. Ora dell'ultima modifica ) essere aggiornato, tutto come un singolo gruppo. Una volta che tutto questo è sincronizzato (scaricato) su disco, il file system sarà nuovamente coerente, ma il contenuto del file potrebbe non esserlo fino a quando tutte le scritture rilevanti non saranno state inviate dall'applicazione e scaricate su disco dal sistema operativo.
Se l'applicazione si trova nel mezzo di una modifica complicata e viene bloccata prima che tutte le transazioni siano state emesse, ad esempio si preme SALVA e si chiude immediatamente il coperchio del laptop, l'intero gruppo di modifiche potrebbe non arrivare tutte alle code di scrittura del kernel.
Generalmente tutto ciò che è nelle code di scrittura verrà scaricato sul disco. I file system dovrebbero, in generale, essere coerenti. A causa delle riviste del file system, ciò potrebbe significare che alcune di queste modifiche sono temporaneamente in un registro, sebbene in modo sicuro sul disco.
Il contenuto del file tuttavia è un'altra storia.