mdadm –zero-superblock 在帶有其他分區的磁碟上
我有三個磁碟,用於保存 MD RAID5 陣列。我已經刪除(或者我認為)這個數組並為 btrfs 和交換空間創建了分區。重新啟動機器時,MD 仍然綁定用於保存舊陣列的設備,導致新文件系統無法掛載。
有人向我建議,可能會留下 RAID 陣列的舊超級塊,導致 MD 認為它是一個真正的陣列,從而綁定磁碟。建議的解決方案是使用 mdadm –zero-superblock 清除受影響磁碟上的超級塊。但是,我真的不知道這對磁碟有什麼作用。由於該磁碟包含分區,因此我真的不想盲目地將其部分歸零。
那麼我應該遵循什麼程序來安全地清除 MD 超級塊而不損壞驅動器上的其他分區和文件系統?
這個問題本質上問的是同樣的事情,但是對於在重新分區的設備上執行 mdadm –zero-superblock 是否實際上應該是安全的,並沒有明確的答案:mdadm superblock hidden /shadowing partition
https://raid.wiki.kernel.org/index.php/RAID_superblock_formats
超級塊的長度為 4K,並寫入一個 64K 對齊的塊中,該塊從設備末尾開始至少 64K 且小於 128K(即獲取超級塊的地址,將設備的大小四捨五入到 64K 的倍數和然後減去 64K)。每個設備的可用大小是超級塊之前的空間量,因此在將設備合併到 MD 陣列時會失去 64K 到 128K 之間的空間。
所以,已經太晚了,使用起來可能不安全
--zero-superblock
,因為我們不知道是否有任何數據 - 您必須將目前分區的大小/縮小到-128K
x-RAID 分區的末尾,然後擦除該部分並重新增長分區。其他選項 1:寫入大文件以填滿整個磁碟,它將覆蓋 RAID 超級塊,並且 mdadm 無法辨識。
其他選項 2:類似於 1:https ://unix.stackexchange.com/questions/44234/clear-unused-space-with-zeros-ext3-ext4