服务器数据恢复环境:
几年前从一台物理服务器上迁移到ESXI上的虚拟机,在迁移完成后做了一个快照。
服务器故障:
某天工作人员误操作还原了几年前迁移完成后所做的快照,将这台虚拟机的数据恢复到几年前刚迁移完成时候的状态,
近3年的更新的数据全部丢失。
服务器数据恢复原理:
还原快照操作与删除数据在本质上是一样的,虚拟机删除快照后会将底层存储空间相应的位置释放,然后重新使用该部分
空间存储新的数据。北亚企安数据恢复工程师在这里强调一下:如果一台设备上的虚拟机不小心还原了快照,应该尽快将
该设备上所有虚拟机关机或迁移到其他ESXI上。
恢复数据之前需要先了解vmfs文件系统的底层结构。vmfs文件系统是wmware虚拟化的专有文件系统。vmfs文件系统下
默认将所有的硬盘划分为若干区域,这些区域的最小单位被称为block。每个block的大小为1MB,每1024个block组成
一个MAP。这些信息记录在vmfs文件系统的某一片特定区域内。每个map里面的block在物理硬盘上的存储顺序不连续,
但每个map里的所有block一定是属于同一个文件的,FileSize= N × MAP × 1024(Block)。
在vmfs文件系统中,如果某文件被删除,在底层数据层面只是删除了文件的索引项,数据内容及指向数据map并没有被删除。
服务器数据恢复方案:
1、提取整个vmfs文件系统里所有的空闲map。
2、找到符合快照文件头结构的map。
3、根据vmfs文件结构继续提取剩余的文件碎片。
4、将所有数据提取完成后,结合原有的vmdk合并成一个新的vmdk。
5、将新合成的vmdk文件挂载,解释里面的数据即可完成虚拟机的数据恢复。