【服务器数据恢复】断电导致raid6磁盘扇区损坏的数据恢复案例

news2024/11/24 17:22:08

服务器数据恢复环境:
某品牌存储,12块SAS硬盘组建RAID6磁盘阵列,划分一个卷,分配给几台Vmware ESXI主机做共享存储。
卷中存放了大量的Windows虚拟机,虚拟机通过模板创建的,系统盘大小一致,数据盘大小不确定,数据盘都是精简模式。

服务器故障:
机房意外断电,电力供应恢复正常后存储无法正常开机使用。经过用户方工程师诊断,初步判断是意外断电导致的存储设备中的磁盘阵列损坏。

服务器数据恢复过程:
1、尝试将故障存储中所有磁盘以只读方式做全盘镜像备份,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。

 

2、在镜像的过程中发现大量损坏扇区。初步判断是因为这类硬盘的读取机制与常规硬盘不一样。尝试更换主机、HBA卡、扩展柜和操作系统,均出现相同的故障。与用户方工程师沟通后得知raid控制器对磁盘并没有特殊要求。
3、对硬盘损坏扇区的分布规律进行检测,发现以下规律:
a、损坏扇区以256个扇区为单位分布。
b、除了损坏扇区片断的起始位置不固定,后面的损坏扇区都是以2816个扇区为间隔。
所有磁盘的损坏扇区分布如下表(只列出前3个损坏扇区):

4、北亚企安数据恢复工程师编写小程序对每个磁盘的损坏扇区做绕过处理,用此程序镜像完所有磁盘的数据。
5、基于镜像文件分析损坏扇区,发现损坏扇区呈规律性出现:
a、每段损坏扇区的区域大小为256。
b、损坏扇区分布为固定区域,每跳过11个256扇区就会遇到一个坏的256扇区。
c、损坏扇区的位置总是位于RAID的P校验或Q校验区域。
d、所有磁盘中只有10号盘有一个自然坏道。
6、通过分析扇区得知分区大小(扇区数)。按照RAID6的模式计算后得出的结果和raid控制器中保留的RAID信息区域大小吻合。根据物理硬盘底层表现,分区表大小为512字节,后面无8字节校验,大量的0扇区也无8字节校验。综合以上信息可以确定故障存储并未启用DA技术(520字节扇区)。
分区大小如下图(GPT分区表项底层表现,涂色部分表示分区大小,单位512字节扇区,64bit):

 

 

7、重组RAID。
a、存储使用的是标准的RAID6阵列。整个存储被划分为一个卷并分配给几台ESXI做共享存储,因此卷的文件系统是VMFS。VMFS卷中存放了大量的Windows虚拟机,Windows虚拟机使用的NTFS文件系统,可以根据NTFS中的MFT的顺序分析出RAID条带的大小以及RAID的走向。
b、镜像完所有磁盘后发现最后一块硬盘并没有像其他磁盘一样有大量的坏道。这块磁盘中有大量的未损坏扇区,这些未损坏扇区基本上是全0扇区,可以判断这块硬盘是热备盘。
c、根据分析出来的RAID相关信息重组RAID。
重组完成后可以看到目录结构,但是不确定是否为最新状态。检测几个虚拟机发现有部分虚拟机的数据异常,初步判断RAID中存在掉线的磁盘。将RAID中的每一块磁盘依次踢掉后再查看刚才数据异常的地方,没有发现问题原因。
仔细分析底层数据发现问题不是出在RAID层面,而是出在VMFS文件系统层面。如果VMFS文件系统大于16TB,就会存在一些其他的记录信息,组建RAID时候需要跳过这些记录信息。再次重组RAID后查看以前数据异常的地方,发现问题已经解决了。
挑选其中的一台虚拟机做验证,将所有磁盘加入RIAD中后,发现这台虚拟机是可以启动的,但在缺盘的情况下启动就出现问题。因此可以判断该RAID在不缺盘的状态下为最佳。

8、验证虚拟机。
对重要的虚拟机做验证,发现大部分虚拟机可以开机进入登录界面。只有有少部分虚拟机开机蓝屏或开机检测磁盘,但是经过光盘修复之后都可以正常启动。

 

9、验证数据库。
针对重要虚拟机中的数据库做验证,数据库都正常。但是有一个数据库,据用户描述好像缺少部分数据,但是经过仔细核对后发现这些数据在数据库中本来就不存在。通过查询master数据库中的系统视图,查出所有数据库信息如下:

 

10、检查VMFS卷的完整性。
由于虚拟机数量较大,对每台虚拟机进行验证不太现实。所以我们对整个VMFS卷做检测,在检测VMFS卷的过程中发现部分虚拟机或虚拟机文件被破坏。

 

11、批量恢复数据。
准备目标磁盘,组建一个RAID阵列。将重组的RAID数据镜像到目标阵列上,然后利用北亚企安自研程序解析整个VMFS文件系统&提取VMFS卷。

12、移交数据。
在北亚企安数据恢复工程师的协助下,将恢复出来的数据迁移到用户方准备好的环境中。

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

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

相关文章

苹果营收及增速分析,2022年营收达2055亿美元,增速为7%

众所周知,2007年1月,被乔布斯称为“苹果将彻底改变手机”的第一代iPhone正式发布,并于当年6月底上市销售。上市后,其受欢迎程度令人咋舌,销量一骑绝尘。短短5年内,其市场份额也由最初的3%升至18%&#xff0…

学术科研专用ChatGPT来了!

自从ChatGPT发布之后,各路大神都开始研究如何把它加入到自己的「科研工作流」当中。 比如「数学天才」陶哲轩就表示,他已经将ChatGPT纳入了自己的工作流程。 最近,一位网友也分享了自己的「ChatGPT 学术优化」项目。 没想到,在Gi…

六、数据仓库详细介绍(ETL)工具篇上

0x00 前言 在上篇,我们介绍过,ETL 的实现方式可以分为三种类型:完全依赖数据库、自研、第三方 ETL 工具。 我们需要根据实际情况去选择合适的方案。对于相对简单的 ETL 系统我们可以完全依赖数据库或者内部开发一个小型的的流程控制、调度工…

燕千云助力ITSM知识沉淀与复用

数字化时代IT服务知识沉淀痛点 随着企业数字化进程的推进,企业需要购入更多的智能化、数字化设备及软件,高效生产的同时,问题也层出不穷。而IT服务管理,可以为企业减少密集型的资源消耗,帮助企业以更高效、更流程化的…

28K入职字节的那天,我哭了····

先说一下自己的个人情况,计算机专业,18年本科毕业,一毕业就进入了“阿里”测试岗(进去才知道是接了个阿里外包项目,可是刚毕业谁知道什么外包不外包的)。 更悲催的是:刚入职因为家里出现一些变故,没有精力…

小电源,大讲究

高速先生成员--姜杰 成功的电源设计千篇一律,失败的直流压降各有各的秘密。 对于电源的直流压降,高速先生之前分享过一些低电压、大电流的电源案例,其实,对于种类繁多的小电源,由于电流相对较小,设计过程中…

玩了一下Midjourney很酷的设计工具

阿酷tony / 原创内容 / 2023-5-23 Midjourney是一款2022年3月面世的AI绘画工具,只要输入想到的文字,就能通过人工智能产出相对应的图片,耗时只有大约一分钟。 图 / Midjourney效果 图 / Midjourney效果 图 / Midjourney效果 图 / Midjourne…

基于copy命令的图片文本隐写(Misc出题)

这是一张普通的图片 我们使用010editor打开,很正常的jpg图片 这里顺便说一下,jpg图片会高亮,png则不会,下图则是一张png的图片 新建一个TXT文本,里面是我们想要给出的提示内容 在cmd里面切换到这些文件所在目录 copy命…

详细讲解u-boot之网络移植与调试

目录 一、前章回顾 二、硬件原理图检查 1.确认硬件原理图的fec对应的phy地址 2.修改网卡fec1的phy地址 3.网络初始化检查 4.fec部分管脚确认 5.检查是否存在多设备管脚复用 6.使用默认ENET2 三、编译烧写,下载验证 1.设置网络环境变量 2.使用软件配置&…

Http协议网络读卡器Request获取刷卡数据Response回应驱动显示

三种提交方式可自由设置 RFID网络WIFI无线TCP/UDP/HTTP可编程二次开发读卡器POE供电语音-淘宝网 (taobao.com) HttpReader.aspx.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebCont…

Leetcode763. 划分字母区间

Every day a Leetcode 题目来源:763. 划分字母区间 解法1:贪心 题解:划分字母区间 由于同一个字母只能出现在同一个片段,显然同一个字母的第一次出现的下标位置和最后一次出现的下标位置必须出现在同一个片段。因此需要遍历字…

Python-对象的三大特性

Python-对象的三大特性 更多优秀文章,请扫码关注个人微信公众号或搜索“程序猿小杨”添加。 面向对象编程,是许多编程语言都支持的一种编程思想。简单理解是:基于模板(类)去创建实体(对象),使用…

好程序员:web前端学习要多久?自学前端能找到工作吗?

不少小伙伴看到前端这个岗位发展前景好,薪资待遇高,工作相对稳定,很多人都想转行学前端,但好程序员想说的是,这些都不了解,你怎么能把前端学会呢。所以想要转行学前端的小伙伴们还是赶紧收藏这篇文章吧~ 一…

[Nacos] Nacos Server主要类和接口 (五)

InstanceController: 处理器, 处理服务实例的心跳和注册等请求。 core/Service: 在Nacos客户端的一个微服务名称定义的微服务, 在Nacos服务端是以Service实例的形式出现的。类似于ServiceInfo, ServiceInfo为客户端服务, Service为服务端服务。 RecordListener: Service类实现…

2022年华数杯数学建模A题环形振荡器的优化设计解题全过程文档及程序

2022年华数杯全国大学生数学建模 A题 环形振荡器的优化设计 原题再现: 芯片是指内含集成电路的硅片,在我们日常生活中的手机、电脑、电视、家用电器等领域都会使用到,是高端制造业的核心基石。芯片的制造工艺非常复杂,要经历上千…

ChatGPT的原理与前端领域实践 | 京东云技术团队

一、ChatGPT 简介 ChatGPT的火爆 ChatGPT作为一个web应用,自22年12月发布,仅仅不到3个月的时间,月活用户就累积到1亿。在此之前,最快记录的保持者也需要9个月才达到月活1亿。 ChatGPT的反爬 https://chat.openai.com 因为各种政…

堆排序详解(Heap Sort)

本文已收录于专栏 《算法合集》 目录 一、简单释义1、算法概念2、算法目的3、算法思想4、算法性质 二、核心思想构建排序 三、图形展示宏观展示微观展示 四、算法实现实现思路代码实现客户端调用构造堆的方法元素交换的方法元素比较的方法 运行结果 五、算法描述1、问题描述2、…

如何在 Windows 10 上查找电脑型号

在Windows 10上,计算机型号在许多情况下都可以派上用场。例如,型号可以更容易地找到正确的硬件升级(如内存、存储驱动器、显示器和电源)。或者,如果你必须解决问题或联系技术支持。它还可以方便地将设备编目到库存中。 尽管制造商通常在笔记本电脑或台式机的机箱上使用贴…

Android SDK研发解决方案宝典

Android SDK研发很难整,非常烧脑,与app研发有很多不同。 遇到的问题有很多,各种崩溃,各种空指针,各种冲突需要解决。 所以开发前一定要提前规划好,做好规范。我把我这边一些问题做了记录和分享。 问题1&…

获取订单API接口系列,可接入erp系统场景

抖音和拼多多是目前国内最为火爆的社交和电商平台,为了让更多的开发者能够轻松利用其庞大的用户基础和活跃度,我们提供了相关的订单接口,可帮助开发者快速便捷地完成订单的创建、查询、调整等操作,从而更好地促进业务的发展。以下…