服务器存储数据恢复环境:
某品牌P2000存储,存储中有一组由8块硬盘(包含一块热备盘)组建的raid5阵列。上层部署VMWARE ESX虚拟化平台。
服务器存储故障:
存储在运行过程中有两块硬盘指示灯亮黄色。经过运维人员的初步检测,判断指示灯亮黄色的硬盘出现物理故障,硬盘故障表现为:序列号无法读取,在SAS扩展卡上无法识别。
服务器存储数据恢复过程:
1、将故障存储中所有磁盘编号后取出。将指示灯亮黄色的2块硬盘连接到外部SAS扩展卡上加电检测,发现其中有一块盘磁头不寻道。硬件工程师将磁头不寻道的硬盘的PCB分离、检查硬盘HDA组件发现有部分氧化,进行清洁后再次加电,磁头依然无法寻道。于是,硬件工程师在无尘工作间开始对故障硬盘进行开盘修复。
热备盘是正常的,可以作为备件盘使用。硬件工程师将热备盘开盘拆取PCB安装到故障盘上,再将故障盘PCB上的ROM芯片拆取替换到新换的PCB上。再次对故障硬盘进行检测,这时故障硬盘可以正常起转,磁头寻道声音正常,但是敲盘声音明显。由于热备盘的磁头与故障盘不匹配,只能另找磁头进行更换,更换磁头后硬盘可以正常识别,将故障盘中数据做完整镜像。将其他完好磁盘以只读方式做扇区级全盘镜像,镜像完成后将所有磁盘按照编号还原到原存储中。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析所有磁盘底层数据,发现所有硬盘的的0扇区都有“55 AA”标志,0x01C2H处表示该分区的类型,“05”表示这是一个扩展分区。因此从0扇区看这是一个不正常的MBR分区结构。
按照这一方法继续查找,分别在另外2块盘找到“55 AA”的标志,其中一块盘查询结果如下图。这是一个正常的MBR分区,其0x01C6处数值表示指向的下一个扇区为GPT的头部。
另外一块盘查询结果如下图。其0x01C6处数值表示指向下一个扇区,下一个扇区明显不是GPT的头部。
由此可以确定0x01C6处数值表示指向的下一个扇区为GPT的头部的那一块盘是第一块盘,另外一块盘可能是最后一块盘。GPT分区所在扇区起始于172032扇区,因此初步判断LUN的起始扇区是172032扇区。
北亚企安数据恢复工程师对该raid阵列进行分析得出条带大小为1024个扇区。按照1024扇区分割,使一个记录为一个条带的大小,7块盘跳到同一记录。
当7块盘都定位到同一位置时,通过对比可以判断校验区的走向,确定该RAID5为左走向。
数据恢复工程师初步确定了LUN的起始扇区是172032扇区。使用工具跳到172032扇区对硬盘的使用情况进行观察,正常情况下这个扇区所属条带中的5号盘应该是校验区,但实际情况中却显示校验区为8号盘,根据该raid左走向的规律,5号盘的校验区应该在172032-1024=171008扇区,即上一个条带。跳转到171008扇区,发现校验区为5号盘。因此可以确定LUN的起始扇区为171008扇区。
使用工具按照确定的盘序重组raid,选择RAID5,Stripe size 512KB,左异步。
点击Build进行重组。组好后,由于数据从1024*8=8192个扇区开始,若工具没有跳转到此扇区的功能,那么刚组好的RAID必须和一个文件再进行一次重组操作。
重组后的raid5磁盘阵列:
3、RAID5磁盘阵列重组完成后,经用户方仔细验证,确认恢复的数据完整有效,本次数据恢复工作完成。