服务器数据恢复—热备盘上线过程中硬盘离线导致raid5阵列崩溃的数据恢复案例

服务器数据恢复环境:
两组分别由4块SAS接口硬盘组建的raid5阵列,两组raid5阵列划分LUN并由LVM管理,格式化为EXT3文件系统。

服务器故障:
RAID5阵列中一块硬盘未知原因离线,热备盘自动激活上线替换离线硬盘。在热备盘上线过程中,raid5阵列中又有一块硬盘离线。热备盘同步失败,该raid阵列崩溃,LVM结构变得不完整,文件系统无法正常使用。
将故障RAID5阵列中的两块离线硬盘标记后取出进行检测,发现先离线硬盘无法识别,初步推断该盘存在硬件故障,需要开盘修复,另一块硬盘可以正常识别。
    
服务器数据恢复过程:
1、将故障raid中其他没有离线的硬盘标记后取出。硬件工程师对这些硬盘进行检测后没有发现有硬盘存在明显硬件故障,都可以正常读取。以只读方式将完好的硬盘进行扇区级全盘镜像。镜像完成后将所有磁盘按照原样还原到原服务器中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。硬件工程师在无尘工作间对故障硬盘进行开盘修复操作。开盘后发现该硬盘盘片磨损严重,无法修复,只能对阵列进行缺盘处理。
为了安全起见,对另一组raid阵列的全部成员盘进行只读全盘镜像。

2、基于镜像文件分析硬盘底层数据。解析EXT3文件系统结构,分析两组raid5阵列的盘序、条带大小、校验方向等配置信息。根据上述分析出来的信息重组两组raid5阵列。由于有一块硬盘无法修复,所以在重组故障raid时只能做缺盘处理。

3、两组raid5阵列重组完成后分析底层数据,找到LVM结构信息并分析LVM结构。将两组raid中作为PV(LVM物理卷)的LUN导出,然后将两个PV重组,重新生成LVM逻辑卷。

4、LVM重组完成之后,使用北亚企安自主开发的工具解析LV(逻辑卷)中的EXT3文件系统,恢复并导出其中的全部数据。

5、在恢复出来的数据中挑选部分压缩文件进行校验,发现部分文件损坏。对比解析结果和恢复结果,发现部分文件损坏且无法恢复。经过分析,初步判断文件损坏与两组raid中部分硬盘存在坏道有关。
两组raid中部分硬盘坏道情况:
Raid 1:2#   67 bad source sectors encountered.
              4#   13 bad source sectors encountered.
Raid 2:2#   37 bad source sectors encountered.
6、由于故障硬盘损坏严重,无法修复,且部分硬盘存在坏道,导致raid结构存在缺陷,部分文件损坏。经过用户方验证,大部份文件恢复出来了,只有小部分文件丢失或者损坏,用户方认可数据恢复结果。

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

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

相关文章

Mac上使用ln指令创建软链接、硬链接

在Mac、Linux和Unix系统中,软连接(Symbolic Link)和硬连接(Hard Link)是两种不同的文件链接方式。它们的主要区别如下: 区别: 硬连接: 不能跨文件系统。不能链接目录(为…

PCIe学习笔记

PCIE高速串行数据总线 当拿到一块板子 比如你要用到PCIE 首先要看这块板子的原理图 一般原理图写的是 PCI express 表示PCIE 以下是Netfpga为例下的PCIE插口元件原理图 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/01dc604fbdc847e8998a978c83c7b2eb.png 一般主…

Elasticsearch Kibana (windows版本) 安装和启动

目录 1.安装 2.启动 elasticsearch 3.启动 kibana 1.安装 elasticsearch下载,官网链接: Download Elasticsearch | Elastichttps://www.elastic.co/downloads/elasticsearch kibana下载,官网链接: Download Kibana Free | G…

linux下查看nginx的安装路径

一般会安装在默认位置下:/usr/local/openresty/nginx 或/usr/local/nginx 查看nginx运行进程,mast process 后面一般是nginx 的安装目录 ps -aux|grep nginx执行ls -l /proc/进程号/exe 会打印出安装/运行位置 ps -aux|grep nginx ls -l /proc/进程号/ex…

strongswan构建测试环境

make-testing脚本文件负责构建strongswan的虚拟化测试系统。位于目录strongswan-5.9.14/testing/,需要以管理员身份运行make-testing。生成测试用到的虚拟客户机镜像,KVM虚拟机和虚拟网络的配置文件位于目录:config/kvm。 ~/strongswan-5.9.14/testing$…

以太网链路详情

文章目录 1、交换机1、常见的概念1、冲突域2、广播域3、以太网卡1、以太网卡帧 4、mac地址1、mac地址表示2、mac地址分类3、mac地址转换为二进制 2、交换机的工作原理1、mac地址表2、交换机三种数据帧处理行为3、为什么会泛洪4、转发5、丢弃 3、mac表怎么获得4、同网段数据通信…

噪杂环境(房车改装市场)离线语音通断器模块

一直在坚持,却很难有机会上热门,在现在这个以流量为导向的时代,貌似很难靠所谓的坚守和热爱把产品成功的推向市场了。目前的客户仍然是以老客户为主,应用场景主要是房车改装,根据九客户的需求定制化一些模块。因为没有…

Android实现RecyclerView边缘渐变效果

Android实现RecyclerView边缘渐变效果 1.前言: 是指在RecyclerView中实现淡入淡出效果的边缘效果。通过这种效果,可以使RecyclerView的边缘在滚动时逐渐淡出或淡入,以提升用户体验。 2.Recyclerview属性: 2.1、requiresFading…

操作系统(10)存储器的层次结构

前言 操作系统存储器的层次结构是一个复杂而有序的系统,它旨在提供不同速度、容量和成本的存储设备,以满足计算机系统中各种数据存取需求。 一、层次结构概述 操作系统存储器的层次结构通常包括多个层次,从高速到低速、从高成本到低成本排列。…

数据库中的代数运算

这些代数基本运算通常被封装在数据库查询语言中,如SQL中的SELECT、FROM、WHERE等子句,使得用户可以更方便地对数据库进行查询和处理。 下面的介绍基于以下两个关系来说明: 传统的集合运算 并(∪) 合并两个关系中的元组…

9_less教程 --[CSS预处理]

LESS(Leaner Style Sheets)是一种CSS预处理器,它扩展了CSS语言,增加了变量、嵌套规则、混合(mixins)、函数等功能,使得样式表的编写更加灵活和易于维护。下面是一些LESS的基础教程内容&#xff…

Vulhub:Fastjson[漏洞复现]

1.2.24-rce(CVE-2017-18349-Fastjson反序列化) 对于 Fastjson 来说,该漏洞的主要问题在于其1.2.24版本中autotype特性允许任意类的反序列化,因此攻击者通过type指定自定义类并实例化,在特定条件下调用这些类的公共方法。如果一个不受信任的 J…

【AI日记】24.12.13 kaggle 比赛 2-3 大扫除、断舍离、自己做饭

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】 工作 参加:kaggle 比赛 Regression with an Insurance Dataset参考:kaggle 回归类入门比赛 House Prices - Advanced Regression Techniques内容:构建自己的EDA&#xff08…

MIF格式详解,javascript加载导出 MIF文件示例

MIF 格式详解 MIF(MapInfo Interchange Format)是由Pitney Bowes Software开发的一种文本格式,用于存储地理空间数据。它通常与地图可视化和地理信息系统(GIS)相关联。MIF文件通常成对出现,一个.mif文件用…

vlan和vlanif

文章目录 1、为什么会有vlan的存在2、vlan(虚拟局域网)1、vlan原理1. 为什么这样划分了2、如何实现不同交换机相同的vlan实现互访呢3、最优化的解决方法,vlan不同交换机4、vlan标签和vlan数据帧 5、vlan实现2、基于vlan的划分方式1、基于接口的vlan划分方式2、基于m…

PyTorch基本使用-自动微分模块

学习目的:掌握自动微分模块的使用 训练神经网络时,最常用的算法就是反向传播。在该算法中,参数(模型权重)会根据损失函数关于对应参数的梯度进行调整。为了计算这些梯度,PyTorch 内置了名为 torch.autogra…

Oracle最佳实践-优化硬解析

前段时间参加oracle CAB,oracle高级服务部门做了一个数据库最佳实践的报告,其中就有一项就是解决未使用绑定变量但执行次数很多的SQL; 对于一个数据库来说如果不知道该如何优化,那么最简单最有效的优化就是减少硬解析,…

源码编译jdk11 超详细教程 openjdk11

关于源代码 当前的openJDK的源代码已经被发布到了github上了,所以我们可以直接从github上下载到。 OpenJDK11u源码托管地址:https://github.com/openjdk/jdk11u 带后缀U的地址,或者发行的jdk包,表示当前版本下的持续跟新版。而…

STL-vector类

目录 vector介绍及其使用 介绍 使用 vector定义 vector iterator vector内存管理 vector内容管理 vector的模拟实现 vector的迭代器失效 会引起迭代器失效的操作 vector介绍及其使用 介绍 向量是序列容器,表示大小可以变化的数组 见 chttps://cpluspl…

http1.1 vs http2.0 速度对比实测

首先对比一下http1.1 vs http2.0 区别: 1. 连接管理: HTTP/1.1: 每个请求/响应都需要一个独立的 TCP 连接,虽然可以使用持久连接(keep-alive)来复用连接,但仍然存在请求队头阻塞(Head-of-Line…