下面將介紹伺服器磁碟陣列中RAID 1、RAID 0和RAID 5三種RAID形式發生故障時的資料恢復思路和方法。
RAID 1 是最簡單的 RAID 陣列形式,其中兩個硬碟相互映象,所有資料完全相同。 如果由於 RAID 控制器故障或 RAID 資訊錯誤而無法訪問 RAID 1 磁碟陣列資料,則只需從伺服器中取出兩個硬碟中的乙個,並將其作為單獨的硬碟連線到計算機即可讀取資料。
如果 RAID 1 中的某個磁碟發生故障,不會影響伺服器的正常執行,您需要將故障磁碟更換為普通磁碟。 如果乙個硬碟發生故障,而另乙個硬碟也發生故障,則 RAID 1 磁碟陣列將發生故障。 在這種情況下,如果要恢復資料,則需要使用資料恢復後失敗的硬碟。
RAID0是所有磁碟陣列中最脆弱的磁碟陣列形式,RAID0磁碟陣列沒有任何冗餘效能,只要陣列中的乙個硬碟發生故障,伺服器資料就會丟失,因此它是一種非常危險的陣列形式。 從下圖可以看出,raid0 的資料被分發到每個磁碟上,如果伺服器中的任何乙個硬碟出現故障,伺服器的資料就會不完整。
RAID 0 磁碟陣列的資料恢復需要資料恢復工程師重新組合陣列中的所有資料,並且由於 RAID 0 陣列不再可用,因此只能將硬碟作為單個硬碟從 RAID 控制器中取出,以進行分析和資料恢復。
如上圖所示,對於單個硬碟1,其中的資料為a e i m,硬碟2中的資料為b f j n,全部只是部分資料,只有陣列中的所有硬碟資料被劃分為a b c d e f g h···只有拼接這個序列,才能真正恢復RAID0陣列中的資料。
那麼如何按順序拼接 raid0 陣列中的所有硬碟資料,這裡需要注意兩個因素,乙個是 raid0 磁碟陣列中每個資料塊的大小,即 A 或 B 的資料塊所佔據的扇區數; 另乙個因素是 RAID 0 陣列中驅動器的排列順序,這意味著您需要確定哪個驅動器是陣列中的第乙個驅動器,哪個是第二個驅動器,哪個是第三個驅動器......
上圖中的raid0磁碟陣列就是乙個例子,我們假設資料塊的大小是16個扇區,以圖中硬碟的順序為例,那麼我們只需要提取硬碟1中0 15個扇區的資訊,然後提取硬碟2中0 15個扇區的資訊, 然後提取硬碟 3 中 0 15 個扇區的資訊,然後提取硬碟 4 中 0 15 個扇區的資訊,然後返回硬碟 1 提取 16 31 個扇區的資訊......依此類推,您可以提取此 raid0 陣列中的所有資料。
RAID5 陣列中的資料分布與 RAID0 陣列中的資料分布類似,只是 RAID5 中的每個並行資料塊中始終有乙個檢查塊,如下圖所示,P1 P2、P3、P4。 RAID 5 支援在硬碟斷開連線時正常訪問資料,但如果兩個或多個硬碟同時離線,陣列將出現故障,需要重新組織磁碟陣列。 RAID 5 的資料重組方法與 RAID 0 相同,硬碟中的資料只需要按順序拼接即可。
由於 RAID 5 陣列中的每個硬碟中都有檢查資訊,因此在分析 RAID 5 陣列時,需要分析比 RAID 0 陣列多乙個檢查塊的位置和方向。 換句話說,RAID 5 陣列分析中有三個因素,分別是磁碟的排列順序、每個資料塊占用的扇區數以及陣列中每個資料塊的大小。
原文位址: