UFS文件系统超级块中记录了很多参数,包括备份超级块的地址、柱面组描述符的地址、i-节点表的地址等。在RAID结构分析中,我们可以利用超级块中所描述的重要结构地址在物理盘中的位置来判断条带大小的范围。

例如,一个Sparc Solaris系统的RAID-0由两块成员盘组成,RAID逻辑盘中使用UFS1文件系统,其中“硬盘0”的第一个扇区是磁盘标签,16号扇区为超级块。超级块中的参数如图19-3所示。

UFS文件系统超级块在RAID分析中的作用-数据恢复迷

图19-3 超级块中的参数

超级块中描述了文件系统“每段字节数”等于1024,即每段2个扇区;“备份超级块的相对偏移”是16,也就是说备份超级块相对于柱面组参考位置的偏移量为16段。当前超级块位于0号柱面组,所以计算出超级块的备份就应该在32号扇区。跳转到“硬盘0”的32号扇区,如果该扇区是超级块的备份,就说明RAID条带大小是大于32扇区的;如果“硬盘0”的32号扇区不是超级块的备份,则说明RAID条带大小小于或者等于32扇区。

超级块中还描述了“i-节点表的相对偏移”是32,也就是说i-节点表相对于柱面组参考位置的偏移量为32段。当前超级块位于0号柱面组,所以计算出i-节点表就应该在64号扇区。跳转到“硬盘0”的64号扇区,如果该扇区是i-节点表的开始,就说明RAID条带大小是大于64扇区的;如果“硬盘0”的64号扇区不是i-节点表的开始,则说明RAID条带大小小于或者等于64扇区。