雙盤故障後Software Raid 10損壞的超級塊,如何恢復?
我有一個帶有 6 x 2tb 硬碟的軟體 raid 10(raid 1 用於 /boot),作業系統是 ubuntu 10.04。
我有一個raid控制器故障,導致2個驅動器不同步,系統崩潰,最初作業系統沒有啟動並進入initramfs,說驅動器很忙,但我最終設法通過停止和組裝驅動器來啟動raid .
作業系統啟動並說存在文件系統錯誤,我選擇忽略,因為如果出現問題,它將以只讀模式重新掛載 fs。
一切似乎都執行良好,2 個驅動器開始重建,我確信這是 sata 控制器故障,因為我的日誌文件中有 dma 錯誤。
此後不久,作業系統因 ext 錯誤而崩潰。
現在它沒有啟動突襲,它說 /dev/sda2 上沒有超級塊,即使我使用所有設備名稱手動組裝。
除了其他所有東西,我還做了一個 memtest 並更換了主機板。
編輯:這是我的分區佈局
Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes 255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0x0009c34a Device Boot Start End Blocks Id System /dev/sdb1 * 2048 511999 254976 83 Linux /dev/sdb2 512000 3904980991 1952234496 83 Linux /dev/sdb3 3904980992 3907028991 1024000 82 Linux swap / Solaris
所有 6 個磁碟具有相同的佈局,分區 #1 用於 raid 1 /boot,分區 #2 用於 raid 10 far plan,分區 #3 是交換,但 sda 沒有啟用交換
EDIT2:這是 mdadm –detail /dev/md1 的輸出
Layout : near=1, far=2 Chunk Size : 64k UUID : a0feff55:2018f8ff:e368bf24:bd0fce41 Events : 0.3112126 Number Major Minor RaidDevice State 0 8 34 0 spare rebuilding /dev/sdc2 1 0 0 1 removed 2 8 18 2 active sync /dev/sdb2 3 8 50 3 active sync /dev/sdd2 4 0 0 4 removed 5 8 82 5 active sync /dev/sdf2 6 8 66 - spare /dev/sde2
EDIT3:我執行了 ddrescue,它從 sda 複製了所有內容,除了一個 4096 字節的扇區,我懷疑它是 raid 超級塊
EDIT4:這裡有一些資訊太長,不適合這裡
lshw: http ://pastebin.com/2eKrh7nF
mdadm –detail / dev / sd
$$ abcdef $$1 (raid1): http://pastebin.com/cgMQWerS mdadm –detail / dev / sd
$$ abcdef $$2(raid10): http: //pastebin.com/V5dtcGPF /dev/sda2 的 dumpe2fs(來自 ddrescue 複製驅動器): http: //pastebin.com/sp0GYcJG
我嘗試使用命令根據此資訊重新創建 md1
mdadm --create /dev/md1 -v --assume-clean --level=10 --raid-devices=6 --chunk=64K --layout=f2 /dev/sda2 missing /dev/sdc2 /dev/sdd2 missing /dev/sdf2
但我無法安裝它,我也嘗試根據我最初的 mdadm –detail /dev/md1 重新創建它,但它仍然沒有安裝
它還警告我 /dev/sda2 是一個 ext2fs 文件系統,但我猜是因為 ddrescue
EDIT5:我發現 /dev/sdb 實際上是 /dev/sdc ,反之亦然,我也犯了一個重大錯誤,因為我使用的較新的 live cd 預設為 1.2 元數據,這可能已經破壞了這些磁碟上的數據,好事是我將它們複製到其他 6 個驅動器。
EDIT6:我終於設法通過重新創建它來恢復我的數組,這次使用正確的 –metadata 選項。如果有人處於我的情況並閱讀此內容,那麼鏡像您的數據非常重要,這樣您就可以像我一樣從錯誤中恢復,還請確保 mdadm –examine 所有驅動器,因為它們的名稱會在啟動 live cd 時更改並且以正確的順序重新創建很重要,任何標記為備用的驅動器都必須設置為失去。
作為專業數據恢復公司的所有者,重建損壞的 RAID 的正確方法是創建每個驅動器的複製或映像。切勿使用原件。獲得驅動器映像後,您需要在 X-Ways 等某種軟體中重新創建 RAID。請務必保持驅動器的正確順序!重建 RAID 陣列可能非常複雜,如果數據很重要,您應該標記驅動器並將它們發送給信譽良好的公司,但大多數 RAID 恢復並不便宜。