实习生删除虚拟机跑路了,还好有我们才能找回来!
2018-09-11 15:55
375 查看
一、服务器数据恢复描述
需要进行数据恢复的服务器采用Linux操作系统、EXT4文件系统。由于实习生操作失误将服务器上的KVM虚拟机删除了3台。该服务器上每台虚拟机包含一个qcow2格式的磁盘文件,和一个大小约为1.2T的raw格式的磁盘文件,主要需恢复raw格式的磁盘文件。二、恢复服务器虚拟机过程
1、分析服务器中的EXT4文件系统,将被删除的虚拟机磁盘文件节点位置定位;2、获取磁盘文件残留的索引信息;
3、校验残留索引信息的正确性,修复破坏不严重的索引;
图为获取的索引等信息:
图 1
4、完成修复后对服务器中残留的各级索引进行解析,从虚拟机所在的卷中提取虚拟磁盘文件;
5、根据虚拟磁盘文件的提取情况,获取卷中未被索引到的自由空间;
6、校验提取出的磁盘文件的正确性与完整性;
7、从自由空间中获取有效信息,尝试对虚拟磁盘文件进行修补(如节点,目录项,数据库页等信息)。
图为提取出的自由空间:
图 2
三、数据恢复结果
1、由于索引丢失,提取出的虚拟磁盘文件并不完整,针对数据库服务器,数据库文件有丢失的情况,可以从自由空间中获取数据库页去对数据库文件进行修补,但由于部分页所在区域被覆盖占用,只能尽量多的去补页;2、对于存放程序代码的服务器中的节点和目录项丢失的情况,若节点或目录项有残留,可以尝试去补齐节点和目录项。但发现部分文件的节点和目录项同时丢失,根据节点和目录项之间相关联的特性,这种情况下无法补齐。另根据程序代码文件的特性,不具备一定的规律性,若其数据区丢失,无法补齐。
图为恢复出的部分目录结构:
图 3
图 4
四、数据验证
在尽可能的尝试对虚拟磁盘文件及其中的数据库文件修补之后,由客户对数据进行验证。服务器数据恢复90%,数据恢复成功。相关文章推荐
- 回收站删除的文件丨怎么才能找回来呢
- 电脑中删除的照片怎么才能找回来
- 腾讯 2017 暑假实习生编程题(一):给定一个字符串s,你可以从中删除一些字符,使得剩下的串是一个回文串。如何删除才能使得回文串最长呢? 输出需要删除的字符个数。
- 回收站里面的文件删除了,怎么找回来
- cookie的获取,建立和删除(放服务器上才能起效)
- 清除dashboard无法删除的虚拟机
- 删除文件时提示“您需要计算机管理员提供的权限才能完成此操作”
- 扩展LINQ to Entity:使用Lambda Expression批量删除数据------让微软帮我们生成T-SQL语句
- oracle这样才能删除干净!!
- 世界末日那天,我们才能拿到Lytro的光场相机
- 教您用EasyRecovery 12将删除的数据找回来
- 语音助手、聊天机器人何时才能像真人一样跟我们对话?
- 删除虚拟机中的程序
- 电脑上安装的android虚拟机,能进行基站定位和GPS定位吗?要怎么做才能定位?(转)
- 有3个商人和3个随从在河岸边,他们都想过河,只有一艘船,没有船夫,而且船一次只能载2个人.任何时候船过了河,只要这6个人没过完,都得人回来接,怎么才能顺利过河呢?要求任何时候都不得随从数目大于商人数目,防止他们劫财.
- 关于vmware player列表无法删除虚拟机和无法添加虚拟机的解决办法。
- 文件删除后怎么才能恢复
- Openstack4J API初体验之删除一个实例(删除一个虚拟机)
- 怎么才能把windows里的文件复制到虚拟机的linux中去
- Mac PD虚拟机卸载删除