tl; dr nel caso in cui si verifichi un URE su un hdd, perderò 1 bit, 1 byte o le dimensioni di un settore (512 byte o 4096 byte AF)? e se possibile spiegare perché?
Sfondo: la domanda qui sorge quando un disco rigido ha un problema nella lettura dei dati. Sicuramente un disco può fallire completamente lasciando tutti i suoi dati persi (DISK FAIL), ma il caso di cui mi chiedo qui è che quando si perde solo una piccola parte di esso (URE, un errore di lettura non correggibile).
Anche se ho cercato informazioni su URE, ho scoperto poco per certo. Ciò potrebbe avere la sua causa in quanto ciò che accade internamente nell'unità, ovvero ciò che è nascosto dall'interazione diretta dell'utente come la correzione ECC, è per me difficile da mettere in relazione con ciò a cui accedo come utente: i settori.
Immaginiamo che l'hdd abbia difficoltà a leggere i dati.
In quella situazione, sicuramente questo deve significare che:
- (a) alcuni bit del settore non possono essere letti, o
- (b) tutti i bit possono essere letti, ma non superano un test di checksum (ovviamente si aspettano problemi in un settore 4096 byte non sono solo 8 * 4096 bit, ma alcuni bit / byte aggiuntivi per il controllo / correzione degli errori (es. bit di parità ) (c) ????
Non credo che quando ci troviamo nella situazione in cui si è verificata una combinazione di (a) e (b) e non si può fare una ricostruzione affidabile dei byte del settore 4096, allora è eccessivo presumere che necessariamente tutti siano garpage , in realtà se fossimo a conoscenza della logica di correzione degli errori hdd interale potremmo invece dire "guarda qualcosa non si verifica, e con una buona modifica almeno 1,2,3, n bit / byte dei dati del blocco è" sbagliato " ". Se stessimo salvando in modo ridondante "ciao, ciao ....., ciao" stringhe di byte ASCII in questo settore, potremmo effettivamente avere ancora una discreta successione di "ciao, ciao ...." prima che ci sia un "... Uellohello ... "(ovvero" e "->" U ").
Quindi qual è la granularità di un URE?
AGGIORNAMENTO: c'è stato un commento che ha introdotto l'idea di un settore danneggiato (e ha suggerito che ciò riflette la granularità di un evento URE. Non è assurdo, suggerirlo e forse può essere usato per rispondere alla domanda. Eppure ho appena letto un altro domanda su settori in attesa illeggibili (qui /unix/1869/how-do-i-make-my-disk-unmap-pending-unreadable-sector ) che mi porta a pensare che in alcuni scenari c'è davvero una linea più sfocata tra i dati persi in caso di un URE.