mdadm 完全重新同步 raid5 成员,但每次重启后都会丢失

mdadm 完全重新同步 raid5 成员,但每次重启后都会丢失

在安装 win10 时,我可能意外覆盖了某个raid5成员(3 个磁盘设置)。因此,我使用 ubuntu livecd 重新添加磁盘并重新同步(耗时 6 小时)。但在我重新启动后,磁盘再次从阵列中丢失,甚至无法被检测为 raid 成员gparted。因此,必须再次进行整个重新同步。已经发生过两次了。

我遗漏了哪个步骤?

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md1 : active raid5 sda[4] sdb[1] sde[3]
      3906764800 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [_UU]
      [===========>.........]  recovery = 55.6% (1086304028/1953382400) finish=147.5min speed=97935K/sec
      bitmap: 0/15 pages [0KB], 65536KB chunk

unused devices: <none>

mdadm 详细信息:

/dev/md1:
           Version : 1.2
     Creation Time : Sat Sep 21 14:09:01 2019
        Raid Level : raid5
        Array Size : 3906764800 (3725.78 GiB 4000.53 GB)
     Used Dev Size : 1953382400 (1862.89 GiB 2000.26 GB)
      Raid Devices : 3
     Total Devices : 3
       Persistence : Superblock is persistent

     Intent Bitmap : Internal

       Update Time : Sat Jul 31 13:07:35 2021
             State : clean, degraded, recovering
    Active Devices : 2
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : bitmap

    Rebuild Status : 55% complete

              Name : vikas-asus-raid:1  (local to host vikas-asus-raid)
              UUID : ffe5d84b:45323883:86650996:ad3cb535
            Events : 44221

    Number   Major   Minor   RaidDevice State
       4       8        0        0      spare rebuilding   /dev/sda
       1       8       16        1      active sync   /dev/sdb
       3       8       64        2      active sync   /dev/sde

sudo parted -l

Error: The primary GPT table is corrupt, but the backup appears OK, so that will
be used.
OK/Cancel? ok
Model: ATA WDC WD20EZRZ-00Z (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  2000GB  2000GB  fat32


Error: /dev/sdb: unrecognised disk label
Model: ATA WDC WD20EURX-63T (scsi)
Disk /dev/sdb: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: unknown
Disk Flags:

Model: ATA WDC WD20EZRX-00D (scsi)
Disk /dev/sdd: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags:

Number  Start  End  Size  Type  File system  Flags


Model: WDC WD32 00BPVT-55ZEST0 (scsi)
Disk /dev/sde: 320GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type      File system     Flags
 1      1048kB  53.3GB  53.3GB  extended                  boot
 5      1049kB  53.3GB  53.3GB  logical   ext4
 3      53.3GB  102GB   49.2GB  primary   ext4
 2      102GB   202GB   100GB   primary   ext4
 4      308GB   320GB   11.8GB  primary   linux-swap(v1)


Model: Linux Software RAID Array (md)
Disk /dev/md1: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: loop
Disk Flags:

Number  Start  End     Size    File system  Flags
 1      0.00B  4001GB  4001GB  ext4

答案1

我自己修复了这个问题。mdadm 在关机期间的行为与其他磁盘不同。mdadm 超级块从未自动写入磁盘。它是在 mdadm 停止时写入的。显然,关机系统应该这样做。但 mdadm 在关机时没有正常关闭,并且花了整整 1 分 30 秒的超时时间才被强制关闭。因此重新启动后没有再次找到磁盘。

后来我在同步过程中停止了 mdadm。这导致它将超级块刷新到磁盘。下次重新启动时,磁盘会自动找到,甚至恢复了不完整的同步。一旦刷新了超级块,即使在同步之后,所有系统也会恢复正常。

我仍然不知道我犯了什么错误,导致了这种行为。但很高兴这个问题解决了。降级的 raid5 阵列就像一把悬剑。

相关内容