了解 /proc/mdstat [U_] VS

了解 /proc/mdstat [U_] VS

我的伺服器設定為 raid1。幾天前的晚上,sda 完全崩潰,資料被損壞。我更換了驅動器,克隆了分區表並添加了相應的陣列。當新增 sda3 (MD2) 時,由於 sdb 有 I/O 錯誤,重新同步一直失敗。我將所有可以儲存的檔案從 sdb3 複製到 sda3,重新配置 raid 並用新磁碟機取代 sdb。我現在將 sdb 分割區新增到陣列中。我的擔憂如下:

cat /proc/mdstat 
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md3 : active raid1 sda4[0]
      1822442815 blocks super 1.2 [2/1] [U_]

md2 : active raid1 sda3[1]
      1073740664 blocks super 1.2 [2/1] [_U]

md1 : active raid1 sdb2[2] sda2[0]
      524276 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sdb1[2] sda1[3]
      33553336 blocks super 1.2 [2/2] [UU]

同步前md0和md1都顯示為[U_],為什麼md2會顯示為[_U]?我擔心添加 sdb3 時會丟失資料。我的想法是,第一個插槽 ([U_]) 被 mdadm 視為主要插槽,第二個插槽 ([_U]) 被視為次要插槽,因此擔心資料被刪除以匹配 sdb3。

請指教。

謝謝。

答案1

我不會擔心。我懷疑這裡發生的事情是 md3 是使用類似命令創建的

mdadm --create /dev/md3 -l 1 -n 2 /dev/sda4 /dev/sdb4

另一個是

mdadm --create /dev/md2 -l 1 -n 2 /dev/sdb3 /dev/sda3

請注意,其他兩個陣列(md0 和 md1)也具有 sdb、sda 順序。

如果您想變得超級偏執,請繼續將檔案備份到外部驅動器,但我懷疑當您最終開始做時

mdadm /dev/md2 -a /dev/sdb3

隨著新分區 (/dev/sdb3) 與現有分區 (/dev/sda3) 同步,恢復將順利進行。在清單中的位置並不重要。 Linux 軟體 RAID 會記住有效分割區和最新(不完全同步)分割區。

相關內容