重組 RAID-5 後文件失去
週日我不得不打開文件伺服器的外殼來更換有故障的風扇。我沒有看到的是其中一根 sata 電纜沒有正確連接。重啟後我做的第一件事是檢查 RAID 狀態,它立即顯示缺少一個驅動器。到目前為止,該設備尚未使用(但是它已安裝,所以我不能 100% 確定係統什麼也沒做)。我停止 md0 並重新插入電纜:
mdadm --stop /dev/md0 poweroff
再次重新啟動後,我檢查了刪除的驅動器:
mdadm --examine /dev/sdd1 ... Checksum : 3276bc1d - correct Events : 315782 Layout : left-symmetric Chunk Size : 32K Number Major Minor RaidDevice State this 0 8 49 0 active sync /dev/sdd1 0 0 8 49 0 active sync /dev/sdd1 1 1 8 65 1 active sync /dev/sde1 2 2 8 33 2 active sync /dev/sdc1 3 3 8 17 3 active sync /dev/sdb1
我有點驚訝它被顯示為活動的(即使之前 mdadm 說過,這個設備已從陣列中刪除)並且它的校驗和是好的。我重新創建了 RAID:
mdadm --assemble /dev/md0 --scan
該命令
mdadm --detail /dev/md0
顯示所有驅動器都在執行並且系統處於“乾淨”狀態。我安裝了設備 md0,然後就打嗝了。我想處理在所有情況之前我一直在使用的最後一個文件之一,但它不存在。在另一個地方,我實際上錯過了我工作目錄中的所有文件。據我所知,大多數超過幾天的文件都完好無損,但一些較新的文件失去了。現在有個大問題:你有什麼建議?有沒有辦法獲取這些數據?我考慮移除之前由 mdadm 標記的驅動器並使用另一個空 HDD 重建陣列。
我發現重新組裝後,“損壞的”驅動器位於 RAID 中的另一個位置(在它被列在第 3 位之前,然後在第 4 位)。這會對重建過程產生影響嗎?如果是,如何正確重組陣列?我確定 SATA 電纜仍以相同的順序連接到控制器。
ps 請不要建議像“從備份中恢復”。我在周日晚上做備份,這發生在下午晚些時候,所以備份對我來說不是真正的選擇。
pss 我在 Unix&Linux 上問過這個問題,但最近兩天沒有答案。我越來越焦慮了。如果你們中的任何人正在閱讀其他論壇,抱歉重複。
也許它會幫助某人。
我之前沒有寫過,但所有四個分區的事件數相同
mdadm --examine /dev/sd[a-z]1 | egrep 'Event|/dev/sd`' mdadm: No md superblock detected on /dev/sda1. Events : 315786 Events : 315786 Events : 315784 Events : 315786
儘管如此,經過一番閱讀,我還是決定刪除“失敗”的驅動器並重新組裝我的 md0 設備。
mdadm --manage --set-faulty /dev/md0 /dev/sdd1 mdadm /dev/md1 --stop mdadm --assemble /dev/md0 /dev/sd[bce]1 --force mdadm --manage /dev/md0 --add /dev/sdd1
請不要問我為什麼它有效。對我來說重要的部分是我找回了所有文件(文件分配表顯示了目錄的正確內容。所有失去的文件都在那裡。