RAID5中循环方向的判断思路
本文摘于《数据重现--文件系统原理精解与数据恢复最佳实践》
我们已经了解,阵列的校验块走向分为左循环与右循环。那么,在实际恢复中,应该如何判断一个阵列的校验块走向呢?也就是说,我们根据什么可以说某个阵列是左循环,或者说某个阵列是右循环呢?我们以常见的MBR磁盘为例来进行说明。
我们都知道, MBR磁盘的第一个扇区一定是MBR,通过RAID技术虚拟出的MBR磁盘也是如此。但是,落实到真实的阵列成员盘,这个MBR扇区却并不一定就位于阵列的0号盘,还有可能位于1号盘上。如图11.25所示,图11.25(A)为左循环,图11.25(B)为右循环。为了便于叙述,我们假设阵列起始于每个成员盘的0号扇区。
可以看到,左循环的情况下,0号盘第一个扇区为MBR,0号盘的第一个校验块位于2号块。右循环的情况下,1号盘第一个扇区为MBR,1号块为校验。我们可以根据这个特点初步判断左循环与右循环。即:假设阵列由N个成员盘组成,当确定某个磁盘的0号块为阵列中的第一个数据块时,如果该磁盘的1号块为校验块,则阵列为右循环;如果该磁盘的第一个校验块位于它的N-1号块,则为左循环。
提示:如果确定阵列没有被破坏,块大小等参数也没有分析错误的情况下,无论如何无法获得正确数据,则应该考虑遇到了比较罕见的情况,如图11.26所示。
这种阵列是右循环阵列,按照我们常规的分析很容易将盘序错误地判断为2 -0 -1,这样就会导致数据前后位置错乱,无法得到正确的数据。这种阵列并不多见,在实际恢复过程中可以按照常规方法进行分析判断,如果常规分析无法得到正确数据时,可以考虑是否遇到这种阵列布局。
转载于:https://blog.51cto.com/sjhfml/132667