本文摘于《数据重现--文件系统原理精解与数据恢复最佳实践》
我们已经了解,阵列的校验块走向分为左循环与右循环。那么,在实际恢复中,应该如何判断一个阵列的校验块走向呢?也就是说,我们根据什么可以说某个阵列是左循环,或者说某个阵列是右循环呢?我们以常见的 MBR 磁盘为例来进行说明。
我们都知道, MBR 磁盘的第一个扇区一定是 MBR ,通过 RAID 技术虚拟出的 MBR 磁盘也是如此。但是,落实到真实的阵列成员盘,这个 MBR 扇区却并不一定就位于阵列的 0 号盘,还有可能位于 1 号盘上。如图 11.25 所示,图 11.25 A )为左循环,图 11.25 B )为右循环。为了便于叙述,我们假设阵列起始于每个成员盘的 0 号扇区。
 
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 
可以看到,左循环的情况下, 0 号盘第一个扇区为 MBR 0 号盘的第一个校验块位于 2 号块。右循环的情况下, 1 号盘第一个扇区为 MBR 1 号块为校验。我们可以根据这个特点初步判断左循环与右循环。即:假设阵列由 N 个成员盘组成,当确定某个磁盘的 0 号块为阵列中的第一个数据块时,如果该磁盘的 1 号块为校验块,则阵列为右循环;如果该磁盘的第一个校验块位于它的 N-1 号块,则为左循环。
提示:如果确定阵列没有被破坏,块大小等参数也没有分析错误的情况下,无论如何无法获得正确数据,则应该考虑遇到了比较罕见的情况,如图11.26所示。

 

这种阵列是右循环阵列,按照我们常规的分析很容易将盘序错误地判断为 2 0 1 ,这样就会导致数据前后位置错乱,无法得到正确的数据。这种阵列并不多见,在实际恢复过程中可以按照常规方法进行分析判断,如果常规分析无法得到正确数据时,可以考虑是否遇到这种阵列布局。