Linux
軟體 RAID 1 故障
我在 CentOS 6.9 上有一個軟體 RAID 1 設置,帶有兩個 HDD(SDA 和 SDB)。SDB 的智能自檢本週開始拋出錯誤:
Device: /dev/sdb [SAT], Self-Test Log error count increased from 0 to 1
因此,今天早上我使用 mdadm 將其設置為失敗狀態並刪除了 SDB 並插入了一個新的 HDD。我執行的命令是:
smartctl --all /dev/sdb cat /proc/mdstat mdadm --manage /dev/md1 --fail /dev/sdb1 mdadm --manage /dev/md1 --remove /dev/sdb1 mdadm --manage /dev/md5 --fail /dev/sdb5 mdadm --manage /dev/md5 --remove /dev/sdb5 mdadm --manage /dev/md3 --fail /dev/sdb3 mdadm --manage /dev/md3 --remove /dev/sdb3 mdadm --manage /dev/md2 --fail /dev/sdb2 mdadm --manage /dev/md2 --remove /dev/sdb2 cat /proc/mdstat shutdown -h now
top 命令允許我查看 HDD 序列號,以確保我提取了正確的驅動器。
在伺服器 BIOS 中放入新驅動器後,只需給我一個錯誤(沿線)安裝正確的引導設備並重新啟動機器。
我的假設是(不知何故)我錯誤地只有 SDB 上的 MBR(只是猜測)。因此,它不會在刪除 SDB 的情況下啟動。我嘗試將 SDB 放回機器中,它只是點擊(當然)並給了我安裝正確引導設備並重新啟動的相同錯誤。
任何人都可以就如何啟動這台機器提出任何建議,以便我可以恢復我的所有數據?SDA應該仍然是一個好的硬碟。此外,如果有辦法從 SDA 啟動,那麼我應該能夠安裝新的 SDB 並允許軟體 RAID 同步。
更新:
感謝 RalfFriedl,我讓伺服器從 LiveCD 啟動。
我用過:
sfdisk -d /dev/sda | sfdisk --force /dev/sdb
像 SDA 一樣對新的 SDB 進行分區。
謝謝!
確保兩個驅動器都可以在它們仍然工作時啟動是個好主意。不幸的是,許多安裝人員並沒有做到這一點。
由於您的其他磁槃無法啟動,因此您需要一張 live 或救援 CD。如果你有適當的基礎設施,你也可以從網路啟動。救援系統執行後,在新驅動器上創建與舊驅動器匹配的分區表,並將分區添加到 RAID。如果您有時間,請等待陣列同步。否則從您的引導分區開始。
dev
現在在,proc
and , chroot上執行綁定掛載sys
到您的根分區並重新安裝引導載入程序。這就是我在這種情況下使用的
mount /dev/md/root /mnt for i in /dev /proc /sys; do mount --bind $i /mnt$i; done chroot /mnt