MDADM RAID-1 „nicht groß genug, um Array beizutreten“ auf identischen Partitionstabellen

MDADM RAID-1 „nicht groß genug, um Array beizutreten“ auf identischen Partitionstabellen

Ich habe zwei Festplatten mit identischen Partitionstabellen ( sudo sfdisk -d /dev/sda | sudo sfdisk /dev/sdb), die mdadmsich nicht zu einem RAID-1-Array zusammenführen lassen.

$ sudo mdadm --manage /dev/md0 --add /dev/sdb1
mdadm: /dev/sdb1 not large enough to join array

Irgendwelche Ideen, was hier los ist?


Einzelheiten

$ sudo mdadm --detail /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Thu Mar 22 19:34:24 2018
        Raid Level : raid1
        Array Size : 976627712 (931.38 GiB 1000.07 GB)
     Used Dev Size : 976627712 (931.38 GiB 1000.07 GB)
      Raid Devices : 2
     Total Devices : 1
       Persistence : Superblock is persistent

     Intent Bitmap : Internal

       Update Time : Tue Aug 25 11:56:19 2020
             State : clean, degraded 
    Active Devices : 1
   Working Devices : 1
    Failed Devices : 0
     Spare Devices : 0

Consistency Policy : bitmap

              Name : hostname:0  (local to host hostname)
              UUID : xxxxxxxx:xxxxxxxx:xxxxxxxx:xxxxxxxx
            Events : 459187

    Number   Major   Minor   RaidDevice State
       -       0        0        0      removed
       1       8        1        1      active sync   /dev/sda1
$ sudo parted /dev/sda unit s print
Model: XXX (scsi)
Disk /dev/sda: 1953525168s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start  End          Size         Type     File system  Flags
 1      2048s  1948268543s  1948266496s  primary               raid

$ sudo parted /dev/sdb unit s print
Model: XXX (scsi)
Disk /dev/sdb: 1953519616s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start  End          Size         Type     File system  Flags
 1      2048s  1948268543s  1948266496s  primary               raid
$ sudo mdadm -E /dev/sda1
/dev/sda1:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x1
     Array UUID : xxxxxxxx:xxxxxxxx:xxxxxxxx:xxxxxxxx
           Name : hostname:0  (local to host hostname)
  Creation Time : Thu Mar 22 19:34:24 2018
     Raid Level : raid1
   Raid Devices : 2

 Avail Dev Size : 1948004352 (928.88 GiB 997.38 GB)
     Array Size : 976627712 (931.38 GiB 1000.07 GB)
  Used Dev Size : 1953255424 (931.38 GiB 1000.07 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262056 sectors, after=18446744073704300544 sectors
          State : clean
    Device UUID : xxxxxxxx:xxxxxxxx:xxxxxxxx:xxxxxxxx

Internal Bitmap : 8 sectors from superblock
    Update Time : Tue Aug 25 12:39:03 2020
  Bad Block Log : 512 entries available at offset 72 sectors
       Checksum : f47ecd0c - correct
         Events : 459193


   Device Role : Active device 1
   Array State : .A ('A' == active, '.' == missing, 'R' == replacing)

$ sudo mdadm -E /dev/sdb1
/dev/sdb1:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x1
     Array UUID : xxxxxxxx:xxxxxxxx:xxxxxxxx:xxxxxxxx
           Name : hostname:0  (local to host hostname)
  Creation Time : Thu Mar 22 19:34:24 2018
     Raid Level : raid1
   Raid Devices : 2

 Avail Dev Size : 1948004352 (928.88 GiB 997.38 GB)
     Array Size : 976627712 (931.38 GiB 1000.07 GB)
  Used Dev Size : 1953255424 (931.38 GiB 1000.07 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262056 sectors, after=18446744073704300544 sectors
          State : clean
    Device UUID : xxxxxxxx:xxxxxxxx:xxxxxxxx:xxxxxxxx

Internal Bitmap : 8 sectors from superblock
    Update Time : Tue Aug 25 10:03:24 2020
  Bad Block Log : 512 entries available at offset 72 sectors
       Checksum : 4e58ad84 - correct
         Events : 81346


   Device Role : Active device 0
   Array State : A. ('A' == active, '.' == missing, 'R' == replacing)

Antwort1

Wahrscheinlich haben Sie das Array ursprünglich mit den gesamten Festplatten ohne Partitionen erstellt. Später haben Sie dann wahrscheinlich eine Partitionstabelle hinzugefügt, was die Sache durcheinander bringt. MADM erwartet eine ganze Festplatte.

Sie sollten das Metadatenformat berücksichtigen, das möglicherweise nicht angibt, ob die RAID-Metadaten für die gesamte Festplatte oder nur für eine Partition gelten sollen. Sie könnten das Array mit dem neueren Metadatenformat neu erstellen.

Sie könnten ein neues RAID-Array erstellen, bei dem das zweite Laufwerk das einzige aktive Volume ist und die gesamte Partition abzüglich einiger MB als Sicherheitsreserve umfasst, falls dieses Problem erneut auftritt. Kopieren Sie dann alle Daten vom alten Array auf das neue.

Löschen Sie abschließend das ursprüngliche Array und fügen Sie dann die alte Festplatte zum neuen Array hinzu.

Antwort2

Ich hatte auch dieses Problem. Der Grund war, dass ich einige Partitionen auf der Festplatte neu angeordnet hatte, ABER die (zu kleine) Größe der Partition entsprach der bereits gelöschten. Ich musste das erneute Lesen der aktuellen Festplattenpartitionstabelle mit der vergrößerten Partition auslösen.

$ sudo partprobe /dev/sdb # to re-read current partition table of the device

verwandte Informationen