RAID5数据恢复原理和阵列数据恢复案例
Raid5磁盘阵列介绍
“RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。 RAID 5可以理解为是RAID 0和RAID 1的折中方案。RAID 5可以为系统提供数据安全保障,但保障程度要比Mirror低而磁盘空间利用率要比Mirror高。RAID 5具有和RAID 0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID 1高,存储成本相对较低,是目前运用较多的一种解决方案。”
Raid5数据恢复原理
raid5数据恢复有一个“奇偶校验”的概念。也就是在raid数据恢复中经常提到的“异或运算”,通常使用的标识是xor。这个用运算的规则就是若二者值相同则结果为0,若二者结果不同则结果为1。例如 0101 xor 0010根据上述运算规则来计算的话二者第一位都是 0 ,两者相同,结果为 0 ;第二、三、四位的数值不同则结果均为1,所以最终结果为 0111,用公式表示为:0101 xor 0010 = 0111,所以在 a xor b=c 中如果缺少其中之一,我们可以通过其他数据进行推算,这就是raid5数据恢复的重点知识。
Raid5磁盘阵列数据恢复成功案例
某公司的raid5磁盘阵列由两块硬盘故障离线,检测后发现掉线的两块硬盘均有硬件故障。硬件数据恢复工程师对硬件进行修复后查看磁盘阵列的底层数据发现0扇区都出现了“55 AA”(0x01C2H处表示该分区的类型,这里显示“05”,代表这是一个扩展分区。所以该MBR分区结构状态不正常)。除了8号硬盘是一个正常的MBR分区,其0x01C6处数值代表指向的下一个扇区为GPT的头部。
7号硬盘0x01C6处数值代表指向下一个扇区。但是下一个扇区很明显不是GPT的头部。
因此数据恢复工程师初步推断该阵列中8号盘和7号盘分别为第一块和最后一块硬盘,GPT分区所在扇区起始于172032扇区,因此初步确定LUN的起始扇区是172032扇区。数据恢复工程师对该服务器raid阵列分析得出条带大小为1024个扇区。按照1024扇区分割,使一个记录为一个条带的大小,并且7块盘跳到同一记录283123。
当7块盘都定位到同一位置时,通过对比可以判断校验区的走向,继而判断整个RAID-5的走向。之前已经判断出8号盘是第一块盘了,把8号盘放在第一个位置,确定RAID-5为左走向,盘序为8,2,3,4,1,7,5。
工程师初步确定了LUN的起始扇区是172032扇区。使用数据恢复工具跳到172032扇区对硬盘的使用情况进行观察,正常情况下这个扇区所属条带中的5号盘应该是校验区,但实际情况中却显示校验区为8号盘,根据该raid左走向的规律,5号盘的校验区应该在172032-1024=171008扇区,即上一个条带。跳转到171008扇区,发现校验区为5号盘。因此可以确定LUN的起始扇区为171008扇区。
使用数据恢复工具按照确定的盘序重组raid添加进去,如图所示。选择RAID-5,Stripe size 512KB,左异步。
点击Build进行重组。组好后,由于数据从1024*8=8192个扇区开始,若专业恢复工具没有跳转到此扇区的功能,那么刚组好的RAID必须和一个文件再进行一次Build重组操作。RAID的起始扇区(Start sectors)选择8192,这个文件可以任意选择起始扇区和大小大小(Count sectors),本次raid5磁盘阵列数据恢复成功