RAID0阵列数据恢复方法研究.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
? ? RAID0阵列数据恢复方法研究 ? ? 吕秀鉴 Summary:RAID0阵列作为第一种也是最常见的一种磁盘阵列类型被大量的服务器和个人机作为提升系统存储性能的一种廉价解决方式而普遍使用。但是由于RAID0阵列自身的磁盘组织方式,使得这种阵列也成为了所有RAID阵列最容易出现故障,且故障后数据最容易遭到破坏的一种阵列形式。本文在分析RAID0阵列组织形式的基础上,提出了针对RAID0阵列数据进行恢复重组的方法。 Key:数据恢复;RAID0;冗余阵列;数据重组 :TP311 :A :1007-9416(2018)11-0188-01 对于RAID0阵列来说,它是最早的一种RAID类型,阵列由多块硬盘组成,通过阵列控制器读写数据,数据被分成大小一样的条块,按照盘序依次均匀写入每块硬盘相对应的带区,循环往复。它可以较低的成本提供高于一般硬盘的存储容量和数据读写速率。但RAID0阵列不提供冗余校验功能,所以阵列中只要有一块硬盘出现故障,即造成整个阵列数据损坏,无法完整读出。 对于RAID0的数据恢复来说,由于阵列已经失效,无法正常读出,所以只能把硬盘从阵列控制器上断开,作为单一硬盘逐个取出,排除可能存在的物理故障。然后对硬盘依次做镜像,并对镜像文件进行分析,确定RAID阵列控制参数:RAID组织方式、起始位置、块大小、盘序。最后使用专业RAID数据重组工具软件对磁盘镜像进行重组,尝试读出阵列数据。我们以一个由3块硬盘组成的RAID0阵列为例,具体分析思路分以下几步: 1 确认硬盘上RAID0数据块的起始位置扇区 我们分析RAID0数据块的起始位置,就是要找到由多个硬盘组成的逻辑卷的起始位置。一般来说,由阵列卡组成的硬RAID阵列从每个硬盘开始位置第一个扇区即是阵列数据,但由操作系统组建的软RAID一般都不会从硬盘的起始位置第一个扇区开始记录阵列数据。所以针对不同的情况,首先要分析每块硬盘的0号扇区,进行比较。如果是硬RAID阵列硬盘的话,每块硬盘里0号扇区的内容是不一样的,我们可以初步确定RAID阵列数据塊的起始位置就在每块硬盘的0号扇区;如果是软RAID阵列硬盘的话,会发现每块硬盘的0号扇区的内容是一样的,那么这些一样的内容肯定不属于RAID阵列数据,RAID0数据块会在相对靠后的位置存在。所以起始位置判断的依据就是磁盘分区结构。以最常见的DOS分区结构为例,0扇区的MBR(主引导记录)和每个分区的DBR(操作系统引导记录)都是用作分析起始位置的判断依据。MBR和DBR这类分区结构扇区都属于引导扇区,有着不同于普通扇区的结构标记,即扇区结束位置的第510和511字节的数据是固定组合十六进制数据“55AA”。所以我们可以在分析阶段从0扇区开始查找符合位置要求的十六进制数值“55AA”,从而找出阵列的MBR和DBR(硬RAID只存在DBR)。 在服务器阵列中,采用NTFS文件系统的比较多。如果我们通过查找“55AA”的方法直接在阵列中某块硬盘的0号扇区找到了NTFS文件系统的 DBR的话,基本上就可以判断阵列数据起始位置就是每块硬盘的0号扇区了。如果没有,而是在0号扇区或稍后的位置找到了MBR,则要分析MBR中所标出的DPT分区表信息。我们可以从DPT分区表项中读出分区类型和分区开始位置等重要信息,以当前图中偏移地址0x01c2处取值为“42”,代表当前分区为活动分区类型;偏移地址0x01c6处取值为0x0000003F,代表当前分区的起始位置偏移地址为63扇区。我们从发现MBR的0号扇区位置开始加上这个参数63,就可以在硬盘上找到DBR的位置,也就是阵列数据起始的位置扇区号是0+63=63号扇区。 2 分析RAID数据块的大小 由于数据在RAID0阵列上是以数据块的方式均匀分布存储在每一块硬盘上,所以我们在重组阵列数据时,确定数据块的大小是非常必要的。一般我们通过由阵列构造的 NTFS卷中的一个重要存储结构元文件$MFT(主文件表)来进行判断。$MFT中的文件记录项以两个扇区为一个文件记录的存储单位,我们可以通过分别在每个硬盘上查找文件记录项的开始标记十六进制数值“46494c45”来定位$MFT文件记录的位置。在相同的扇区地址上分别比较不同硬盘上文件记录中记录号之间的差值,就可以推算出在一个数据块内包含的文件记录个数,进而推算出数据块的大小。例如我们分别在每块硬盘的41791号扇区处找到了$MFT文件记录,则我们可以查看到文件记录号分别为0x000000c0,00十进制的数值分别为192,128,256。通过计算这三个数字间的等差值,我们可以推算出每个数据块存储了64个文件记录,每个文件记录占用2个扇区的存储空间,就是每个数据块一共有64×2=128个扇区。 3 确认硬盘盘序

文档评论(0)

科技之佳文库 + 关注
官方认证
文档贡献者

科技赋能未来,创新改变生活!

版权声明书
用户编号:8131073104000017
认证主体重庆有云时代科技有限公司
IP属地浙江
统一社会信用代码/组织机构代码
9150010832176858X3

1亿VIP精品文档

相关文档