虚拟机技术是虚拟化技术的一种,所谓虚拟化技术就是将事物从一种形式转变成另外一种形式,最经常使用的虚拟化技术有操做系统中内存的虚拟化,实际运行时用户须要的内存空间可能远远大于物理机器的内存大小,利用内存的虚拟化技术,用户能够将一部分硬盘虚拟化为内存,而这对用户是透明的。又如,能够利用虚拟专用网技术在公共网络中虚拟化一条安全,稳定的“隧道”,用户感受像是使用私有网络同样。虚拟化技术看起来是一种更加安全的数据存储方式,可是世界上并无100%安全的存储模式,一旦承载虚拟机的底层服务器或者存储出现故障甚至服务器硬盘出现故障均可能致使上层虚拟机不可用,虚拟机内的数据丢失。另外还有一种比较常见的虚拟机数据丢失的状况那就是工做人员误操做,今天小编在这里要为你们介绍一下虚拟机误删除快照的数据恢复方法。
先简单的介绍一下须要虚拟机还原快照的本质是什么;假设进行数据恢复的虚拟机是三年前由一台物理服务器上迁移到ESXI上的,在迁移成功后作了一个快照,这个ESXI上面一共运行了26台虚拟机,底层存储设备为某品牌的服务器。某天工做人员一个不当心进行了还原快照操做,这也就意味着虚拟机内的数据还原到了3年前刚迁移时的状态,最近3年的数据所有处于被删除的状态。
还原快照操做与删除数据是本质上是同样的,虚拟机删除快照后会将底层存储空间相应位置进行释放,而后重用该部分空间用于存储新数据。也就是说若是一台虚拟机不当心还原了快照,应该尽快将存储上的全部虚拟机关机或迁移到其余ESXI上。
虚拟机的状况介绍到这里,下面就开始进行数据恢复的部分介绍了,介绍数据恢复方法前先须要介绍vmfs文件系统的底层结构,vmfs文件系统是wmware虚拟化的自有文件系统,在这个文件系统下全部的硬盘被默认划分红若干个区域,这些区域最小单位叫作block,每一个block的大小为1MB的容量,每1024个block组成为一个MAP,这些信息都记录在文件系统的某一片特定区域内。每一个map里面的block在屋里硬盘上的存储顺序不连续但每一个map里的全部block必定是同属于一个文件的,即FileSize:frombyte.com = N MAP 1024(Block)。
Vmfs文件系统的另外一个特性也有助于咱们恢复虚拟机数据。在vmfs文件系统中若是某文件被删除那么在底层数据层面只是删除掉了文件的索引项,实际数据内容及只想数据map实际上并无被删除。在数据恢复时须要咱们对整个文件系统里面的全部空闲map进行提取,而后找到符合快照文件头结构的map就能够根据文件结构继续提取剩下的文件碎片,将全部数据提取完成后结合原有的vmdk合成一个新的vmdk,最后把新和成的vmdk文件挂载起来,解释里面的数据即完成了虚拟机的数据恢复。安全