服务器数据恢复环境:
一台服务器上搭建了一组由5块硬盘组建的raid5阵列,服务器上层存放单位重要数据,无备份文件。
服务器故障&分析:
服务器上raid5有一块硬盘掉线,外聘运维人员在没有了解服务器具体情况下,将服务器上raid5阵列中4块正常硬盘(除去掉线的那块磁盘)重建为一组新的raid5阵列,导致服务器中的原始数据全部丢失。
本案例中导致服务器数据丢失的原因就是在缺一块盘的情况下使用原raid5中其他成员盘新建raid5的操作。服务器上原阵列是raid5,根据raid5的特性,一块硬盘掉线不会影响服务器的使用和数据的完整性。但运维人员在不知情的情况下使用没有掉线的4块硬盘新建了一组raid5阵列,全盘重建校验块,导致原始数据全部被破坏。
经过和用户方工程师以及外聘运维人员沟通,得到以下信息:
a、利用4块硬盘组建的raid5阵列是双循环,块大小为64,条带化校验次数为16。
b、服务器中原5盘raid5阵列也是双循环,块大小128,条带化校验次数为16。
通过这些信息我们可以推断:新建raid5阵列的4块硬盘中每隔3M的数据就会有1M的原始数据被破坏。恢复服务器中的原始数据,需要对掉线硬盘进行分析,对比5盘raid5阵列和4盘raid5阵列的差异,使用掉线硬盘的数据补缺其他硬盘中被破坏的原始数据,然后重组raid,解释文件系统,导出数据。能恢复多少数据(数据完整度)取决于掉线硬盘的数据量。
服务器数据恢复过程:
1、将故障服务器中所有磁盘编号后取出,硬件工程师对所有磁盘进行检测后没有发现有硬盘存在硬件故障。以只读方式将所有磁盘进行扇区级的全盘镜像。镜像完成后将所有磁盘按照编号还原到原服务器中。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析底层数据,获取到数据被破坏前和破坏后的raid5结构。
3、对比数据被破坏前后的raid5阵列结构,分析raid结构差异,北亚企安数据恢复工程师编写程序提取数据。按照服务器内原始5盘raid5阵列结构虚拟重组raid5阵列,生成一组重组后的镜像文件。
4、提取掉线硬盘内的数据,根据掉线硬盘数据补全虚拟重组的raid5阵列数据,修正文件系统错误。
5、将处理好的数据导入到新空间内并进行验证,验证无误后交由用户方验证数据。
6、经过用户方对恢复出来的服务器数据进行仔细验证后,确认恢复出来的数据完整有效,认可数据恢复结果。本次数据恢复工作完成。