ZFS-Scrub findet Prüfsummenfehler, Badblocks und Smartctl jedoch nicht

589
taneli

Ich habe einen ZFS-Pool mit zwei Laufwerken als Spiegel konfiguriert. Das Betriebssystem ist Ubuntu 16.04 und ich habe die zfs 0.6.5 verwendet, die vom Hersteller gepackt wurde. Die Laufwerke sind 3T WD Green und 3T WD Red (wahrscheinlich nicht optimal für die Leistung, dies ist jedoch keine Überlegung), die in Byte und Sektoren gleich groß sind. Ich benutze keine Partitionen, aber ich habe zpool createauf jedem Laufwerk zwei gemacht, wie üblich. Standardmäßig führt das Betriebssystem einmal im Monat einen Scrub für den Pool durch, und ich habe den Scrub einige Male manuell ausgeführt.

Der Scrub-Prozess hat mehrmals Prüfsummenfehler auf dem WD Red-Laufwerk gefunden, jedoch nicht bei jedem Lauf. Sie wurden automatisch repariert und haben meines Wissens keine Probleme verursacht. Die in der CKSUM-Spalte angezeigte Zahl hat 3, 5 und 9 angegeben, und jetzt nach einem kürzlich erfolgten Upgrade auf Ubuntu 18.04 und ZFS 0.7.5 auch 31 (mit zusätzlichen Informationen "zu viele Fehler", wenn ich mich an die Nachricht erinnere ).

Alarmiert, entfernte ich die Festplatte vom Pool und exportierte den Pool. Ohne das Laufwerk zu importieren, lief ich badblocks -b 4096 -s -v -wdarauf, aber es wurden (0/0/0)Fehler gemeldet . Auch smartctl -a /dev/sdanichts Ungewöhnliches angedeutet, wenn ich das richtig verstehe ( | grep -i error):

 1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always - 0 7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0 199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0 200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Offline - 0 

Ich habe die Festplatte wieder an den Pool angeschlossen und sie wird gerade neu versilbert. Ich bleibe jedoch verwirrt: Was könnte die wiederkehrenden Fehler beim Schrubben verursacht haben? Was sollte ich in der Zukunft tun, um entweder besser herauszufinden, was das Problem sein könnte, oder es ganz zu vermeiden? Ich bin nicht besonders gespannt auf den Kauf von Ersatzlaufwerken, zumal der WD Red nur 2016 hergestellt wird.

(Ich bin nicht sicher, ob dies relevant ist, aber irgendwann führte entweder ein Bedienungsfehler oder ein Softwarefehler dazu, dass die nicht problematische WD Green-Laufwerkspartitionstabelle beschädigt wurde. Ich konnte keine andere Aktion finden, um sie in den Pool zurückzugeben, als das Trennen Löschen Sie die Partitionstabelle und verbinden Sie sie erneut. Während des erneuten Versilberungsprozesses konnten einige Blöcke nicht vom WD Red-Laufwerk gelesen werden, und ich habe die betroffene Datei aus den Sicherungen wiederhergestellt. Das Scrubbing hat Prüfsummenfehler vor und nach diesem Vorfall festgestellt.

0

1 Antwort auf die Frage

1
Dan

Es ist nicht leicht, herauszufinden, woran die Prüfsummenfehler entstanden sind, da sie unabhängig vom Dateisystem auftreten (es sei denn, sie werden durch Fehler im FS selbst verursacht, aber ich glaube nicht, dass dies hier passiert). Die smartctlund badblocksErfolge lassen mich hoffen, dass das Problem keine fehlerhafte Festplatte ist.

Diese Seite soll Ihnen helfen, den Fehler zu verstehen: http://illumos.org/msg/ZFS-8000-9P . Zitieren aus dem

For example, the following cases will all produce errors that do not  indicate potential device failure:  - A network attached device lost connectivity but has now recovered - A device suffered from a bit flip, an expected event over long periods of time - An administrator accidentally wrote over a portion of the disk using another program 

Ich denke, zu diesem Zeitpunkt ist die Überprüfung der Konnektivität zu den Laufwerken und das Ausführen von Resilver der richtige Weg.

Vielen Dank. Ich habe die Laufwerke mindestens zweimal entfernt und gleichzeitig die SATA-Kabel gewechselt. Ich bezweifle, dass ein fehlerhaftes Kabel oder ein schlecht angeschlossenes Kabel der Fall sein könnte. taneli vor 6 Jahren 0