服务器数据恢复—重装系统导致XFS文件系统分区丢失的数据恢复案例

服务器数据恢复环境&故障:
磁盘柜中有一组通过RAID卡创建的RAID5阵列,分配一个LUN,服务器上层安装Linux操作系统。操作系统层面划分sdc1和sdc2两个分区。通过LVM扩容的方式将sdc1分区加入到了root_lv中;sdc2分区格式化为XFS文件系统。
服务器重装操作系统后,磁盘分区改变,sdc2分区丢失,无法访问。

服务器数据恢复过程:
1、将磁盘柜中所有磁盘编号后取出槽位。硬件工程师对所有磁盘进行检测后没有发现有磁盘存在明显物理故障,都可以正常读取。将所有磁盘以只读方式做扇区级的完整镜像。镜像完成后将所有磁盘按照编号还原到存储柜中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析原raid5阵列的盘序、条带大小、块大小、循环方向、同异步等重组raid所必需的信息。根据分析获取到的raid相关信息虚拟重组raid。
3、完成RAID重组后,定位到xfs文件系统的分区起始位置。
4、校验xfs文件系统发现该文件系统头部的超级块及部分节点、目录项丢失。
5、根据超级块备份及文件系统中的目录树结构,修复还原超级块。
修复完成的超级块:

6、修复xfs文件系统中丢失的节点及目录项。
修复完成的根节点:

重做的目录项:

修复完成的目录结构:

7、修复工作完成后,北亚企安数据恢复工程师编写程序解析xfs文件系统,提取其中的数据。
8、用户方对恢复出来的数据做仔细检测后,确认恢复出来的数据完整可用,认可数据恢复结果。本次数据恢复工作完成。
 

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 04:12:03       3 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 04:12:03       3 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 04:12:03       2 阅读
  4. Python语言-面向对象

    2024-07-10 04:12:03       2 阅读

热门阅读

  1. 微软Edge浏览器全解析

    2024-07-10 04:12:03       9 阅读
  2. toString方法介绍

    2024-07-10 04:12:03       7 阅读
  3. LLM大语言模型知识点整理

    2024-07-10 04:12:03       8 阅读
  4. 使用Boost.Asio编写TCP通信程序框架(一)

    2024-07-10 04:12:03       12 阅读
  5. 导师好奇我为什么开发后端模版只花了一小时!

    2024-07-10 04:12:03       11 阅读
  6. android 7.0 tts文字转语音

    2024-07-10 04:12:03       9 阅读
  7. 离线升级docker中的某个镜像——以etcd为例

    2024-07-10 04:12:03       13 阅读
  8. 将pytorch 模型封装为c++ api 例子

    2024-07-10 04:12:03       9 阅读
  9. Rust: 关于Pin以及move前后分析

    2024-07-10 04:12:03       9 阅读