码迷,mamicode.com
首页 > 其他好文 > 详细

我高估了磁盘阵列的安全性—StorNext两块硬盘离线数据恢复过程

时间:2018-10-31 15:45:08      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:扫描   c89   目录结构   proc   成员   blog   col   区域   ges   

一.故障描述

客户设备品牌为昆腾系列存储,共10个磁盘柜,每个磁盘柜满配24块硬盘。其9个存储柜用作数据存储使用,另外1个存储柜用作元数据存储使用。
元数据存储中共24块146G硬盘,其中设置了9组RAID 1阵列,1组4盘位RAID 10阵列,4个全局热备硬盘。
数据存储中,每6块硬盘设置一组RAID 5阵列,共36组RAID,这36组RAID阵列中,又分为2个存储系统。其中1个存储系统中,一组RAID由于2块硬盘先后故障离线,导致RAID阵列失效,整个存储系统崩溃,无法使用。
存储及文件系统架构大致如下图一:
技术分享图片
注:MetaLUN(元数据卷) DataLUN(用户数据卷)
# 二.磁盘备份
为防止数据恢复过程中由于误操作对原始磁盘造成二次破坏, 首先使用WinHex软件对客户的存储环境进行备份。
备份过程如下图二所示:
技术分享图片
对故障RAID中的6块成员盘进行编号标记,将硬盘从存储柜中拔出,接入到准备好的备份平台上,对6块硬盘进行全盘备份。
对其余没有出现故障的RAID阵列,进行存储层面的备份。使用光纤线缆将备份平台和存储设备连接,进入昆腾存储设备管理界面配置备份平台和存储设备可以正常通信,使用WinHex软件对RAID中的LUN进行镜像备份。
在备份过程中发现故障RAID中的1块故障硬盘存在大量的坏道区域,在备份的过程出现故障,无法继续备份。对故障硬盘进行开盘更换固件,并使用PC3000工具进行修复后,硬盘可以继续备份,但坏道仍然存在。
部分镜像文件如下图三:
技术分享图片

三.数据分析

首先对故障的RAID阵列进行分析,获取到相关的RAID信息,使用WinHex软件对RAID阵列进行虚拟重组,并将RAID中的LUN恢复成镜像文件。在分析过程中发现,损坏较严重的硬盘为后离线硬盘,由于此硬盘存在大量坏道,可能对最后的恢复结果产生一定的影响。
登陆昆腾存储设备的管理界面,获取到StorNext文件系统中卷相关的一些基本信息,
如下图四:
技术分享图片
继续对StorNext文件系统中的Meta卷和Data卷进行分析,客户的StorNext文件系统中,包含2个Data卷,每一个完整的Data卷都是由多组RAID中的LUN组成的,对这些LUN进行分析,得到LUN之间组合的算法规律,虚拟重组出完整的Data卷。
图五:
技术分享图片
分析Meta卷,对Meta卷中的节点信息和目录项信息,以及Meta卷和Data之间的对应关系进行分析,针对一个Meta卷管理多个Data卷的情况,研究得到Meta卷到Data卷的索引算法。
文件节点如下图六:
技术分享图片
目录块如下图七:
技术分享图片

四.数据恢复

通过分析研究我们已经获取到了恢复工作所需全部信息,开始编写程序,扫描Meta卷中的节点信息和目录项信息,同时对目录项和节点进行解析,获取完整的文件系统目录结构,解析每一个节点中的指针信息,将这些信息记录在数据库中。
文件信息如下图八:
技术分享图片
编写文件提取程序,读取数据库,根据解析出的信息以及两个Data卷之间的聚合算法对数据进行提取。

五.恢复结果

对生成出的数据进行随机抽样检测,数据没有问题。将客户所需全部文件提取到本地,确认提取完成后,到客户线程进行数据移交。数据移交完成,客户对数据恢复结果表示满意。虽然故障硬盘存在有坏道的情况,但万幸核心数据没有遭到破坏,数据恢复工作圆满完成。

我高估了磁盘阵列的安全性—StorNext两块硬盘离线数据恢复过程

标签:扫描   c89   目录结构   proc   成员   blog   col   区域   ges   

原文地址:http://blog.51cto.com/sun510/2311132

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!