服务器数据恢复—EMC存储RAID5磁盘阵列数据恢复案例

news2024/10/25 15:27:49

服务器数据恢复环境:
一台EMC某型号存储设备,该存储中有一组由12块(包括2块热备盘)STAT硬盘组建的raid5阵列。

服务器故障:
该存储在运行过程中突然崩溃,raid瘫痪。数据恢复工程师到达现场对故障存储设备进行初检,发现raid中有两块硬盘掉线但只有一块热备盘成功激活,所以导致阵列瘫痪,上层lun无法使用。

服务器数据恢复过程:
1、将故障存储中所有磁盘标记后取出。由硬件工程师检测后没有发现有磁盘存在物理故障,使用坏道检测工具检测也没有发现有磁盘存在坏道。将所有磁盘以只读方式进行扇区级全盘镜像,由于源磁盘的扇区大小是520字节,做完镜像后将520字节转换成512字节。
2、由于故障存储中所有硬盘经过检测没有发现存在物理故障和坏道,基本上可以推断硬盘掉线是磁盘读写性能不稳定造成的。EMC控制器的磁盘检测策略十分严格,读写性能不稳定的磁盘一般会被控制器判定为坏盘并踢出raid。当raid中掉线盘超过该raid级别的允许掉盘数量的极限,raid就会崩溃,基于raid的lun不可用。本案例中只有一个lun分配给sun小机,上层文件系统是ZFS。
3、EMC存储的LUN都是基于RAID。通过分析发现有2块盘完全没有数据,EMC存储的管理界面上显示这2块没有数据的盘都是热备盘,其中一块热备盘替换了一块离线盘。虽然这块热备盘成功激活,RAID中还有一块硬盘离线,所以数据没有同步到这块热备盘中。继续分析其他10块盘,分析数据在硬盘中的分布规律、RAID条带大小以及盘序等重组RAID所需要的信息。


4、由于RAID中有两块盘掉线,需要搞清楚这两块盘的掉线顺序。分析每一块盘中的数据,发现有一块硬盘在同一个条带上的数据和其他硬盘明显不一样,因此初步判断此硬盘可能是最先掉线的。通过北亚企安自主开发的RAID校验程序对这个条带做校验,最终确定这块硬盘就是最先掉线的。
5、根据上面步骤获取到的信息将RAID重组出来。EMC存储的LUN是基于RAID的。分析LUN在RAID中的分配信息,以及LUN分配的数据块MAP。根据上述信息,用北亚企安自主开发的程序解释LUN的数据MAP并导出LUN的所有数据。
6、用北亚企安自主开发的ZFS文件系统解释程序对生成的LUN做文件系统解释,但是在解释某些文件系统元文件的时候报错。开发工程师对程序做debug调试并分析程序报错原因,文件系统工程师分析ZFS文件系统是否因为版本原因而导致程序不支持。经过长达数小时的分析与调试,发现ZFS文件系统因存储瘫痪导致某些元文件损坏,从而导致文件系统解释报错。
7、北亚企安数据恢复工程师手工修复这些损坏的元文件,直到ZFS文件系统能够正常解析。
8、解析ZFS文件系统,解析所有文件节点及目录结构。用户方工程师对恢复出来的数据进行随机验证,经过仔细验证没有发现问题。

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

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

相关文章

GPT联网分析到底有多强?实测效果告诉你答案!

文章目录 零、前言一、gpt-4o操作指导gpt4o 二、感受 零、前言 早上在聊到博主在选择平台时,要选择哪个平台发展。 通过GPT查询并分析了小红书,微信视频号,抖音和B站的用户群体。 由此可举一反三,如何让GPT联网分析,…

部署私有仓库以及docker web ui应用

官方地址:https://hub.docker.com/_/registry/tags 一、拉取registry私有仓库镜像 docker pull registry:latest 二、运⾏容器 docker run -itd -v /home/dockerdata/registry:/var/lib/registry --name "pri_registry1" --restartalways -p 5000:5000 …

如何针对项目中的技术难点准备面试?——黑马点评为例

最核心的,包装和准备 个人项目,怎么包装?一定要写出代码才可以吗? 你可以在系统A中实现就可以,了解其中实现的细节,怎么跟面试官对线等等,这些话术到位了之后,再把它融入到系统B&a…

《CUDA编程》7.全局内存的合理使用

上一章简单的介绍了一下各种内存,本章开始详细讲解各个内存的合理使用,在所有设备中,全局内存的访问速度最慢,是CUDA程序的一个性能瓶颈,所以值得特别关注 1 全局内存的合并与非合并访问 对全局内存的访问将触发内存事…

LabVIEW如何实现高精度定时器

在LabVIEW中实现高精度定时器通常需要考虑以下几个方面:定时器的精度要求、操作系统的调度机制、硬件资源(如计时器、触发器)等。以下是几种常见的实现方式: ​ 1. 使用 Wait(ms) 或 Wait Until Next ms Multiple VI 这两个函数…

【无人机设计与控制】PID_积分滑模_积分反步四旋翼无人机轨迹跟踪控制算法

摘要 本文基于四旋翼无人机设计与控制,提出了一种结合PID控制、积分滑模控制以及积分反步控制的轨迹跟踪算法。该算法通过调节无人机的运动轨迹,提升其在复杂环境下的稳定性与抗扰动能力。实验结果表明,该算法能有效改善无人机的轨迹跟踪精度…

【python实操】python小程序之计算对象个数、游戏更新分数

引言 python小程序之计算对象个数、游戏更新分数 文章目录 引言一、计算对象个数1.1 题目1.2 代码1.3 代码解释1.3.1 代码结构1.3.2 模块解释1.3.3 解释输出 二、游戏更新分数2.1 题目2.2 代码2.3 代码解释2.3.1 定义 Game 类2.3.2 创建 Game 实例并调用方法 三、思考3.1 计算对…

C++之String类模拟实现(下)

片头 哈喽~小伙伴们,在上一篇中,我们讲解了C的string类的相关函数,这一章中,我们将继续深入学习string类函数,准备好了吗?咱们开始咯~ 五、对内容进行修改 ⑤insert函数 在指定位置插入字符或者字符串 …

基于Raspberry Pi人脸识别自动门

人脸识别自动门 简介 在当今数字化时代,智能家居安全变得越来越重要。今天,我要向大家介绍一个结合了安全性与便利性的项目——人脸识别自动门。这个项目通过在门上实施基于面部识别的高级安全系统,使用摄像头验证房主的面部,自…

重学SpringBoot3-集成Spring Boot Actuator

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-集成Spring Boot Actuator 1. 什么是 Spring Boot Actuator?2. Spring Boot Actuator 的核心功能3. Spring Boot 3 中集成 Actuator3.1 添加…

ElasticSearch是什么?

1.概述 Elasticsearch 是一个基于 Apache Lucene 构建的开源分布式搜索引擎和分析引擎。它专为云计算环境设计,提供了一个分布式的、高可用的实时分析和搜索平台。Elasticsearch 可以处理大量数据,并且具备横向扩展能力,能够通过增加更多的硬…

2014年国赛高教杯数学建模C题生猪养殖场的经营管理解题全过程文档及程序

2014年国赛高教杯数学建模 C题 生猪养殖场的经营管理 某养猪场最多能养10000头猪,该养猪场利用自己的种猪进行繁育。养猪的一般过程是:母猪配种后怀孕约114天产下乳猪,经过哺乳期后乳猪成为小猪。小猪的一部分将被选为种猪(其中公…

20240727 影石 笔试

文章目录 1、选择题1.11.21.31.41.51.61.71.81.91.10 2、简答题2.12.22.32.42.52.62.72.8 3、编程题3.1 岗位:云台嵌入式工程师-2025校招 题型:10 道选择题,8 道简答题,1 道编程题 1、选择题 1.1 【多选】以下关于DMA的描述哪些…

Pytest中fixture含返回值时如何隐式自动应用?

在我们使用 Pytest 框架进行自动化测试时,强大的 fixture 夹具为框架的灵活应用提供了极大的便利。比如我们可以利用 fixture 的autouse属性,使它在测试方法的不同范围层级上自动生效。但如果要引用fixture的返回,我们通常还是要明确指定&…

FMEA 在智能制造中的应用与挑战_SunFMEA

【大家好,我是唐Sun,唐Sun的唐,唐Sun的Sun。一站式数智工厂解决方案服务商】 FMEA(失效模式与影响分析)在智能制造中具有重要的应用价值,但同时也面临着一系列的挑战。 应用: 产品设计优化 在…

react18+react-transition-group实现路由切换过度

效果如下 官网安装对应的插件 创建对应的样式 .fade-enter {opacity: 0; } .fade-exit {opacity: 1; } .fade-enter-active {opacity: 1; } .fade-exit-active {opacity: 0; } .fade-enter-active, .fade-exit-active {transition: opacity 500ms; }const location useLoca…

WSL(Windows Subsystem for Linux)——简单的双系统开发

文章目录 WSLWSL的作用WSL的使用WSL的安装挂载磁盘的作用安装linux发行版wsl下载mysql,mongodb,redis WSL 前言:本人由于在开发中需要linux环境,同时还想要直接在Windows下开发,来提升开发效率,随即简单学…

【问题分析】使用gperftools分析排查内存问题

背景 当程序长时间允许时(压测、服务器程序),就会面临更大的挑战,其中内存泄漏就是一类典型的问题,内存泄漏往往不易发现,导致的现象更是千奇百怪,本文主要介绍如何借助gperftools分析一个模块的内存泄漏 案例代码 …

SpringBoot框架在高校竞赛管理中的创新应用

3系统分析 3.1可行性分析 通过对本高校学科竞赛平台实行的目的初步调查和分析,提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本高校学科竞赛平台采用SSM框架,JAVA作为开发语…

编译/引导EDK2 树莓派4

格蠹的幽兰代码本(RK3588)支持UEFI启动,在阅读RK3588代码的时候发现EDK2也对树莓派系列进行了支持。经过一番尝试,借助幽兰,我也在树莓派上bringup EFI bios(只能引导到Bios setup界面,不知道如何安装OS),在此记录SOP。…