RAID ADG类似于RAID 6,ADG技术是基于RAID5之上的,采用了冗余的校验盘;也可以理解成是给RAID5再做了一个RAID5的校验。实现两块硬盘的容错,至少需要4块硬盘。这个技术是康柏最先提出来的,现在HP就已经移植了该技术。

RAID ADG数据恢复技术相对于别的级别的Raid较难一些,其恢复技术跟Raid6一样复杂,可以缺两块盘对数据进行组合。
 

下面是我以前处理过的一起典型的Raid ADG数据恢复案例


故障描述:
1、七块盘做的磁盘阵列raid ADG,挂接到win2003服务器上使用,事先发现系统提示$MFT出错,要求运行CHKDSK命令进行修复。但是管理员没在意,忽然有一天发现阵列中2号盘亮红灯报警,于是把2号盘拔下,用新的磁盘替换2号盘。

2、用新磁盘替换2号盘后,阵列运行一段时间后,该阵列便不能访问了,系统仍然提示$MFT错误,要求运行CHKDSK进行修复。这时管理员运行了这个命令整理修复阵列,CHKDSK命令运行一段时间,没有完成就自动停止,反复运行CHKDSK几次,结果都是接近完成就自动停止,在这期间,还发现阵列在自动Rebuild。所有操作完成以后,磁盘分区还是打不开。
 

检测及恢复结果:
造成数据损坏丢失的原因可以从下面几点说明:

1、系统提示$MFT错误,说明数据目录结构损坏。目录结构损坏的原因很多:a、由系统对磁盘的文件读写错误引起的逻辑错误;b、由硬盘硬件问题引起的,包括多个硬盘掉线和硬盘出现坏道等物理故障。经检测硬盘物理上没有问题,都能识别,也能做镜像。

2、发现2号盘报警,撤掉2号盘,换上新的硬盘。从理论上讲,这样做是对的。这样做的前提是必须先确认其他六块盘在阵列中都是正常的,也就是说这六块盘处于在线(online)状态,如果还有其它两块或者两块以上的盘处于掉线(offline)状态(因为有时候硬盘掉线后,不一定就亮红灯报警),换盘是不能使阵列正常的(根据raid ADG的原理知道,阵列坏掉两块盘还可以运行,但是坏3块盘以上阵列就崩溃)。

3、运行CHKDSK命令是导致目录结构错乱的主要原因,许多found.000和dir.001等目录就是在这个环节产生的。CHKDSK命令是对文件目录的重新整理,把一些目录重新命名并且把文件所在的位置也做了整理。对于磁盘阵列,最忌讳的命令就是CHKDSK。如果阵列数据组合方式错误,或者重新配置Raid(Raid参数发生变化—磁盘顺序、块大小等),系统都会提示磁盘参数错误或者目录结构错误,要求运行CHKDSK来修复。这种提示只是操作系统的责任,但是操作系统没有提示运行CHKDSK的后果会带来数据的环乱和损坏,这才是最致命的。

4、经过对底层数据的分析发现,在每块盘的大约前15GB,2号盘和7号盘冗余信息所在的位置一样,不符合raid ADG数据组合规律,在每块盘大约15GB以后,数据组合方式才符合raid ADG。造成这种结果的原因可能是:换上新的2号盘后,系统把2号盘当成7号盘,用其余的磁盘来Rebuild;或者7号盘已经掉线,系统把2号盘当成7号盘来Rebuild;或者2号盘和7号盘物理上更换了位置等等,再就是出现问题后的其他一系列操作引起的。我们按照每块盘15GB以后的数据组合方式进行重组,恢复的结果是数据目录结构较乱,大部分文件都能恢复出来并且是正常的。
 

小结:
造成数据损坏的因素归结为:系统出现$MFT错误提示后不及时处理;发现2号盘亮红灯后应该查看阵列其他磁盘情况,再确认更换2号盘,并且要及时跟踪更换2号盘后系统运行状况;运行CHKDSK是导致目录结构错乱的主要原因;2号盘前15GB冗余信息不正常导致部分文件丢失,这是Rebuild操作引起的。

声明:作者达思数据恢复技术专家覃廷良,本文首发http://www.dstfix.cn ,在donews.com,51cto,techweb,新浪,百度等数据恢复技术博客上转发.欢迎转发,转发请保留作者及出处(http://www.bnuol.com