服务器数据恢复虚拟机文件丢失导致Hyper-V服务瘫痪,虚拟机无法使用的数据恢复案例
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了服务器数据恢复虚拟机文件丢失导致Hyper-V服务瘫痪,虚拟机无法使用的数据恢复案例相关的知识,希望对你有一定的参考价值。
服务器数据恢复环境:
Windows Server服务器,部署Hyper-V虚拟机环境;
虚拟机的硬盘文件和配置文件存放在某托管中心的存储设备中;
存储设备中4块硬盘组成阵列存储虚拟机的数据文件,单块4T硬盘存储虚拟机数据文件备份。
服务器故障分析&恢复方案:
由于存储设备中的虚拟机数据文件丢失,整个Hyper-V服务瘫痪,虚拟机无法使用。管理员联系我们数据恢复中心寻求帮助,北亚数据恢复工程师团队对故障存储服务器进行检测:
1、检测故障存储服务器没有发现物理故障,硬盘均可以正常工作。
2、检查操作系统没有发现出错进程,排除因操作系统问题导致的数据丢失。
3、分析丢失数据的硬盘的文件系统:打开正常,排除入侵破坏的可能性。在分析硬盘的文件系统过程中发现此文件系统的元文件创建时间与数据丢失的时间相吻合。发现这种情况,数据恢复工程师初步判断文件系统被人为重写,即分区被格式化。
4、检查系统日志发现数据丢失的当天和之前的系统日志已被清空,审核日志和服务日志却并未清空,这种情况符合人为操作的特征。格式化分区的操作只记录在系统日志中,这也与人为破坏的特征相符。
5、分析硬盘的底层数据,发现硬盘底层中需要恢复的系统日志已被新的日志记录覆盖,无法恢复。
6、对操作系统中的所有分区进行分析,发现故障存储中只有两个分区被重新写入文件系统。对两个分区的格式化需要有两个独立的过程,这种针对性的操作更加验证本案例的故障是人为导致。
根据故障分析结论,北亚数据恢复工程师团队敲定以下恢复方案:
1、对故障存储中的所有硬盘做全盘备份。
2、分析每个硬盘的数据获取到RAID相关信息,重组RAID阵列。
3、对重组的阵列进行分析,看能否找到原有的文件索引项及对应的数据区。
4、核对查找到的文件索引项是否符合用户数据,并核对相应的数据区有无破坏。
5、将扫描到的文件索引项碎片拼接成一个完整的目录结构。
6、根据拼接好的目录项去底层恢复对应的数据,并检查数据是否正确。
7、核对数据没问题后恢复所有数据。
服务器数据恢复过程:
1、备份用户数据。
由于数据全部都放在托管中心的存储设备中,因此只需要恢复存储设备中的数据即可。将故障存储中所有的硬盘编号后从存储设备中取出交给硬件工程师检测硬盘物理故障。检测完成后对每块硬盘做全盘镜像,使用工具将硬盘中所有扇区镜像到备份硬盘中。
2、重组RAID磁盘阵列。
分析每块硬盘数据获取RAID相关信息(条带大小,条带走向等),根据这些信息重组RAID。
3、扫描旧的文件索引项。
分析硬盘底层数据,服务器数据恢复工程师发现硬盘底层中残留着许多以前文件系统的目录项及文件索引。经过核对发现这些文件索引指向的数据都是用户丢失的文件内容。北亚数据恢复工程师编写了一个提取文件索引项的小程序扫描并提取硬盘中所有存在的文件索引项。
4、分析扫描到文件索引项。
对扫描到的文件索引项进行分析,北亚数据恢复工程师发现索引项都是不连续的,并且大多是以16K或8K对齐的。正常情况下的文件索引项是连续的,大小为固定的1K,每个文件索引项对应一个文件或目录。而扫描出来的这些不连续且不完整的文件索引项是无法正常索引到文件的内容。北亚数据恢复工程师对扫描出来的文件索引项做加工处理,对于被破坏的缺失文件索引项片段,我们可以从数据备份盘中去查找。
5、将文件索引项组成完整的目录结构。
根据文件索引项的编号将找到的文件索引项拼接成目录项结构。由于有部分文件索引项被破坏,因此只能找到大部分文件索引项,但通过这些找到的文件索引项已经可以拼接出整个目录结构。
6、修复文件系统。
用重建好的目录结构替换现有文件系统中的目录结构,使用工具修改部分校验值,然后再使用工具解释这个目录结构即可看到丢失的数据。
为了确定数据是否正确,将其中一个最新的VHD文件恢复出来并拷贝到一台支持附加VHD的服务器上尝试附加此VHD,附加成功,检查VHD中最新的数据是否完整后将所有数据恢复到一块硬盘中。
验证数据:
在一台测试服务器上搭建Hyper-V的环境,将恢复出来的虚拟机文件连接到这台服务器上。通过导入虚拟机的方式将恢复出来的数据都迁移到新的Hyper-V环境,让用户来验证所有虚拟机是否完整。
迁移数据:
在用户验证所有虚拟机没问题后,将所有数据拷贝至用户服务器中。利用导入的方式将虚拟机导入到用户的Hyper-V环境中,导入后没有报错,尝试启动所有虚拟机成功,没有发现问题。数据恢复完成。
以上是关于服务器数据恢复虚拟机文件丢失导致Hyper-V服务瘫痪,虚拟机无法使用的数据恢复案例的主要内容,如果未能解决你的问题,请参考以下文章