Frage 1:
In Bezug auf die -b
Option: Dies hängt von Ihrer Festplatte ab. Moderne, große Festplatten haben 4-KB-Blöcke. In diesem Fall sollten Sie diese festlegen -b 4096
. Sie können die Blockgröße vom Betriebssystem abrufen , und diese erhalten Sie normalerweise auch, indem Sie entweder die Datenträgerinformationen vom Etikett ablesen oder die Modellnummer des Datenträgers googeln. Wenn Sie einen -b
Wert festlegen, der größer als Ihre Blockgröße ist, kann die Integrität der badblocks
Ergebnisse beeinträchtigt werden (dh Sie können falsche Negative erhalten: Es werden keine fehlerhaften Blöcke gefunden, wenn sie möglicherweise noch vorhanden sind). Wenn Sie einen -b
Wert festlegen, der kleiner als die Blockgröße Ihres Laufwerks ist, badblocks
kann die Ausführungsgeschwindigkeit beeinträchtigt werden. Ich bin nicht sicher, aber es kann andere Probleme mit der Einstellung geben-b
Da die Integrität eines gesamten Blocks nicht überprüft wird, ist es möglicherweise immer noch möglich, falsche Negative zu erhalten, wenn der Block zu klein eingestellt ist.
Die -c
Option entspricht, wie viele Blöcke gleichzeitig überprüft werden sollen. Batch-Lesen / Schreiben im Grunde. Diese Option wirkt sich nicht auf die Integrität Ihrer Ergebnisse aus, wirkt sich jedoch auf die Ausführungsgeschwindigkeit aus badblocks
. badblocks
schreibt (optional), liest, puffert, prüft und wiederholt für alle N Blöcke, wie durch angegeben -c
. Wenn -c
die Einstellung zu niedrig ist, badblocks
dauern Ihre Durchläufe viel länger als gewöhnlich, da das Einreihen und Verarbeiten einer separaten E / A-Anforderung mit einem Mehraufwand verbunden ist und der Datenträger möglicherweise zusätzlichen Mehraufwand pro Anforderung verursacht. Wenn -c
zu hoch eingestellt ist, ist badblocks
möglicherweise nicht genügend Speicher verfügbar. Wenn dies passiert, badblocks
wird ziemlich schnell nach dem Start fehlschlagen. Zu den weiteren Überlegungen gehören parallele badblocks
Läufe: Wenn Sie laufenbadblocks
Bei mehreren Partitionen auf derselben Festplatte (schlechte Idee) oder bei mehreren Festplatten über denselben E / A-Kanal sollten Sie wahrscheinlich auf -c
einen vernünftig hohen Wert abstimmen, wenn der verfügbare Speicher vorhanden ist, badblocks
damit die parallelen Läufe nicht um die E / A-Bandbreite kämpfen und kann auf vernünftige Weise parallelisieren.
Frage 2:
Im Gegensatz zu den anderen Antworten ist der -w
Schreibmodus-Test nicht mehr oder weniger zuverlässig als der zerstörungsfreie Lese- / Schreibtest, aber doppelt so schnell, und zwar auf Kosten der Zerstörung aller Ihrer Daten. Ich erkläre warum:
Im zerstörungsfreien Modus wird badblocks
Folgendes ausgeführt:
- Lesen Sie vorhandene Daten, prüfen Sie sie (lesen Sie sie gegebenenfalls erneut) und speichern Sie sie im Speicher.
- Schreiben Sie ein vorbestimmtes Muster (das mit der
-p
Option überschrieben werden kann , aber normalerweise nicht erforderlich ist) in den Block.
- Lesen Sie den Block zurück und stellen Sie sicher, dass die gelesenen Daten mit dem Muster übereinstimmen.
- Schreiben Sie die Originaldaten zurück auf die Festplatte.
- Ich bin mir nicht sicher, aber es wird wahrscheinlich erneut gelesen und überprüft, ob die ursprünglichen Daten erfolgreich geschrieben wurden, und es werden immer noch Prüfsummen für dasselbe ausgegeben.
Im destruktiven ( -w
) Modus werden badblocks
nur die obigen Schritte 2 und 3 ausgeführt. Dies bedeutet, dass sich die Anzahl der Lese- / Schreibvorgänge, die zum Überprüfen der Datenintegrität erforderlich sind, halbiert. Wenn ein Block fehlerhaft ist, sind die Daten in beiden Modi fehlerhaft. Wenn Sie sich für die auf Ihrem Laufwerk gespeicherten Daten interessieren, sollten Sie natürlich den zerstörungsfreien Modus verwenden, da dadurch -w
alle Daten gelöscht und badblocks
stattdessen Muster auf die Festplatte geschrieben werden.
Caveat: Wenn ein Block geht schlecht, ist aber noch nicht ganz verschwunden, können einige Lese- / Schreib - Verifizierungspaar arbeiten, und einige können nicht. In diesem Fall liefert der zerstörungsfreie Modus möglicherweise einen zuverlässigeren Hinweis auf die "Mushiness" eines Blocks, da er zwei Sätze von Lese- / Schreibüberprüfungen durchführt (möglicherweise - siehe Aufzählungszeichen unter Schritt 4). Auch wenn der zerstörungsfreie Modus auf diese Weise zuverlässiger ist, ist er nur zufällig zuverlässiger . Die richtige Methode, um nach Blöcken zu suchen, die nicht vollständig fehlerhaft sind, aber nicht mehrere Lese- / Schreibvorgänge unterstützen, besteht darin badblocks
, mit der -p
Option mehrere Male dieselben Daten zu verarbeiten .
Frage 3:
Wenn SMART Sektoren neu zuordnet, sollten Sie wahrscheinlich in Betracht ziehen, das Laufwerk so schnell wie möglich zu ersetzen. Laufwerke, die einige Sektoren verlieren , verlieren sie nicht immer , aber die Ursache ist normalerweise ein stark beanspruchtes Laufwerk, das magnetisch matschig wird, oder ein Versagen der Köpfe / Motoren, was zu ungenauen oder fehlgeschlagenen Lese- / Schreibvorgängen führt. Die endgültige Entscheidung liegt natürlich bei Ihnen: Auf der Grundlage des Werts der Daten auf dem Laufwerk und der Zuverlässigkeit, die Sie von den Systemen benötigen, auf denen Sie sie ausführen, können Sie entscheiden, ob Sie weiterarbeiten möchten. Ich habe einige Laufwerke mit bekannten fehlerhaften Blöcken, die sich seit Jahren mit SMART-Warnungen in meinem Dateiserver drehen, aber sie werden nach einem Zeitplan gesichert, sodass ich einen Totalausfall ohne große Schmerzen bewältigen kann.