当前位置: 首页 > java >正文

服务器数据恢复—双循环RAID5数据恢复揭秘

服务器数据恢复环境&故障:
一台服务器上共有10块硬盘,其中的7块硬盘组建了一组raid5磁盘阵列,另外3块硬盘是没有拔掉的掉线磁盘。
服务器raid5阵列中硬盘出现物理故障掉线,服务器崩溃。

服务器数据恢复过程:
1、将故障服务器中所有硬盘编号后取出,硬件工程师经过逐一检测后没有发现有硬盘存在物理故障。
2、将所有磁盘以只读方式进行完整镜像,镜像完成后将所有磁盘根据编号按照原样还原到原服务器中。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
3、基于镜像文件分析所有硬盘的底层数据。经过分析发现故障服务器中所有硬盘每512字节加了一个8字节的校验,即每扇区520字节。北亚企安数据恢复工程师编写一个小程序将8字节的校验去掉,方便后续数据恢复。


4、由于服务器中有3块没有及时拔掉的掉线硬盘,所以需要比较每块磁盘。其中会有两块磁盘前面的一部分数据相同,旧的硬盘数据量没有新的硬盘多。这样的磁盘有3对,通过这个思路排除旧的磁盘,即可以排除所有旧的磁盘。
5、由于上层采用的是NTFS文件系统,使用MFT就可以搞清楚RAID结构。经过分析发现这不是一个普通的RAID5,而是一个双循环。重组RAID后发现数据不是最新的。服务器数据恢复工程师初步判断当RAID 5阵列中掉线一块硬盘后,管理员没有及时发现并添加新的硬盘做rebuild。运行一段时间后又有一块硬盘掉线,整个RAID不可用。所以需要找出一块旧的磁盘才能生成最新的数据。
6、服务器数据恢复工程师采用穷举加校验的方法进行分析。假设某个磁盘是掉线的,踢掉磁盘后重组RAID,但不是生成全部的数据,而是只生成前面几G的数据,然后查看这个索引表的位图的信息是否正确,就可以判断此RAID是否正确。
7、如果RAID正确,生成此RAID的数据即可完成RAID的重组。

http://www.xdnf.cn/news/1383.html

相关文章:

  • 2025.04.23华为机考第二题-200分
  • 第七节:进阶特性高频题-Vue3的ref与reactive选择策略
  • 数据结构初阶:二叉树(四)
  • CSS3 基础(边框效果)
  • 从 Vue 到 React:React.memo + useCallback 组合技
  • PCB规则
  • 【android bluetooth 协议分析 11】【AVDTP详解 2】【avdtp 初始化阶段主要回调关系梳理】
  • 基于FPGA 和DSP 的高性能6U VPX 采集处理板
  • 深入解析C++ STL Queue:先进先出的数据结构
  • Android Gradle Plugin (AGP) 和 Gradle 的關係
  • 【Qwen2.5-VL 踩坑记录】本地 + 海外账号和国内账号的 API 调用区别(阿里云百炼平台)
  • 学习记录:DAY16
  • 2.RabbitMQ - 入门
  • 从入门到精通:CMakeLists.txt 完全指南
  • AI语音助手自定义角色百度大模型 【全新AI开发套件掌上AI+4w字教程+零基础上手】
  • 永磁同步电机控制算法-反馈线性化控制
  • 官方不存在tomcat10-maven-plugin插件
  • 【模板匹配】图像处理(OpenCV)-part10
  • 【金仓数据库征文】从Oracle到KingbaseES的语法兼容与迁移
  • 常用第三方库精讲:cached_network_image图片加载优化
  • Chrome/Edge浏览器使用多屏完美解决方案,http部署使用https部署的功能
  • 互联网金融岗位简历模板
  • 3.第三章:数据治理的战略价值
  • 【人工智能】Ollama 负载均衡革命:多用户大模型服务的高效调度与优化
  • Vue3父子组件数据同步方法
  • gbase8s存储学习一 rootdbs存储结构以及寻址分析
  • 08-IDEA企业开发工具-集成AI插件通义灵码
  • Java—— 正则表达式 练习
  • 代理模式:控制对象访问的中间层设计
  • C#学习1_认识项目/程序结构