
以下是我如何到達這裡的簡要歷史:
- 4x 磁碟 Ubuntu 12.04 軟體 RAID10,附 5x 分割區 (md0 - md4)
- 1x 磁碟損壞
mdadm --fail
>>mdadm --remove
物理移除驅動器並更換mdadm --add
> 所有分割區的磁碟重新同步完美- 決定更換所有磁碟,使它們完全相同
- 對剩餘 3 個磁碟重複步驟 3-4。第二個和第三個磁碟完美運作。
- 更換最後一個磁碟後,我將其添加回陣列,但被通知檔案系統處於唯讀模式。
cat /proc/mdstat
據透露,有些分區已經脫落,但非常不一致。- 我重新啟動了機器(可能不是最聰明的主意)
- 機器無法啟動(我假設新磁碟上沒有 MBR)。
- 更換了我取出的最後一個驅動器。機器啟動有
intitramfs
提示但鍵盤無反應。 - 刪除最後一個驅動器,這樣現在只剩下 3 個完好的磁碟。
- 從 Ubuntu Live USB 啟動。
- Ubuntu 磁碟公用程式列出了 4x RAID 設備,表示它們處於非活動狀態且部分組裝。
ubuntu@ubuntu:~$ cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md3 : inactive sdd8[6](S) sdc8[5](S) sdb8[4](S) 1464837120 blocks super 1.2 md4 : inactive sdd9[6](S) sdc9[5](S) sdb9[4](S) 718365696 blocks super 1.2 md1 : inactive sdd6[6](S) sdc6[5](S) sdb6[4](S) 146479104 blocks super 1.2 md2 : inactive sdd7[6](S) sdc7[5](S) sdb7[4](S) 585931776 blocks super 1.2 md0 : inactive sdd5[6](S) sdc5[5](S) sdb5[4](S) 14641152 blocks super 1.2 unused devices: <none>
ubuntu@ubuntu:~$ sudo mdadm --assemble --verbose /dev/md0 -f /dev/sdb5 /dev/sdc5 /dev/sdd5
mdadm:正在尋找 /dev/md0 的裝置 mdadm:無法開啟裝置 /dev/sdb5:裝置或資源繁忙 mdadm:/dev/sdb5 沒有超級區塊 - 元件已中止
所以現在我有點卡住了!更換第 4 個磁碟時,其中的 3 個磁碟都是一致的。 SMART 檢查結果正常(沒有壞扇區等)。
我只需要一種方法來恢復具有 3 個磁碟的陣列,以便我可以重新添加第 4 個磁碟。有什麼想法嗎?
非常感謝!
答案1
檢查每個 RAID 成員磁碟機分割區上的 mdadm --examine 的輸出。它將向您顯示狀態資訊並希望顯示問題可能出在哪裡。
也要檢查磁碟機的 SMART 狀態,看看它們是否正常。
答案2
我透過 Ubuntu Live USB 解決了這個問題(必須安裝 mdadm):
mdadm --stop /dev/md[01234]
mdadm --assemble /dev/md0 --verbose /dev/sd[abc]5
(注意我只使用了 3 個良好的驅動器)。- 對每個重複
/dev/mdx
- 如果我收到“設備或資源繁忙”錯誤,我會再次
--stop
出現/dev/mdx
並重複--assemble
.不知道為什麼會這樣,但確實如此。 mdadm --manage /dev/mdx --add /dev/sddx
對於每個/dev/mdx
和各自的/dev/sddx
分區- 所有磁碟都在其陣列中同步,mdadm 很高興。
- 請按照此處的說明進行操作https://help.ubuntu.com/community/Grub2/Installing(掛載作業系統檔案系統 > chroot > 在每個磁碟機上安裝 grub > 更新 grub > 重新啟動)
- ???
- 利潤。機器啟動,檢測到作業系統分割區上的檔案系統錯誤,但修復了它們(磁碟可能在稍微不同的時間遺失)。修復並重新啟動後,一切都恢復並運行,沒有資料遺失。