ITPub博客

首页 > IT基础架构 > 服务器/存储 > 【服务器数据恢复】infortrend ESDS系列存储数据恢复案例

【服务器数据恢复】infortrend ESDS系列存储数据恢复案例

原创 服务器/存储 作者:北亚数据恢复 时间:2022-11-14 13:28:21 0 删除 编辑

服务器数据恢复环境:

infortrend某型号存储;

12块硬盘组成RAID6,一个GPT分区文件系统为NTFS。


服务器故障:

3块硬盘离线后强制激活并做了REBUILD,数据出错。


服务器数据恢复过程:

1、在一台WINDOWS Server服务器上用一张阵列卡接2组磁盘阵列。A组阵列连接12块源盘,B组阵列连接12块目标盘。

2、保持A组所有磁盘在WINDOWS Server中脱机并激活所有B组硬盘。用工具把A组12块硬盘一对一镜像到B组12块硬盘。

3、镜像完成后,关机并将A组源盘全部取出,后续的数据恢复操作全部在镜像盘上进行,避免对原始数据造成二次伤害。

4、分析12块镜像盘结构,发现每块硬盘前部都有明显的RAID信息的痕迹,查找并确定RAID中LUN的起始分配位置。

5、推断RAID6算法,经过检测分析发现故障RAID6是基于标准P与另一个未知算法法则Q的右异步。基于现有资料分析,基于

PQ均等螺旋分布的RAID6只有里德-所罗门(Reed-solomon)算法 ,怀疑本案例中的RAID6为Reed-solomon算法 的变种,但

由于在同一条带全0位置发现非全0的情况,故此算法推断不成立。北亚数据恢复工程师结合对控制器的测试,发现故障RAID6

的Q校验基于一种随机的xor(如同Park编码),算法完全随机,但校验分布和Park完全不同,所以即使思路相似,但算法不

一样。

6、因为需要找到所有12块盘缺2块盘时的完整算法,共有C(12,2)=66种缺盘情况,每一种至少需要16种运算规则,经程序运

行后发现为了得到一个单元大约要运算30-50次xor。用程序生成的运算公式并引入可以简化算法的中间变量层,优化算法模

块。

7、针对一个明显不同步的数据块区,北亚数据恢复工程师专门编写了一段程序。计算所有C(12,2)并比较计算后的结果与预想

结果,最后确定掉线盘0号盘与3号盘。

8、二进制优化算法,所有运算放弃STL,改用数组,并使用bitmap的理念表示表达式中的所有成员,实现算法的最大性能优

化。按照算法和分析出来的结构对数据进行初步分析,没有发现明显的数据异常。

9、生成数据到另一个准备好的目标存储。到此步,数据恢复工作已经完成。


数据恢复总结:

本案例数据恢复工作断断续续一共耗费了2个月的时间。在整个数据恢复的过程中我们编写了近万行代码进行判断、分析、

优 化、测试、恢复。

数据恢复完成后,用户抽查验证的数据全部正常,但不排除有部分数据有少许的损坏。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31380569/viewspace-2923190/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
从事服务器数据恢复、磁盘阵列数据恢(DEll、HP、IBM、华为、NetApp等),虚拟化数据恢复(VSAN、VMware、Kvm等),数据库数据恢复(Oracle、Sql Server、MySql、Mongodb等),小型机数据恢复等方面的。24h数据救援13439392933

注册时间:2016-08-02

  • 博文量
    1127
  • 访问量
    876504