mdadm 在啟動時建構舊陣列

mdadm 在啟動時建構舊陣列

我有使用 Windows 動態磁碟建置的 RAID0。我讀到這是一個遺留數組,可以使用 mdadm 中的構建進行組裝。我已經使用以下命令建置和安裝了陣列:

sudo mdadm --build /dev/md0 --chunk=64 --level=0 --raid-devices=2 /dev/sdc1 /dev/sdb1
sudo mount -t ntfs-3g /dev/md0 /media/raid

這太棒了!

現在我正在努力讓這個陣列在啟動時安裝。我已將以下條目新增至 fstab :

 /dev/md0 /media/raid ntfs-3g defaults,locale=en_US.utf8 0 0

這就是我的問題出現的地方。不過,在安裝 md0 之前,需要先組裝。我讀過的所有內容都說要執行以下命令:

sudo mdadm --detail --scan

並將輸出放入 mdadm.conf 中。然而輸出是:

ARRAY /dev/md0 metadata=

由於該數組是遺留的,因此它沒有 uuid 或任何元數據,並且 mdadm 無法單獨ARRAY /dev/md0在 conf 檔案中建構它。

我應該在 mdadm.conf 中放入什麼內容,以便在啟動時以傳統模式組裝 raid?

答案1

mdadm.conf指定用於組裝的陣列一樣,它只能用於「普通」數組,而不能用於舊數組。線上幫助頁指出,對於舊數組(建置模式):

此用法類似--create。不同之處在於它創建一個沒有超級塊的數組。對於這些數組,最初創建數組和隨後組裝數組之間沒有區別,除了希望在第二種情況下有有用的資料。

所以這些數組沒有組裝。我想這是因為無法檢查數組是否已成功建置。mdadm在這種情況下,只製作新設備,而不關心那些原始設備上有哪些資料。

/etc/init.d適合您的解決方案是使用(或)中的腳本在啟動時建立陣列,/etc/rc.local該腳本將在掛載所有 fstab 檔案系統之前呼叫。

您可以在 中嘗試這一行mdadm.conf,但我認為它不會起作用:ARRAY /dev/md0 level=0 devices=/dev/sdc1,/dev/sdb1

相關內容