EMC做为存储界的领军品牌,其存储产品可谓是人尽皆知啊!并且EMC自己的存储系统以及它自己的硬件在存储领域中都是领先的。但这还是不能百分之百保证用户数据的绝对安全,因为用户的误操作以及硬件的老化都会导致用户重要的数据丢失。而发生这些故障之后只能找专业的数据恢复公司做数据挽救工作。作者最近就处理过一起EMC CX4-480因磁盘故障导致存储不可用的案例,见下文。
一位上海的客户描述说他们有一台EMC CX4的存储服务器,因为硬盘出现故障,导致整个存储阵列瘫痪。整个LUN是由7块1TB的硬盘组成的RAID 5。由于客户是在上海,并且不方便将服务器邮寄过来,只好电话指导客户将存储服务器正常关机,并取出硬盘做好标记。然后将所有硬盘打包好,邮件到北京进行数据恢复。在接到客户邮寄过来的包裹后发现,客户寄过来的是10块1T的硬盘。当时很惊讶!不是说是7块盘么?怎么多了3块。在打电话仔细问过客户后得知,其中有3块是以前存储中掉线的硬盘。好吧!估计是以前存储中有硬盘掉线了,但客户只是添加了一块的新的硬盘做rebuild,并没有将掉线的硬盘拔掉,所以就多出了3块。因客户说是存储服务器中有些硬盘有故障才导致存储服务器不可用的,所以初步判断是RAID中有硬盘掉线了。将所有硬盘交给硬件工程师检测硬盘是否有硬件故障。在检测完成后发现并没有物理故障,那么可能就是硬盘上有逻辑坏道或其他原因导致RAID不可用了 。接着对所有硬盘做全盘镜像,以保证客户现有数据的安全。对所有盘做镜像可是真一个很漫长的时间啊!
做完镜像后开始分析RAID的结构,可是当我用winhex打开镜像盘的时候,我惊呆了!因为EMC的硬盘每512字节多加了一个8字节的校验,也就是变成了每扇区520字节了。这样虽然可以分析RAID的结构,但是重组RAID就现的费劲了!为了提高工作效率,我决定还是写个小程序将8字节的校验去掉吧!这样后期的工作也方便了许多。就这样码代码中......
经过漫长的写码加调试,终于OK了。那么开始一个磁盘一个磁盘的转换吧!哦买噶....这又是一个很耗时的工程。慢慢等吧!
等所有磁盘都转换完成后,就开始分析RAID的结构了。由于多了3块以前的旧盘,需要先找出这三块旧盘。这个比较好办,可以比较一下每块磁盘,其中会有两块磁盘前面的一部分相同,而这两块当中会有一个是旧的,旧的数据量应该没有新的多,就可以排除旧的磁盘了。这样的磁盘会有3对,也就可以排除所有旧的磁盘了。接下来看RAID结构,由于客户用的NTFS文件系统,用MFT很容易就可以找到RAID的结构了。知道RAID结构后发现这不是一个普通的RAID 5,而是一个双循环。用winhex还没法重组RAID。最后找了半天发现,UFS可以重组RAID。那么就先用它重组RAID看看是什么情况吧!重组RAID后发现数据不是最新的。我想可能是RAID 5先掉线一块硬盘,而管理员没有及时发现,没有及时添加新的硬盘做rebuild。导致运行一段时间后又有一块硬盘掉线了,才造成整个RAID不可用。所以还需要找出一块旧的磁盘,才能生成最新的数据。那就找呗!但是怎么找呢?只能尝试依次踢掉一块硬盘,然后重组RAID。看最新的数据是否可用。直到找到最新的数据可用为止,接着就可以导出数据,验证数据了。
整个恢复过程,包括做镜像,扇区转换和最后的拷贝数据,一共耗时5天。数据恢复率达百分之九十九以上。虽然整个过程比较漫长,但是最终的结果用户很高兴,因为这给他们带来了不必要的损失。
作者:邓奇 (北亚服务器数据恢复工程师)
邮箱:[email protected]
联系方式:010-4006505808-801
EMC CX4-480数据恢复案例