【服务器数据恢复】FreeNAS+ESXi虚拟机数据恢复案例

服务器数据恢复环境:
一台服务器通过FreeNAS(本案例使用的是UFS2文件系统)实现iSCSI存储,整个UFS2文件系统作为一个文件挂载到ESXi虚拟化系统(安装在另外2台服务器上)上。该虚拟化系统一共有5台虚拟机,其中有3台虚拟机中的数据比较重要:一台虚拟机上部署了ASP.net+SqlServer和PHP+mysql;第二台虚拟机安装的FreeBSD,部署了MySQL数据库;第三台虚拟机存放的是代码数据。
本案例应用构架层次:FreeNAS(UFS2文件系统–> 一个大的稀疏模式的文件) –> ESXi (VMFS文件系统层) -> 单台虚拟机的虚拟磁盘 (windows-NTFS文件系统/FreeBSD-UFS2文件系统)。

服务器故障:
作为iSCSI存储的服务器在正常运行过程中异常断电,重启后虚拟化系统无法连接该服务器,FreeNAS的UFS2文件系统出现问题,管理员对UFS2文件系统进行了修复,但是ESXI虚拟化系统无法识别原有的数据和UFS2文件系统。

服务器数据恢复过程:
1、对FreeNAS层做只读镜像,后续的数据分析和数据恢复操作都基于镜像文件进行,避免数据恢复操作对原始数据造成二次破坏。
2、基于镜像文件分析整个存储,只发现了一个文件名为iscsidata的、大小数百GB的文件。
3、根据UFS2文件系统的二进制结构定位到iscsidata文件的Inode数据,经过检测发现该文件被重建过,inode指针指向的数据量很少,在FreeNAS层无法解决问题,所以就无法进行下一步的VMFS层分析。
4、由于iscsidata文件重建过,过程和大小都和原iscsidata文件一致,应该有部分指针块被覆盖。原iscsidata文件的inode和新建的iscsidata文件的inode在同一个位置,尝试搜索没有发现其它有用的inode。
5、北亚企安数据恢复工程师编写程序收集有用的指针块。

由于iscsidata文件采用的稀疏模式,放宽收集条件后收集到了大量三级指针块和二级指针块。
6、经过分析发现所有收集到的三级指针块都是无效的,没有找到iscsidata文件使用的三级指针块,应该是在新建iscsidata文件时被覆盖。
7、分析收集到的二级指针块并对大量的二级指针块的指向数据进行DUMP,然后从磁盘中的数据定位到二级指针。通过这种方式获取到大量DUMP的数据。
8、分析VMFS层。由于VMFS重新格式化过,原始UFS2的指针已丢失,所以VMFS元文件不可用。
9、通过单台虚拟机层(windows(NTFS)和FreeBSD(UFS2)的文件系统结构),向上定位到VMFS层,然后通过VMFS层定位到DUMP出的单个64GB文件。通过多次组合,最终将三台重要虚拟机的虚拟磁盘完全恢复。将恢复出的网页数据和数据库数据上传到准备好的系统中,拉起应用并对数据进行检测,没有发现任何问题。

10、经过用户方的仔细检测后,确认3台重要虚拟机中的数据成功恢复,认可本次数据恢复结果。本次服务器数据恢复工作完成。


http://www.niftyadmin.cn/n/5391891.html

相关文章

C++mciSendString开发软件:音乐播放器2.0

目录 目录 目录 回顾上集代码 开始更改! 1、增加色彩特效 效果 2、增加命令行 初始化界面 获取时长 结构体 设置时长 退出 切换音乐 ......(没用的一堆玩意儿) 完整代码 回顾上集代码 #include <Button.h> #include <heker.h> #include <ARTTEXT.h> …

34.云原生之devops集成istio

云原生专栏大纲 文章目录 什么样的项目适合上istio参考bookinfo中reviews服务资源DeploymentServiceGatewayVirtualServiceDestinationRule kustomize资源清单 经过前边的学习我们已经知道istio官方bookinfo应用的部署及流量治理。我们自己的项目cicd发布后如何使用Istio呢&am…

CVPR 2023: DIP: Dual Incongruity Perceiving Network for Sarcasm Detection

我们使用以下6个分类标准对本文的研究选题进行分析: 1. 模态关注 文本中心: 这些方法主要侧重于分析文本的语言结构。 他们寻找可能表明讽刺的词语、短语和句子结构中的线索。 技术包括: 词汇分析: 识别与讽刺密切相关的特定词语或短语(例如“yeah right”、“so excited”…

掌控互联网脉络:深入解析边界网关协议(BGP)的力量与挑战

BGP简介 边界网关协议&#xff08;Border Gateway Protocol&#xff0c;BGP&#xff09;是互联网上最重要的路由协议之一&#xff0c;负责在不同自治系统&#xff08;AS&#xff09;之间传播路由信息。BGP使得互联网中的不同网络可以互相通信&#xff0c;支持互联网的规模化扩…

生产监控、故障诊断、实时预警…… DolphinDB 工业物联网智能运维解决方案

随着数字化转型的浪潮兴起&#xff0c;越来越多企业认识到工业物联网在提升工业生产安全性和效率方面的关键作用。然而&#xff0c;随着设备规模的扩大和工艺复杂性的提升&#xff0c;智能化运维监管成为工业企业急需解决的重要挑战。 智能运维是一种利用先进技术和数据分析方…

电路设计(25)——4位数字频率计的multisim仿真及PCB设计

1.设计要求 使用4位数码管&#xff0c;显示输入信号的频率。完成功能仿真后&#xff0c;用AD软件&#xff0c;画出原理图以及PCB。 2.电路设计 输入信号的参数为&#xff1a; 可见&#xff0c;输入为168HZ&#xff0c;测量值为170HZ&#xff0c;误差在可接受的范围内。 3.PCB设…

SQL使用大全

一、SQL简介 SQL是一种用于管理关系型数据库的编程语言。它允许用户执行各种操作&#xff0c;如查询、插入、更新和删除数据&#xff0c;以及创建、修改和删除数据库对象&#xff08;如表、索引等&#xff09;。 目录 二、数据类型 SQL支持多种数据类型&#xff0c;包括数值…

项目:shell实现多级菜单脚本编写

目录 1. 提示 2. 演示效果 2.1. 一级菜单 2.2. 二级菜单 2.3. 执行操作 3. 参考代码 1. 提示 本脚本主要实现多级菜单效果&#xff0c;并没有安装LAMP、LNMP环境&#xff0c;如果要用在实际生成环境中部署LNMP、LAMP环境&#xff0c;只需要简单修改一下就可以了。 2. 演…