服务器数据恢复环境:
linux操作系统,文件系统EXT3;
12块硬盘组成RAID6;
划分3个LUN。
服务器故障&分析:
服务器运行过程中RAID出现故障不可用,管理员重新分配RAID并进行初始化。初始化超过50%的时候管理员发现情况有异,强行停止初始化,这时候已经对数据造成不可逆的破坏。
原始RAID6失效后管理员用其中的11块硬盘重新组建RAID5并进行初始化,这种操作对原始数据造成不可逆的损坏。经过北亚数据恢复工程师检测,仅第3个LUN可用普通RAID6恢复方法恢复出数据,但第3个LUN没有用户想要恢复的重要数据,重要数据都在第1个LUN。
我们数据恢复中心接到故障送修时,这个case已经在多家数据恢复公司做过,但问题仍未解决。
服务器数据恢复过程:
1、对故障服务器中的12块硬盘做镜像备份。
2、基于镜像文件分析12块磁盘组建的RAID6的组织结构,分析11块磁盘重分配RAID5的组织结构。分析原始RAID6结构比较顺利,但由于底层RAID6和RAID5的大量信息重合,分析重分配的RAID5的结构就比较困难,数据恢复工程师经过近24小时的努力终于把重新分配的RAID5结构搞清楚。
3、判断可恢复性,北亚数据恢复工程师研究编写和校正恢复程序算法,通过程序把12块磁盘中原始数据的第1和第2个LUN分别镜像到搭好的存储环境上。
4、经过验证第2个LUN数据没有问题,但第1个LUN前面部分大约有十几MB的数据被破坏。这前十几MB数据包含了EXT3的根目录和第一个块组的I节点,常用的数据恢复软件恢复效果都不理想。
5、北亚数据恢复工程师只能手动修复损坏的EXT3文件系统,编写程序对EXT3根目录进行查找并重建根目录和I节点,用文件系统解析程序打开完全正常。为了保证原始数据的权限和属性,在LINUX下进行简单修复后已能正常挂载,然后在LINUX下把文件拷贝到格式化为EXT3文件系统 的单块磁盘的分区上。这样用户在使用数据时不再需要进行设置,文件目录结构和属性都和原来一模一样。