raid5硬盘掉线但热备盘没激活怎么办

1、服务器数据恢复故障描述

某公司的一台服务器数据恢复需求。该公司有一台emc的服务器,搭建了raid5磁盘阵列进行数据存储,有两块热备盘,由于服务器上有两块硬盘出现故障,可是热备盘中只有一块被成功激活,致使了raid阵列瘫痪,服务器的上层应用不可用。须要进行服务器数据恢复。服务器

2、服务器数据恢复检测

首先对客户的两块掉线的硬盘进行物理检测,若是发现物理故障,须要对物理硬盘进行修复,而后才能继续下一步数据恢复操做,在本次服务器数据恢复案例中,硬盘不存在物理故障及坏道。ide

3、备份服务器全部硬盘

在服务器数据恢复开始前须要将客户的全部硬盘进行镜像备份。因为客户的服务器硬盘不存在物理故障,所以直接备份便可。使用winhex将全部磁盘都镜像成文件,因为源磁盘的扇区大小为520字节,所以还须要使用特殊工具将全部备份的数据再作520 to 512字节的转换。工具

4、故障分析及恢复过程

先对服务器底层raid组进行数据分析,以便经过基础raid信息重组阵列,恢复服务器数据。通过对raid阵列的分析发现,客户原服务器内的两块热备盘内均为空,没有写入任何数据(所以推断有一块热备盘虽然上线,但此时raid组仍然处于缺盘状态,数据并无开始同步。)随后工程师依次分析到了整个raid5阵列上的条带大小,磁盘顺序等基础信息,开始进行raid重组。
根据上述分析的RAID信息,尝试经过北亚自主开发的RAID虚拟程序将原始的RAID组虚拟出来。但因为整个RAID组中一共掉线两块盘,所以须要分析这两块硬盘掉线的顺序。仔细分析每一块硬盘中的数据,发现有一块硬盘在同一个条带上的数据和其余硬盘明显不同,所以初步判断此硬盘多是最早掉线的,经过北亚自主开发的RAID校验程序对这个条带作校验,发现除掉刚才分析的那块硬盘得出的数据是最好的,所以能够明确最早掉线的硬盘了。
因为LUN是基于RAID组的,所以须要根据上述分析的信息将RAID组重组出来。而后分析LUN在RAID组中的分配信息,以及LUN分配的数据块MAP。因为底层只有一个LUN,所以只须要分析一份LUN信息就OK了。而后根据这些信息使用北亚raid恢复程序,解释LUN的数据MAP并导出LUN的全部数据。debug

5、解释ZFS文件系统并修复

利用ZFS文件系统解释程序对生成的LUN作文件系统解释,发现程序在解释某些文件系统元文件的时候报错。迅速安排开发工程师对程序作debug调试,分析程序报错缘由。接着安排文件系统工程师分析ZFS文件系统是否由于版本缘由,致使程序不支持。通过长达7小时的分析与调试,发现ZFS文件系统因存储忽然瘫痪致使其中某些元文件损坏,从而致使解释ZFS文件系统的程序没法正常解释。
上述分析明确了ZFS文件系统因存储瘫痪致使部分文件系统元文件损坏,所以须要对这些损坏的文件系统元文件作修复,才能正常解析ZFS文件系统。分析损坏的元文件发现,因当初ZFS文件正在进行IO操做的同时存储瘫痪,致使部分文件系统元文件没有更新以及损坏。人工对这些损坏的元文件进行手工修复,保证ZFS文件系统可以正常解析。调试

6、服务器数据恢复成功

对修复后的文件系统进行解析并验证最新数据。通过客户服务器管理员的验证,确认服务器内全部数据被成功恢复,本次数据恢复100%成功。开发