badblocks vs. SMART Extended Self Test


14

In che modo una scansione della superficie di lettura / scrittura completa per "badblock" differisce dall'autotest SMART integrato ?

Sembra che siano entrambe scansioni a superficie piena, quindi perché sono necessari badblocks -vws3 giorni per testare un'unità da 1 TB, mentre SMART lo fa in 2 1/2 ore (almeno questo è il tempo stimato da Smartmon)?


essendo più in tutto, hai considerato di usare i badblocksparametri "last-block" "first-block" ed eseguire i test un po 'al giorno?
Aquarius Power il

Risposte:


12

Il test di superficie SMART è quasi certamente un singolo passaggio di lettura, certamente non distruttivo. Come è stato sottolineato, è anche interno all'unità; con la possibile eccezione di dati di controllo minori, durante il test non vengono trasmessi dati da o verso l'host.

D'altra parte, badblocks -weffettua quattro passaggi sull'unità, ciascuno con una scrittura e una lettura. Questo da solo rappresenta una differenza di 8 volte nel tempo impiegato per il test, oltre alla latenza di rotazione. Dato che si tratta di un software in esecuzione sull'host, tutti i dati devono essere trasferiti attraverso l'interfaccia del disco alla RAM e gestiti dal software (nel nostro caso i blocchi errati).

Se prendiamo una latenza di rotazione nel caso peggiore di 1 × (il disco deve fare un giro completo dopo aver scritto i dati per rileggerli, il che è praticamente ciò che vedrai se ti piacciono i badblock riempie prima tutto disco e poi rileggiamo tutto, piuttosto che fare I / O una traccia fisica alla volta che con LBA è quasi impossibile), finiamo con il caso peggiore (1 + 1) × 8 × = 16 × quanto basta completa l'operazione. 16 × 2,5 h = 40 h, che è certamente in linea con i tuoi numeri e presuppone ancora che stiamo trattando solo l'archiviazione dei dati sull'unità e che ciò avvenga con la stessa velocità con cui l'unità può supportare l'I / O sequenziale.


5

I test brevi e lunghi SMART eseguono solo letture (localizzate) dei settori; è anche non distruttivo per i dati. I dati letti vengono trasferiti solo al controller di bordo, non al PC host. L'interfaccia SATA è essenzialmente inattiva durante il test e la spia di attività dell'HDD sul PC non deve accendersi.

badblocks -vwsrichiede un settore di scrittura, quindi leggi e verifica l'operazione. Ogni scrittura e lettura aggiunge una rivoluzione del disco per operazione più il tempo per i trasferimenti di dati tramite l'interfaccia SATA più l'elaborazione del PC host. La spia di attività dell'HDD dovrebbe essere accesa per la maggior parte del tempo.


0

https://wiki.archlinux.org/index.php/badblocks#Comparisons_with_Other_Programs

L'avvertenza in questo caso è che alcuni produttori che testano i programmi non stampano i risultati completi dei test e consentono a un certo numero di settori danneggiati di dire solo se superano o meno. I programmi del produttore, tuttavia, sono generalmente più veloci dei badblock, a volte in modo discreto.

Quindi, quando possibile, usa i test approfonditi distruttivi dei badblock.

Modifica: Per distruttivo intendevo dire che molti dischi rigidi moderni hanno un carico di lavoro di 180 TB / y, il che significa che su un hd da 12 TB, si verificherebbe un carico di lavoro di 96 TB, se si esegue l'intero set di test di badblock solo per testarlo. Potrebbe essere 48 TB se per carico di lavoro significano solo scritture, il che potrebbe essere il caso, ma non è ben documentato.

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.