【北亚企安数据恢复】RAIDZ多块磁盘离线导致服务器崩溃的数据恢复案例

服务器数据恢复环境:
ORACLE SUN ZFS某型号存储,共40块磁盘组建存储池,其中的36块磁盘分为三组,每组12块,单个组使用ZFS特有的RAIDZ管理所有磁盘,RAIDZ级别为2;另外的4块磁盘作为全局热备。存储池内划分出若干空间映射到服务器使用。

服务器故障:
服务器正常运行过程中崩溃,服务器管理员重启设备后无法进入系统。通过对服务器和存储的初步检测以及和管理人员的沟通,排除了断电、进水、异常操作等外部因素。

服务器数据恢复过程:
1、将存储中所有磁盘编号后取出,硬件工程师检测后没有发现有硬盘存在硬件故障。以只读方式将所有磁盘进行扇区级全盘镜像,镜像完成后按照编号将所有磁盘还原到原存储中。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于磁盘镜像文件分析底层数据,发现全局热备盘全部启用。
在ZFS文件系统中,ZPOOL(池)的子设备有很多种类:块设备、文件、磁盘等,本案例中三组RAIDZ作为子设备。
分析底层数据发现,三组RAIDZ中的两组RAIDZ分别启用的热备盘个数为1和3。北亚企安数据恢复工程师基于获取到的信息推断故障过程:热备盘启用后,在热备盘无冗余状态下,第一组RAIDZ中又有一块磁盘离线,第二组RAIDZ中则又有两块磁盘离线,ZPOOL进入高负荷状态;直到第二组RAIDZ中第三块盘离线,RAIDZ崩溃,ZPOOL下线,服务器崩溃。
ZFS管理的存储池中所有磁盘都由ZFS进行管理。常规RAID按照特定的规则组建池,并不关心文件在子设备上的位置;而ZFS会为每次写入的数据分配适当大小的空间,并计算得到指向子设备的数据指针。RAIDZ这种特性导致RAIDZ缺盘时无法直接通过校验得到数据,而必须将整个ZPOOL作为一个整体进行解析。
3、手工截取事务块数据,北亚企安数据恢复工程师编写程序获取最大事务号入口。
获取文件系统入口:

获取到文件系统入口后,北亚企安数据恢复工程师编写数据指针解析程序解析地址。
解析数据指针:

4、获取到文件系统入口点在各磁盘分布情况后,北亚企安数据恢复工程师手动截取&分析文件系统内部结构。由于入口分布所在的磁盘组无缺失盘,可直接提取信息。根据ZFS的数据存储结构顺利找到映射的LUN名称,然后找到其节点。
5、北亚企安数据恢复工程师编写解析程序解析ZFS&提取数据。
编辑配置文件,提取ZVOL卷:

6、由于磁盘组内缺盘数目较多,每个IO流都需要通过校验得到,提取进度极为缓慢。通过和用户沟通后得知用户需要恢复的数据在一个vhd内,经过分析发现这个vhd在ZVOL卷的尾部,计算其起始位置后从此位置开始提取数据。
7、Vhd提取完毕后,验证其内部的压缩包、图片、视频等文件,均可正常打开。
8、用户方对数据进行验证,经过验证发现恢复出来的文件数量与系统自动记录的文件数量基本一致,文件全部可以正常打开。本次服务器数据恢复工作完成。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

关于 overflow 滚动条(滑动条)配置,简单使用的案例和案例代码

运行环境: Google Chrome 浏览器 前言: 滚动条的样式在CSS中属于伪元素(pseudo-element),滚动条的样式则需要通过使用::-webkit-scrollbar 伪元素来定义。 滚动条(滑动条)的区域内包含三个基本部分,轨道…

视频智能识别周界入侵检测AI智能分析网关V4如何配置ONVIF摄像机接入

AI边缘计算智能分析网关V4性能高、功耗低、检测速度快,易安装、易维护,硬件内置了近40种AI算法模型,支持对接入的视频图像进行人、车、物、行为等实时检测分析,上报识别结果,并能进行语音告警播放。算法可按需组合、按…

K8S Informer机制原理解读 | 架构设计

在Kubernetes系统中,组件之间通过HTTP协议进行通信,在不依赖任何中间件的情况下需要保证消息的实时性、可靠性、顺序性等。那么Kubernetes是如何做到的呢?答案就是Informer机制。Kubernetes的其他组件都是通过client-go的Informer机制与Kuber…

12- OpenCV:算子(Sobel和Laplance) 和Canny边缘检测 详解

目录 一、Sobel算子 1、卷积应用-图像边缘提取 2、Sobel算子(索贝尔算子) 3、相关的API(代码例子) 二、Laplance算子 1、理论 2、API使用(代码例子) 三、Canny边缘检测 1、Canny算法介绍 2、API使…

每周一算法:数独游戏

题目链接 数独游戏 题目描述 数独是根据 9 9 9 \times 9 99 盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫内的数字均含 1 − 9 1 - 9 1−9 ,不重复。每一道合格的数独谜题都有且仅有唯一答案&#x…

基于网络爬虫的天气数据分析

二、网络爬虫设计 网络爬虫原理 网络爬虫是一种自动化程序,用于从互联网上获取数据。其工作原理可以分为以下几个步骤: 定义起始点:网络爬虫首先需要定义一个或多个起始点(URL),从这些起始点开始抓取数据…

中国IT产经新闻:AI人工智对就业产生影响但既是挑战也是机遇

近日国际权威人士表示,人工智能AI将影响全球近40%的就业岗位,其中相对新兴市场和低收入国家而言,发达经济体可能受到的冲击更大!此言一出迅速应发了关于人工智能将对就业产生影响的大讨论! 我们都知道随着科技的飞速发…

美摄视频SDK的HDR格式编辑方案

在当今的视觉媒体时代,高动态范围(HDR)技术已成为高质量视频内容的标配。为了满足企业对高效、高质量视频处理的需求,美摄科技推出了业界领先的视频SDK,全面支持多种HDR标准的图像视频进行处理。 一、核心优势 HDR全…

微信内测“听一听” 音乐音频业务提至一级入口;美团 AI 平台视觉中心负责人魏晓林离职;腾讯视频生成模型 VideoCrafter2;广州房价连跌12个月

今日精选 • 微信内测“听一听” 音乐音频业务提至一级入口• 美团 AI 平台视觉中心负责人魏晓林离职• 腾讯推出视频生成模型 VideoCrafter2,• 广州房价连跌12个月 投融资与企业动态 • TikTok 越南推出 Thu Duc Market 在线销售渠道• 亚马逊将在五年内在日本…

本地MinIO存储服务通过Java程序结合Cpolar内网穿透进行远程连接

文章目录 前言1. 创建Buckets和Access Keys2. Linux 安装Cpolar3. 创建连接MinIO服务公网地址4. 远程调用MinIO服务小结5. 固定连接TCP公网地址6. 固定地址连接测试 前言 MinIO是一款高性能、分布式的对象存储系统,它可以100%的运行在标准硬件上,即X86等…

深度学习模型之yolov8实例分割模型TesorRT部署-python版本

1 模型转换 从github上下载官方yolov8版本,当前使用的版本是2023年9月份更新的版本,作者一直在更新。官网地址 2 加载模型 模型的训练和测试在官方文档上,有详细的说明,yolov8中文文档这里不做过多说明,v8现在训练是…

自动化测试框架有哪些?

前言 自动化测试常用的Python框架有哪些?常用的框架有Robot Framework、Pytest、UnitTest/PyUnit、Behave、Lettuce。Pytest、Robot Framework和UnitTest主要用于功能与单元测试,Lettuce和Behave仅适用于行为驱动测试。 一、Robot Framework Python测…

2018年认证杯SPSSPRO杯数学建模B题(第二阶段)动态模糊图像全过程文档及程序

2018年认证杯SPSSPRO杯数学建模 动态模糊图像复原 B题 动态模糊图像 原题再现: 人眼由于存在视觉暂留效应,所以看运动的物体时,看到的每一帧画面都包含了一段时间内 (大约 1/24 秒) 的运动过程,所以这帧画面事实上是模糊的。对…

Linux环境下,针对QT软件工程搭建C++Test单元测试环境的操作指南

文章目录 前言一、安装QT二、安装CTest三、使用QT生成.bdf文件四、创建CTest工程注意事项 前言 CTest是Parasoft公司出品的一款可以针对C/C源代码进行静态分析、单元测试、集成测试的测试工具。本文主要讲解如何在Linux环境下,搭建QT插件版的CTest测试环境。 一、…

Oracle 数据库备份与恢复的重要性与最佳实践

文章目录 一、备份的重要性二、备份工具-RMAN四、比较备份策略五、实例恢复六、完全恢复与不完全恢复七、备份与恢复脚本 引言: 在现代信息时代,数据已成为组织和企业最重要的资产之一。保护和恢复数据的能力对于确保业务连续性和减少潜在风险至关重要。…

基于网络爬虫的微博热点分析,包括文本分析和主题分析

基于Python的网络爬虫的微博热点分析是一项技术上具有挑战性的任务。我们使用requests库来获取微博热点数据,并使用pandas对数据进行处理和分析。为了更好地理解微博热点话题,我们采用LDA主题分析方法,结合jieba分词工具将文本分割成有意义的…

基于docker创建nginx容器

docker一键安装可以参考我这个博客:一键安装docker 1.创建基础容器 docker run -p280:280 --name nginx -d nginx创建挂载到容器的宿主机文件夹 mkdir -p /home/000nginx-ebrms-ftp/html mkdir -p /home/000nginx-ebrms-ftp/logs mkdir -p /home/000nginx-ebrms-f…

最终Docker6:nacos集群部署

目录 mysql容器构建 1.进入soft 文件夹,创建mysql文件夹 2.进入conf文件夹 放入my.conf 配置文件 3.运行mysql容器 4.进入script文件夹 导入 sql文件 5.进入mysql 容器 并登录 6.创建nacos 数据库并使用,运行nacos.sql文件 7.授予用户所有权限 部…

Unity 编辑器篇|(十一)Gizmos (全面总结 | 建议收藏)

目录 1. 前言2 参数总览3 Gizmos绘制3.1 立方体:DrawCube3.2 视锥:DrawFrustum3.3 贴图:DrawGUITexture3.4 图标:DrawIcon3.5 线段:DrawLine3.6 网格:DrawMesh3.7 射线:DrawRay3.8 球体&#xf…
最新文章