2007-6-5 21:8:20
转:数据恢复点滴经验谈1
1. 一个跨区卷的恢复。80g硬盘,2000server系统分区5g,剩余的73g动态分区,和另外一个160g硬盘的前128g组成跨区卷,因系统重装,另外删除了动态分区导致数据丢失。这次是一个DataExplore的企业版用户接到的。我远程协助的方式进行恢复。80g硬盘的73g分区,为F分区,160g的前128g分区,为G卷标。删除动态卷后又建立主分区,2个动态卷均如此,但是没有进行格式化操作。察看F分区,发现0扇区已经空了,推断删除分区时破坏了DBR。察看分区表,得到该分区的开始山区是A,扇区总数是B。另外根据A,B,还有整个磁盘的容量,发现在磁盘尾部还有7.6M的空间未使用,这应该是LDM的空间。察看G分区,该分区在160G硬盘的63扇区上,我们标记其开始扇区未C,扇区数量为D。根据跨区卷的原理,先尝试看把F,G按顺序连续镜像到另外一个200G硬盘上的K分区(NTFS),忽略上面所说的LDM空间。镜像的工具采用DataExplore,能方便的镜像任何位置的数据。在镜像窗口中,参数填写如下:先做第一个分区F的镜像。数据源:驱动器HD2,开始扇区A,扇区数目B,镜像到磁盘,目标数据:驱动器K:,开始扇区0,按开始镜像,将F分区镜像到K分区的0扇区位置上。再做第二个分区G的镜像。数据源:驱动器HD3,开始扇区C,扇区数目D,镜像到磁盘,目标数据:驱动器K:,开始扇区B,按开始镜像,将G分区镜像到K分区的B扇区位置上。这样做,就是把F,G分区顺序的拼接到另一个备份的K分区上。做完2个分区的镜像后,因为DBR已经破坏,重建困难(找不到DBR备份),故只好采用DataExplore的虚拟加载功能:专业模式,虚拟卷,下一步,驱动器填K:选NTFS,预读,修改参数512,8,1000000,4,0。按完成,虚拟加载后,目录完全正确,旧的文件能打开(I,并且H-I约7.6M,这下知道问题所在了。这是因为刚才做F分区的镜像时候,没有考虑后面LDM的数据,所以少做了7.6M。这LDM数据很少,先忽略不计,重新再做G分区的镜像就行了,这的参数是数据源:驱动器HD3,开始扇区C,扇区数目D,镜像到磁盘,目标数据:驱动器K:,开始扇区B+H-I,按开始镜像,将G分区镜像到K分区的B扇区位置上。注意这次的开始扇区是B+H-I。考虑了实际数据位置的偏移值。做好镜像后,用DataExplore虚拟加载后,绝大部分文件都打开。用别的工具加载扫描后,文件也能打开,说明重组正确。2. RAID5案例2一个4个盘的RAID5,每个盘33G,管理员弄错磁盘顺序后,又重分区,并且往第一个分区装了系统,要求恢复后面3个分区的资料。这是广东的一个企业版用户接到的硬盘,我让他做成镜像文件,快递给我。因为第一个分区的数据已经破坏了,要分析原来的磁盘顺序,只能从阵列中间的其他分区所在的位置进行分析。客户不记得原来的分区情况,故只能对其中某个镜像文件进行粗扫,来查找分区标志,我用的是DataExplore的脚本来搜索分区,脚本运行了2个钟头后发现了第2个分区的位置。我从该位置对4个盘进行原始数据块的排列分析,得出该阵列是 32K,右旋转,异步,磁盘顺序是2-1-3-4(管理员将1,2号盘搞错了)。得到这些参数后,我用DataExplore的阵列功能设置了这些参数,保存后,用虚拟卷方式,将这个分区以及后面的2个分区都加载上来,里面的目录完整。我将这些参数和虚拟卷加载的参数告知该企业版用户,他加载这4个物理硬盘,也成功看到目录,导出数据后的第3天客户确认了数据完全恢复。这个阵列麻烦在于,不能根据第一个分区的数据来分析原来阵列的磁盘顺序,必须分析后面分区的数据,可是用户并没有提供原来的分区情况,只能大量扫描扇区来找第2个分区的数据,大量时间就花在这里。另外是分区表破坏,不能直接加载这些分区,需要用'虚拟卷'的方法,强制以NTFS的分区格式,在阵列的某个扇区位置上直接加载看到目录。18. RAID0案例1湖南亿嘉接到2个盘的RAID0,故障原因据说是一个盘坏道后掉线。我远程简单分析一下后得到盘的顺序和块大小64K,直接加载后第一个分区出来了,数据也对。但是第2个分区怎么也找不到,我在第1个分区的后面前后搜索了几百个扇区,楞是没找到。因为网络的原因,而且看到的磁盘顺序也和卡上的顺序不一样,我怀疑是否客户做了什么别的操作了,让我分析第一个分区时候得到错误的结果。只好让亿嘉快递硬盘过来。得到硬盘后,我仔细看了第一个分区和第2个分区里面的数据,觉得似乎64K的块大小还有磁盘顺序没有问题,再往后找第2个分区的dbr备份,查找dbr备份的物理山区位置,还有分区大小,分区表中第2个分区的位置,发现这3个参数完全匹配。用虚拟卷的方式直接加载阵列的第2个分区(dbr参数取至该分区的dbr备份),加载后目录全部出来,我尝试打开一个200多m的excel文件,也正常打开内容也正确。到此断定客户删除过第2个分区后重建出来或者是坏道正好在这个dbr位置上,造成第2个分区的dbr没了。知道原因后,我直接告诉亿嘉磁盘顺序,还有块大小,让他直接做到另外一个硬盘上,重组出阵列后,把第2个分区的dbr备份复制到第2个分区的开始扇区,重起后操作系统能正常访问这2个分区,文件目录100%恢复。3. SD卡图片文件恢复例子一个128M的SD卡,所有的数据恢复软件都没有找到带文件名的JPG文件,用按内容恢复的方法得到的jpg文件,也打不开,可以断定是不连续存放的原因。数据恢复软件加载里面的FAT16分区后,能看到目录,但是里面没有文件。手工查看文件分配表,发现FAT1和FAT2匹配,里面很多簇都使用了,簇链看起来应该完整,由此得出目录被破坏了。对于目录破坏,但是文件分配表正常的恢复,一般的方法是按文件分配表里面的簇链,自己组织出文件,但是我不知道哪款软件有这样的功能(各位知道的话,还请告知我^^),决定自己加入按文件分配表里面的簇链自动导出文件,并指定扩展名的功能。经过半个晚上的努力,终于做出这样的功能,大部分的JPG文件都能打开了,那个叫兴奋啊。此功能需DataExplore1.97版本才有。这个镜像我还保存着,打算作为教材使用(不过得征求客户的同意才行),若各位想研究这样的案例,可以手工破坏文件目录来试验。欢迎讨论。4.RAID5案例3一个朋友接到一个HP(COMPA)的阵列,这个阵列比较少见,业内称为HP双循环的类型。3个33g的盘组成的,混盘后数据丢失分区也没了。我接到镜像后,先用XOR校验看了3个盘,基本上都是红块,表示数据不一致,这样的话,必须先找到坏的盘,数据才可能重组出来。经过多次分析里面的文件记录,还有文件头的位置,发现3号盘数据不对,1,2号盘前面的数据也部分破坏,而且磁盘顺序也不对,1,2号盘弄错了顺序,就以2,1,X的磁盘顺序,可以看到里面的文件,大部分能打开。这个阵列不能做到100%恢复了,幸好客户要求的文件都能打开。这个阵列的难点是双循环的方式重组,比较特别的,另外是分区,分区表信息都没了,我只能用脚本的方式查找文件目录纪录,找到后再根据文件记录信息,大致计算文件头位置,匹配出多个文件后得到阵列的参数的。