服务器数据恢复环境:
某公司一台服务器,应用FreeNAS做iSCSI,借助另外两台服务器做虚拟化零碎。此虚拟化零碎装置有5台虚拟机,其中3台虚拟机比拟重要:一台虚拟机部署了ASP.net、PHP,装置了SqlServer和mysql数据库;另一台装置的FreeBSD零碎并部署了MySQL数据库;一台虚拟机存储的是代码和数据。
FreeNAS层采纳的是UFS2文件系统;服务器建一个文件而后挂载到ESXi零碎。

服务器故障:
服务器意外断电后重启,虚拟化零碎无奈连贯服务器,UFS2文件系统呈现问题,管理员试图修复文件系统,然而实现修复后ESXi零碎无奈辨认原有的数据和文件系统。

服务器数据恢复过程:
1、剖析本案例的利用构架档次:FreeNAS(UFS2文件系统–> 一个大的稠密模式的文件) –> ESXi(VMFS文件系统层) -> 单台虚拟机的虚构磁盘 (windows-NTFS文件系统/FreeBSD-UFS2文件系统)。
2、对FreeNAS做残缺镜像,基于镜像文件剖析整个存储,在存储中只发现一个文件名为iscsidatade的大文件。
3、依据UFS2文件系统的二进制构造定位到iscsidata文件的Inode数据,发现iscsidata文件被重建过,inode指针指向的数据量很少。
Tips:如果FreeNAS层问题无奈解决,就无奈进入到下一步的VMFS层剖析。
UFS2文件系统相干信息:
块大小:16KB
Segment大小:2KB
柱面组大小:188176 KB
UFS2文件系统的一个数据指针占用8字节,一个块可存储2048个数据指针,一个二级指针块则可存储2048×2048×16KB= 64GB的数据。一个三级指针块则可存储64GB×2048=128TB的数据。如果能找到iscsidata文件的三级指针块就能解决FreeNAS层问题。但iscsidata文件被重建过,预计有局部指针块已被笼罩。
原iscsidata文件的inode和新建的iscsidata文件的inode就在同一个地位,尝试搜寻没有发现其它有用的inode。北亚企安数据恢复工程师只能编写程序来收集有用的指针块:

4、因为该iscsidata文件采纳的是稠密模式,放宽收集条件后收集到了大量的三级指针块和二级指针块。通过剖析后发现这些收集到的三级指针块都是有效的,没有发现iscsidata文件应用的三级指针块,预计在新建iscsidata文件时被笼罩(新的iscsidata文件挂载到ESXi后有个VMFS格式化过程,而 该ESXi版本应用的是GPT分区,GPT分区会在磁盘最初写入冗余的GPT头和分区表信息数据,会应用iscsidata文件的三级指针块)。
5、剖析收集到的二级指针块,对有大量二级指针块的指向数据进行DUMP,再从磁盘中的数据定位到二级指针,通过这种形式失去大量DUMP的数据。
6、VMFS被从新格式化过,原UFS2文件系统的指针已失落,所以VMFS元文件不可用。只能通过单台虚拟机层(windows(NTFS)和FreeBSD(UFS2)零碎的文件系统构造)向上定位到VMFS层,再通过VMFS层定位到DUMP出的单个64GB文件。通过屡次组合,最终将三台重要虚拟机的虚构磁盘完全恢复。将复原出的网页数据和数据库数据上传到筹备好的环境中,起利用后没有发现问题。