Das erneute Hinzufügen der Festplatte zum MD-RAID schlägt fehl

Das erneute Hinzufügen der Festplatte zum MD-RAID schlägt fehl

Ich habe ein Problem mit einem Linux-Software-RAID und weiß nicht, wie ich es lösen kann. Es handelt sich um ein RAID 1 mit mehreren Partitionen. Nach einem unsauberen Herunterfahren wurde das RAID unsauber degradiert und die Partition wurde entfernt. Ich kann es nicht manuell wieder hinzufügen.

mdadm --detail /dev/md2
/dev/md2:
          Version : 1.2
    Creation Time : Sat Jul 30 18:32:37 2022
       Raid Level : raid1
       Array Size : 100596736 (95.94 GiB 103.01 GB)
    Used Dev Size : 100596736 (95.94 GiB 103.01 GB)
     Raid Devices : 4
    Total Devices : 3
      Persistence : Superblock is persistent

      Update Time : Fri Feb  3 18:19:37 2023
            State : clean, degraded
   Active Devices : 3
  Working Devices : 3
   Failed Devices : 0
    Spare Devices : 0

Consistency Policy : resync

             Name : rescue:2
             UUID : 0aa4403a:125a1f94:d325179e:1c5ea540
           Events : 962235

   Number   Major   Minor   RaidDevice State
      0       8       51        0      active sync   /dev/sdd3
      2       8        3        1      active sync   /dev/sda3
      3       8       35        2      active sync   /dev/sdc3
      -       0        0        3      removed

Ich versuche es mdadm /dev/md2 --add /dev/sdb3, aber dann bekomme ich mdadm: add new device failed for /dev/sdb3 as 4: Invalid argumentund dmesg zeigt

print_req_error: I/O error, dev sdb, sector 35655689
ata3: EH complete
md: disabled device sdb3, could not read superblock.
md: sdb3 does not have a valid v1.2 superblock, not importing!
md: md_import_device returned -22

Die Prüfung bestätigt, dass kein Superblock vorhanden ist:

mdadm --misc -E /dev/sdb3
mdadm: No md superblock detected on /dev/sdb3.

Aufgrund des Lesefehlers habe ich Badblocks ausgeführt, aber danach ist der Fehler immer noch da. Meine Frage ist also, ob es eine Möglichkeit gibt, die Partition wieder zum RAID-Array hinzuzufügen und wie.

Smart zeigt Testergebnis als bestanden an:

smartctl 6.6 2017-11-05 r4594 [x86_64-linux-4.19.0-21-amd64] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

Jetzt frage ich mich wirklich, ob ein Laufwerkswechsel erforderlich ist oder ob es eine Möglichkeit gibt, den E/A-Fehler zu umgehen, der scheinbar das erneute Hinzufügen des Laufwerks zum Array verhindert.

Antwort1

Ihr sdbFehler war:

print_req_error: I/O error, dev sdb, sector 35655689

Badblocks werden hier nicht helfen; esdürfenHilfe für Dateisysteme, während die MD RAID-Struktur auf der Festplatte kein Dateisystem ist. Und ein fehlerhafter Block ist genau dort aufgetreten, wo MD einen Superblock erwartet; es gibt keinen Backup-Superblock oder eine Möglichkeit, ihn zu verschieben. Wenn also dieser bestimmte Speicherplatz beschädigt ist, ist das Gerät für MD RAID absolut unbrauchbar. (Es gibt vier Superblock-Versionsformate, die ihn in verschiedenen Bereichen der Festplatte platzieren, aber Sie haben Ihr Array bereits erstellt und können die Version nicht spontan ändern.)

Ersetzen Sie das physische Laufwerk. Seine Verwendung ist gefährlich.

Ich empfehle Ihnen außerdem, die SMART-Daten zu lesen, um dies besser zu verstehen. Aber die Fehlermeldung spricht für sich selbst. Sie reicht aus, um zu sagen, dass das Laufwerk ausfällt.

verwandte Informationen