某研究院 DELL 服务器 磁盘阵列崩溃, 内置 15 块 1TB 硬盘搭建的 RAID5 阵列. 一开始有一块硬盘离线, 在更换新硬盘进行同步的过程中, 第二块磁盘指示灯报警, 同步失败, 阵列无法正常工作.
服务器数据恢复检测:
最先离线的硬盘访问速度极其缓慢, 第二块离线的磁盘有少量坏扇区, 其他磁盘无明显物理问题.
服务器质逻辑状况:
整个阵列只包含一个卷组, 该卷组占用阵列全部空间; 并且该卷组只有一个起始位置为 0 扇区的 XFS 裸分区.
制定服务器数据恢复方案:
RAID5 阵列架构在设计上只支持一块磁盘的错误冗余功能, 当第二块磁盘离线后阵列便无法正常工作. 根据用户描述可知, 整个阵列的崩溃主要由第二块磁盘造成. 所以第二块磁盘的处理是此次恢复的关键
服务器数据恢复过程:
1, 对所有硬盘做只读镜像的备份, 单独备份第二块离线的硬盘, 备份过程中略过坏扇区.
2, 对 15 块硬盘镜像文件进行异或测试, 全部通过, 无明显错误.
3, 计算第二块硬盘损坏扇区位置的数据, 并将其写入镜像文件.
4, 在备份过程中同时分析原 RAID 组成结构, 构建虚拟 RAID 环境.
5, 验证 RAID 结构是否正确.
6, 将第二块磁盘的镜像备份到新硬盘, 并将其强制上线, 更换第一块磁盘, 并对其进行同步.(注意: 在操作之前要对所有硬盘进行备份)
7, 拷贝数据.
服务器数据恢复结论:
因为异或测试完全通过, 所以表明该存储发生故障后没有新数据写入, 或结构改动.
所以可以根据其他几块好硬盘计算出坏硬盘对应位置的数据.
恢复完成后, 目录结构完整, 重要文档全部完好. FSCK 无任何错误提示, 客户认可所恢复的数据, 恢复成功.
来源: http://blog.51cto.com/sun510/2146600