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陣列就像一把懸著的劍。

相關內容