RAID5数据恢复—zfs文件系统下重组RAID5阵列的方法详解

简介: RAID5数据恢复环境:一台存储上有一组由12块SCSI硬盘(11块数据盘+1块热备盘)组建的RAID5磁盘阵列,FreeBSD操作系统+zfs文件系统。RAID5故障:

RAID5数据恢复环境:
一台存储上有一组由12块SCSI硬盘(11块数据盘+1块热备盘)组建的RAID5磁盘阵列,FreeBSD操作系统+zfs文件系统。

RAID5故障:
其中一块盘出现故障,需要重组该raid5磁盘阵列。

RAID5数据恢复过程:
1、将存储关机,将存储中所有磁盘标记后从槽位上取出。以只读方式将所有磁盘进行扇区级全盘镜像,镜像完成后将所有磁盘按照原样还原到存储中。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析所有磁盘底层数据,获取重组raid5所需要的信息,包括:RAID5起始扇区、块大小(条带大小)分析、RAID5成员盘盘序、校验方向、数据走向。
2.1、RAID5起始扇区。
RAID起始扇区是指RAID内的数据在每块物理盘上的起始位置。起始扇区只存在于一块物理盘,大多数情况是0扇区。
1副本.png
使用数据恢复软件的同步功能将11块数据盘定位在0扇区,可以看到11块盘中只有3块盘(1号盘、2号盘和出现故障的那块盘)的0扇区有“55 AA”标志,这个标志说明是MBR磁盘结构。
2副本.png

分析raid5起始扇区位于哪块硬盘。先看出现故障的那块硬盘,这块故障硬盘的结尾显示这是一个GPT头备份且只有128MB大小。
3副本.png

剩下的0扇区有“55 AA”标志的另外2块磁盘(1号盘和2号盘)中的0扇区有起始扇区或校验。
2.2、块大小(条带大小)。
块也称条带,是RAID处理数据的基本单元,不同的RAID条带大小有所不同。由于一个校验区的大小是一个条带的大小,根据这个规则分析该RAID5实例。此实例使用的是zfs文件系统,同步显示11块物理盘的某个扇区,发现有一块盘的此扇区和其他盘的的此扇区明显不一样,这是位于该盘的校验区。顺着该盘的该扇区上下寻找,找到连续的128个扇区。这128个扇区就是这个RAID5的条带大小。
2.3、RAID5盘序。
同步定位11块硬盘的53654656扇区。发现1号盘的该扇区与其他盘的该扇区不同,这个是1号盘的校验区。接着分析1号盘的下一个条带,即53654656+128=53654784扇区,发现2号盘的这个扇区和其他盘的不同,所以2号盘从53654784扇区开始的条带是校验区。以此方式继续分析,找到3号盘的校验区,4号盘的校验区……,“P”字母即表示校验区。按照校验区的位置可得到盘序。这个实例的盘序正好是从1号盘开始依次递增的。
对于左结构来说,0扇区是起始扇区的物理盘一定是RAID5的1号盘;对于右结构来说,0扇区是起始扇区的物理盘一定是RAID5的2号盘。
4副本.png

2.4、校验方向。
RAID5的基本结构有左同步、左异步、右同步、右异步。左和右是对校验方向来说的,区别如表1和表2所示。该RAID5实例很明显是右走向的。
1表副本.png

左同步、左异步结构中的校验块都是从最后一块物理盘开始,右同步、右异步结构中的校验块都是从第一块物理盘开始。
判断校验方向的方法有两种:
方法一、先分析起始扇区,再分析条带大小,然后是盘序,盘序分析出来后校验方向很容易就能看出来。
方法二、如果盘序没有确定下来,只确定了起始扇区和条带大小,可以采用反推法(想了解反推法可以咨询北亚企安数据恢复工程师)。
2.5、数据走向。
数据的走向指同步或者异步。异步结构中,各条带组内的数据块均由低号盘向高号盘依次写入。同步结构中,每个条带组内第一个数据块写在校验块所在物理盘的下一个物理盘,若后面还有物理盘,则顺序往后写;若校验块所在物理盘后没有物理盘,则从校验块所在物理盘前面的物理盘开始从低号盘向高号盘顺序写入。
2表副本.png

3、RAID5实例分析过程(已确定此RAID5是右结构):
a、从“数据块A”入手。
5副本.png

查看“数据块A”末尾扇区的数据,然后再查看“数据块B”和“数据块C”开始扇区的数据。如果“数据块A” 末尾扇区的数据能够与“数据块B” 开始扇区的数据衔接,则该RAID5属于异步结构。如果“数据块A” 末尾扇区的数据能够与“数据块C” 开始扇区的数据衔接,则该RAID5属于同步结构。
b、从“数据块A”入手。
6副本.png

查看“数据块A”末尾扇区的数据,然后再查看“数据块B”和“数据块C”开始扇区的数据。如果“数据块A” 末尾扇区的数据能够与“数据块B” 开始扇区的数据衔接,则该RAID5属于异步结构。如果“数据块A” 末尾扇区的数据能够与“数据块C” 开始扇区的数据衔接,则该RAID5属于同步结构。
c、从“数据块A”入手。
7副本.png
查看“数据块A”末尾扇区的数据,然后再查看“数据块B”和“数据块C”开始扇区的数据。如果“数据块A” 末尾扇区的数据能够与“数据块B” 开始扇区的数据衔接,则该RAID5属于同步结构。如果“数据块A” 末尾扇区的数据能够与“数据块C” 开始扇区的数据衔接,则该RAID5属于异步结构。
d、从“数据块A”入手。
8副本.png

查看“数据块A”末尾扇区的数据,然后再查看“数据块B”和“数据块C”开始扇区的数据。如果“数据块A” 末尾扇区的数据能够与“数据块B” 开始扇区的数据衔接,则该RAID5属于异步结构。如果“数据块A” 末尾扇区的数据能够与“数据块C” 开始扇区的数据衔接,则该RAID5属于同步结构。
4、重组RAID5阵列。
上面步骤分析出重组RAID5阵列所需要的信息,根据这些信息,我们就可以开始重组RAID5阵列了。
用工具打开并添加这11块硬盘。
9副本.png
9副本.png

将1.dsk添加到了左侧Connected storages里。
6副本.png

点击Build RAID选项,依照RAID5的盘序把10块盘都添加进去,开始组建RAID5阵列。
11副本.png

剔除出现故障的那块盘,在其位置添加时补一个空缺,并继续按照顺序添加完其它硬盘。点击标红框位置处的按钮,添加空缺硬盘。
12副本.png

选择校验方向和数据走向。本实例条带大小为28个扇区,即65KB,右异步结构。
13副本.png

点击Build按钮,在弹出窗口中点击find查找,选择zfs文件系统。
14副本.png

出现正在组建的RAID5阵列。
15副本.png
图15

相关文章
|
18天前
|
存储 运维 算法
服务器数据恢复—raid6阵列硬盘重组raid5阵列如何恢复raid6阵列数据?
服务器存储数据恢复环境: 存储中有一组由12块硬盘组建的RAID6阵列,上层linux操作系统+EXT3文件系统,该存储划分3个LUN。 服务器存储故障&分析: 存储中RAID6阵列不可用。为了抢救数据,运维人员使用原始RAID中的部分硬盘重新组建RAID并进行了初始化。 初始化开始一段时间后,运维人员察觉到情况有异后强制终止初始化,这个时候初始化已经完成一半以上。数据部分已被不可逆的破坏。
|
22天前
|
存储 运维 Oracle
服务器数据恢复—raid5阵列+vxfs文件系统数据恢复案例
服务器存储数据恢复环境: 某品牌MSA2000FC存储中有一组由7块盘组建的RAID5阵列,另外还有1块硬盘作为热备盘使用。 基于RAID5阵列划分的几个LUN分配给小机使用,存储空间通过LVM管理,重要数据为Oracle数据库及OA服务端。 服务器存储故障: RAID5阵列中2块硬盘离线,唯一的热备盘成功激活,RAID5阵列还是变得不可用,上层LUN无法使用。
|
2月前
|
存储 数据挖掘
服务器数据恢复—用RAID5阵列中部分盘重建RAID5如何恢复原raid5阵列数据?
服务器数据恢复环境: 一台服务器挂接一台存储,该存储中有一组由5块硬盘组建的RAID5阵列。 服务器故障: 存储raid5阵列中有一块硬盘掉线。由于RAID5的特性,阵列并没有出现问题。工作一段时间后,服务器出现故障,用户方请人维修。维修人员在没有了解故障磁盘阵列环境的情况下,用另外4块硬盘(除去掉线的硬盘)重新创建了一组全新的RAID5阵列并完成数据同步,导致原raid5阵列数据全部丢失。
|
4月前
|
存储 Oracle 关系型数据库
服务器数据恢复—raid5阵列硬盘离线导致上层LUN不可用的恢复数据案例
一台服务器上有8块SAS硬盘,其中的7块硬盘组建了一组RAID5阵列,另外1块硬盘作为热备盘使用。划分了6个LUN,服务器上部署有oracle数据库。 RAID5磁盘阵列中有2块硬盘出现故障并离线,RAID5阵列瘫痪,上层LUN无法正常使用。经过硬件工程师检测,所有硬盘(包括离线的2块盘)均无物理故障以及坏道。
 服务器数据恢复—raid5阵列硬盘离线导致上层LUN不可用的恢复数据案例
|
5月前
|
算法
Raid5数据恢复—Raid5算法简介&raid5磁盘阵列数据恢复案例
Raid5算法也被称为“异或运算”。异或是一个数学运算符,它应用于逻辑运算。异或的数学符号为“⊕”,计算机符号为“xor”。异或的运算法则为:a⊕b = (¬a ∧ b) ∨ (a ∧¬b)。如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。 异或也叫半加运算,其运算法则相当于不带进位的二进制加法。二进制下用1表示真,0表示假。异或的运算法则为:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同为0,异为1),这些法则与加法是相同的,只是不带进位。 异或略称为XOR、EOR、EX-OR,程序中有三种演算子:XOR、xor、⊕。使用方法如下z = x ⊕ y z
Raid5数据恢复—Raid5算法简介&raid5磁盘阵列数据恢复案例
|
7月前
|
存储 运维 Oracle
服务器数据恢复—MSA2000存储raid5阵列瘫痪导致lun不可用的数据恢复案例
服务器存储数据恢复环境: 某品牌MSA2000存储,该存储中有一组由8块SAS硬盘(其中有一块热备盘)组建的RAID5阵列,raid5阵列上层划分了6个lun,均分配给HP-Unix小型机使用,主要数据为oracle数据库和OA服务端。 服务器存储故障: 该MSA2000存储RAID5阵列中2块硬盘出现故障离线,阵列中只有一块热备盘,虽然热备盘成功激活,RAID5阵列瘫痪,上层LUN无法使用,存储不可用。
服务器数据恢复—MSA2000存储raid5阵列瘫痪导致lun不可用的数据恢复案例
|
7月前
|
存储 算法 数据挖掘
服务器数据恢复—拯救raid5阵列数据大行动,raid5数据恢复案例分享
**Raid5数据恢复算法原理:** 分布式奇偶校验的独立磁盘结构(被称之为raid5)的数据恢复有一个“奇偶校验”的概念。可以简单的理解为二进制运算中的“异或运算”,通常使用的标识是xor。运算规则:若二者值相同则结果为0,若二者结果不同则结果为1。 例如0101 xor 0010根据上述运算规则来计算的话二者第一位都是0,两者相同,结果为0 ;第二、三、四位的数值不同则结果均为1,所以最终结果为0111。公式表示为:0101 xor 0010 = 0111,所以在 a xor b=c 中如果缺少其中之一,我们可以通过其他数据进行推算,这就是raid5数据恢复的基本原理。 了解了这个基本原理
|
7月前
|
存储 数据挖掘
服务器数据恢复—raid5阵列+xfs文件系统数据恢复案例
服务器数据恢复环境: EMC某型号存储,该存储内有一组由12块磁盘组建的raid5阵列,划分了两个lun。 服务器故障: 管理员为服务器重装操作系统后,发现服务器的磁盘分区发生改变,原来的sdc3分区丢失。由于该分区存放了公司重要业务信息,急需恢复里面的数据。
服务器数据恢复—raid5阵列+xfs文件系统数据恢复案例
|
7月前
|
存储 安全
RAID磁盘阵列的原理
【4月更文挑战第4天】RAID是冗余磁盘阵列技术,通过组合多块磁盘提升性能和数据安全性。常见类型包括RAID 0(条带化,无冗余,高风险),RAID 1(镜像,数据冗余,磁盘利用率50%),RAID 5(奇偶校验,允许1块硬盘故障,空间利用率 `(n-1)/n`)。RAID 10是RAID 1和0的组合,提供高可用性和性能。RAID可使用软硬件实现,云服务常处理硬件问题。处理硬盘失效有热备(自动替换)和热插拔(更换失效硬盘)两种方式。
178 2
|
存储 机器学习/深度学习 监控
mdadm 磁盘软RAID详解
raid0:   mdadm –assemble /dev/md0 /dev/sda1 /dev/sdb1 使用sda1和sdb1创建RAID0,条带大小是64KB:  mdadm –create /dev/md0 –chunk=64 –level=0...
2039 0