Badblocks vs. SMART Extended Self Test

14

Wie unterscheidet sich ein vollständiger Lese- / Schreiboberflächenscan durch "Badblocks" vom integrierten SMART Extended-Selbsttest ?

Es scheint, als wären beide Vollflächenscans. Warum dauert es also badblocks -vws3 Tage, um ein 1-TB-Laufwerk zu testen, während SMART dies in 2 1/2 Stunden tut (zumindest ist dies die Zeitschätzung, die mir Smartmon gegeben hat)?

Robert S. Barnes
quelle
Haben Sie darüber nachgedacht, die badblocksParameter "letzter Block", "erster Block" zu verwenden und die Tests ein wenig pro Tag durchzuführen?
Wassermann Power

Antworten:

12

Der SMART-Oberflächentest ist mit ziemlicher Sicherheit ein einzelner und mit Sicherheit zerstörungsfreier Lesevorgang. Wie bereits erwähnt, befindet es sich auch im Laufwerk. Mit der möglichen Ausnahme kleinerer Kontrolldaten werden während des Tests keine Daten an oder vom Host übergeben.

Auf der anderen Seite werden badblocks -wvier Durchgänge über das Laufwerk ausgeführt, jeweils mit einem Schreib- und einem Lesevorgang. Dies allein erklärt einen 8-fachen Zeitunterschied für den Test plus Rotationslatenz. Da es sich um Software handelt, die auf dem Host ausgeführt wird, müssen alle diese Daten über die Festplattenschnittstelle in den Arbeitsspeicher gemischt und von der Software verarbeitet werden (in unserem Fall Badblocks).

Wenn wir eine Rotationslatenz im ungünstigsten Fall von 1 × annehmen (die Festplatte muss nach dem Schreiben der Daten eine volle Umdrehung ausführen, um sie zurückzulesen, was ziemlich genau das ist, was Sie sehen werden, wenn Sie Badblocks mögen, füllt zuerst das Ganze aus Diskette und lesen Sie dann alles zurück, anstatt eine physische Spur nach der anderen E / A zu machen, was mit LBA nahezu unmöglich ist. Am Ende haben wir den schlimmsten Fall (1 + 1) × 8 × = 16 × so lange wie nötig Schließen Sie den Vorgang ab. 16 × 2,5h = 40h, was sicherlich Ihren Zahlen entspricht und immer noch davon ausgeht, dass es sich nur um Datenspeicherung auf dem Laufwerk handelt und dass dies so schnell geschieht, wie das Laufwerk sequentielle E / A unterstützen kann.

ein CVn
quelle
5

Die SMART-Kurz- und Langtests führen nur (lokalisierte) Lesevorgänge der Sektoren durch. Es ist auch zerstörungsfrei für die Daten. Die gelesenen Daten werden nur an die integrierte Steuerung übertragen, nicht an den Host-PC. Die SATA-Schnittstelle ist während des Tests im Wesentlichen inaktiv, und die HDD-Aktivitätsanzeige am PC sollte nicht aufleuchten.

badblocks -vwsfordert einen Schreibsektor an und liest und überprüft den Vorgang. Jedes Schreiben und Lesen fügt eine Plattenumdrehung pro Operation plus Zeit für Datenübertragungen über die SATA-Schnittstelle plus Host-PC-Verarbeitung hinzu. Die HDD-Aktivitätsanzeige sollte die meiste Zeit leuchten.

Sägespäne
quelle
0

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

Die Einschränkung hierbei ist, dass einige Hersteller-Testprogramme nicht die vollständigen Testergebnisse drucken und eine bestimmte Anzahl von fehlerhaften Sektoren zulassen, die nur sagen, ob sie bestanden haben oder nicht. Herstellerprogramme sind jedoch im Allgemeinen schneller als Badblocks, manchmal eine angemessene Menge.

Verwenden Sie daher nach Möglichkeit die zerstörerischen gründlichen Tests von Badblocks.

Bearbeiten: Mit destruktiv meinte ich, dass viele moderne Festplatten eine Arbeitslast von 180 TB / Jahr haben, was bedeutet, dass Sie auf einer 12-TB-Festplatte eine Arbeitslast von 96 TB benötigen, wenn Sie den gesamten Satz von Badblocks-Tests ausführen, um sie zu testen. Das können 48 TB sein, wenn es sich bei der Arbeitslast nur um Schreibvorgänge handelt, was der Fall sein kann, aber nicht gut dokumentiert ist.

Ray Foss
quelle