一、確認實體故障硬碟及系統硬碟ID:
熱抽換硬碟有燈號顯示,更換故障硬碟清楚明瞭。
非熱抽換硬碟無燈號顯示,若是Raid 1可以輪流拔線開機,即可知道那顆硬碟故障。
Raid 5則拔錯硬碟的機率非常高(2/3以上),資料很可能就此遺失。建議先將虛擬機完整備份後再更換硬碟。強烈建議熱抽伺服器才使用Raid 5。
更換硬碟前,先確認目前那一顆硬碟正常運作。
cd /dev/disk/by-id
ls -al
原本兩顆硬碟目前只剩一顆硬碟 sda,現在可以更換硬碟了。
二、查看目前Raid狀態:
更換好硬碟後,系統會顯示多了一顆硬碟 sdb,且目前磁區沒有分割。
檢查Raid狀態:
zpool status -v
rpool儲存池的狀態顯示是DEGRADED(降級)
損壞的硬碟是sdb,狀態是UNAVAIL(無效)
三、更換硬碟指令:
粗字依不同狀況會有所異動。
]複製Partition
newDisk='
/dev/sdb'
healthyDisk=
'/dev/sda'
sgdisk -R "$newDisk" "$healthyDisk"
sgdisk -G "$newDisk"
複製開機內容:
newDiskBootPartition='
/dev/sdb1'
healthyDiskBootPartition=
'/dev/sda1'
dd if="$healthyDiskBootPartition" of="$newDiskBootPartition" bs=512
新硬碟更換損壞的硬碟:
newDiskZFSPartition='
/dev/sdb2'
failedDiskPartitionID='
9473352448497033944'
zpool replace rpool "$failedDiskPartitionID" "$newDiskZFSPartition"
或
zpool replace -f rpool "$failedDiskPartitionID" "$newDiskZFSPartition"
四、更換後狀態:
新硬碟磁區已經有分割了:
Raid 1重建中:Raid重建要53個小時又30分鐘,此時虛擬機可以開啟運作,不影響重建。
Raid 重建完成:實際只使用10個小時又36分鐘。