RAID5陣列數據恢復循環方向的判斷
RAID5在實際應用中非常廣泛,也是數據恢復中接觸最多的陣列類型。又因為其校驗塊走向、數據塊排布方式不同而形成幾種不同的組合,即左循環異步、左循環同步、右循環異步、右循環同步。在恢復過程中,我們不但需要搞清楚陣列的塊大小、磁盤順序,還要搞清楚它的循環與異同步,才能夠正確地重組陣列,恢復數據。
我們已經了解,陣列的校驗塊走向分為左循環與右循環。那么,在實際恢復中,應該如何判斷一個陣列的校驗塊走向呢?也就是說,我們根據什么可以說某個陣列是左循環,或者說某個陣列是右循環呢?下面以常見的MBR磁盤為例來進行說明。
我們都知道,MBR磁盤的第一個扇區一定是MBR,通過RAID技術虛擬出的MBR磁盤也是如此。但是,落實到真實的陣列成員盤,這個MBR扇區卻并不一定就位于陣列的0號盤,還有可能位于1號盤上。為了便于敘述,我們假設陣列起始于每個成員盤的0號扇區。
左循環的情況下,0號盤第一個扇區為MBR,0號盤的第一個校驗塊位于2號塊。在右循環的情況下,1號盤第一個扇區為MBR,1號塊為校驗。我們可以根據這個特點初步判斷左循環與右循環。即假設陣列由N個成員盤組成,當確定某個磁盤的0號塊為陣列中的第一個數據塊時,如果該磁盤的1號塊為校驗塊,則陣列為右循環;如果該磁盤的第一個校驗塊位于它的N-1號塊,則為左循環。
如果確定陣列沒有被破壞,塊大小等參數也沒有分析錯誤,但無論如何也無法獲得正確的數據,則應該考慮遇到了比較罕見的情況。
有的時候右循環的陣列會被常規思維導致錯誤判斷,導致數據前后位置錯亂,無法得到正確的數據。這種陣列并不多見,在實際數據恢復過程中可以按照常規方法進行分析判斷,如果常規分析無法得到正確數據時,可以考慮是否遇到這種陣列布局。