服务器数据恢复—KVM虚拟机被误删除如何恢复虚拟磁盘文件?

服务器数据恢复环境&故障:
1台服务器,Linux操作系统+EXT4文件系统,部署了数台KVM虚拟机,每台虚拟机包含一个qcow2格式的磁盘文件,和一个raw格式的磁盘文件。
工作人员操作失误删除了3台服务器上的KVM虚拟机,需要恢复raw格式的磁盘文件。

服务器数据恢复过程:
1、将故障服务器中所有磁盘编号后取出,硬件工程师检测后没有发现有硬盘存在硬件故障。将所有磁盘以只读方式进行全盘镜像。镜像完成后将所有磁盘按照编号还原到原服务器中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析服务器中的EXT4文件系统,定位被删除的虚拟机磁盘文件节点位置。
3、获取磁盘文件残留的索引信息并校验残留索引信息是否正确,然后修复破坏不严重的索引。
获取的索引信息:

4、完成索引的修复后解析服务器中残留的各级索引,从虚拟机所在的卷中提取虚拟磁盘文件。
5、根据虚拟磁盘文件的提取情况,获取卷中未被索引到的自由空间。校验提取出的磁盘文件的正确性与完整性。
6、从自由空间中获取有效信息,尝试修补虚拟磁盘文件(如节点,目录项,数据库页等信息)。
提取出的自由空间:

7、由于部分索引丢失,提取出的虚拟磁盘文件并不完整。
针对存放数据库的服务器中数据库文件有丢失的情况,可以尝试从自由空间中获取数据库页去修补数据库文件。由于部分页所在区域被覆盖占用,只能尽量多的去补页。
针对存放程序代码的服务器中节点和目录项丢失的情况,若节点或目录项有残留,可以尝试去补齐节点和目录项。由于部分文件的节点和目录项同时丢失,根据节点和目录项之间相关联的特性,这种情况下无法补齐节点和目录项。再者程序代码文件不具备一定的规律性,若其数据区丢失,则无法补齐。
恢复出的部分目录结构:

8、尝试对虚拟磁盘文件及其中的数据库文件进行尽可能的修补之后,由用户方对恢复出来的数据进行验证。经过验证,服务器中绝大部分数据都恢复出来了,重要数据都在,用户方认可本次数据恢复结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/855487.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

13.4 内存管理

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

【课程系列04】某客时间AI大模型应用开发实战营

网盘链接 https://pan.baidu.com/s/1blR1eIMDIIp6AbxU4YaK9w 课程收获 "AI大模型应用开发实战营"是一个为期八周的在线课程,旨在教授学员如何开发和应用AI大模型。课程内容从基础理论到实际应用,逐步深入,覆盖了以下要点&#x…

python发邮件给多人的注意事项?如何群发?

python发邮件给多人的效率如何?python发邮件的方法? 在利用Python编程语言实现邮件群发功能时,需要注意许多细节,以确保邮件能有效送达且用户体验良好。AokSend将详细探讨python发邮件给多人时需要注意的各个方面,以帮…

Python邮件加密传输如何实现?有哪些技巧?

Python邮件怎么设置服务器?如何使用Python发送邮件? 为了确保邮件内容在传输过程中不被窃听或篡改,使用加密传输是必不可少的。在使用Python邮件传输时,加密传输是保障信息安全的关键手段。AokSend将详细探讨Python邮件加密传输的…

【C++提高编程-10】----C++ STL常用拷贝和替换算法

🎩 欢迎来到技术探索的奇幻世界👨‍💻 📜 个人主页:一伦明悦-CSDN博客 ✍🏻 作者简介: C软件开发、Python机器学习爱好者 🗣️ 互动与支持:💬评论 &…

【Python】类和对象的深入解析

目录 前言 什么是类? 定义一个类 创建对象 访问和修改属性 方法 类的继承 多态 封装 特殊方法 属性装饰器 总结 前言 Python 是一种面向对象的编程语言,它允许程序员通过类和对象来组织和管理代码。面向对象编程(OOP&#xff09…

智慧校园的构建要素是什么

在当今数字时代,智慧校园的构建已成为教育界的热门话题。随着技术的不断进步,学校不再只是传统的教学场所,而是一个充满智能化和创新的环境。那么,智慧校园的构建要素究竟是什么呢? 基础设施建设 高速、稳定的网络覆…

pygame游戏开发

Pygame游戏开发 pygame简介 模块库请参考:pygame官方文档 pygame可以用作游戏开发,但在商业游戏中真正的开发工具却不是pygame。使用pygame开发游戏周期长。 安装pygame 在pycharm中安装第三方库pygame: 在计算机中安装pygame&#xf…

ElasticSearch学习篇13_《检索技术核心20讲》进阶篇之LSM树

背景 学习极客实践课程《检索技术核心20讲》https://time.geekbang.org/column/article/215243,文档形式记录笔记。 内容 磁盘和内存数据读取特点 工业界中数据量往往很庞大,比如数据无法全部加载进内存,无法支持索引的高效实时更新&…

Nature Electronics|微器件在柔性基底上的高密度集成(可穿戴电子/界面调控/电子皮肤/柔性电子)

2024年4月22日,韩国首尔大学Yongtaek Hong和美国斯坦福大学Byeongmoon Lee团队,在《Nature Electronics》上发布了一篇题为“A site-selective integration strategy for microdevices on conformable substrates”的论文。论文内容如下: 一、 摘要 微器件可以被集成在柔性…

【GD32F303红枫派使用手册】第十九节

19.1 实验内容 通过本实验主要学习以下内容: SPI简介 GD32F303 SPI简介 SPI NOR FLASH——GD25Q32ESIGR简介 使用GD32F303 SPI接口实现对GD25Q32ESIGR的读写操作 19.2 实验原理 19.2.1 SPI简介 SPI(Serial Peripheral interface)&…

Django期末重点

思维导图 一、Djanog框架基础 MVT设计模式(model模型【操作数据库】、template模板【页面展示】、view视图【处理请求和调用模型模板】) 二、Django项目框架搭建 创建项目骨架 django-admin startproject 项目名启动服务 (1)p…

STM32(七)———TIM定时器(基本and通用)

文章目录 前言一、通用定时器TIM简介1.STM32F10X系列总共最多有八个定时器:2.三种STM32定时器的区别:3.STM32 的通用定时器功能:4.计数器模式 二、基本定时器1.基本定时器的结构框图2.定时时间的计算3.定时器的结构体和库函数 总结 前言 一个…

如何实现ElementUI动态表头?

可能看到这个标题,有些小伙伴会有些疑惑,动态表头是个什么东西,怎么没听说过? 其实动态表头在企业的项目中用途还是非常广泛的,比如erp系统什么的 那么动态表头是什么呢?说简单点就是让ElementUI的Table表格可以实现自定义表头展示+表头拖拽排序的一个功能 这个东西我…

<Rust><iced>基于rust使用iced构建GUI实例:如何将svg格式转为ico格式图片?

前言 本专栏是Rust实例应用。 环境配置 平台:windows 软件:vscode 语言:rust 库:iced、iced_aw 概述 本文是专栏第4篇实例,依旧是一个图像格式转换程序,基于rust的svg库resvg、图像处理库image以及文件处理库rfd。 流程是先用resvg获取svg图片的数据并将其转为png数据…

20.Dcoker跨宿主机容器通信之overlay

Dcoker跨宿主机容器通信之overlay http://www.cnblogs.com/CloudMan6/p/7270551.html 环境准备,三台机器,主机名为docker01(192.168.111.11)、docker02(192.168.111.12)、docker03(192.168.111…

电子竞赛5——作息时间控制器

一 . 题目要求 用单片机制作作息时间控制器;用四位数码管显示实时时钟(时、分,24小时制、12小时制),有秒闪,小时十位有零消隐;可用数字键或、-键校时(可快速、-)被校位&…

【ARMv8/ARMv9 硬件加速系列 4 -- 加解密 Cryptographic Extension 介绍】

文章目录 ARMv8.0 Cryptographic ExtensionFEAT_AESFEAT_PMULLFEAT_SHA1FEAT_SHA256ARMv8.2 扩展FEAT_SHA512FEAT_SHA3FEAT_SM3FEAT_SM4ARMv8.0 Cryptographic Extension ARMv8.0引入了加密扩展(Cryptographic Extension),旨在加速加密和解密操作。这一扩展通过新增专用指令…

C++代码编写风格:Header-Only与声明实现分离的选择

C代码编写风格:Header-Only与声明实现分离的选择 最近看到一些小伙伴问到了几个比较有趣的问题,这里总结一下,这些都是实际面试中出现过的问题,看看你知道多少,考察一下底子。 面试问题1:你通常编写代码的风…

JAVA云HIS医院管理系统源码 云HIS系统的应用场景

JAVA云HIS医院管理系统源码 云HIS系统的应用场景 云HIS是针对中小医疗健康机构推出的一套基于云端的诊所云HIS服务平台,包括内部管理系统、临床辅助决策系统、体检系统、客户管理与服务系统、健康管理系统、知识管理系统、医患沟通系统、线上营销系统、其他外部系…