一种逻辑卷管理中raid6缺失磁盘的数据恢复方法技术

技术编号:24455251 阅读:13 留言:0更新日期:2020-06-10 15:21
本发明专利技术公开了一种逻辑卷管理中raid6缺失磁盘的数据恢复方法,其特征在于包括以下步骤:S100:加载逻辑卷管理中raid的各个磁盘,其中,逻辑卷管理的raid分配至一个或多个磁盘上,各个磁盘包含数据条带、校验值P条带及校验值Q条带,所述数据条带用以存储用户数据,所述校验值P条带用以存储校验值P,所述校验值Q条带用以存储校验值Q;S200:解析逻辑卷管理的配置区域的数据,获取逻辑卷管理的raid类型、磁盘数量、条带大小、组织方式及旋转方向;S300:判断逻辑卷管理的类型是否为raid6系列,如果是,执行步骤S400,否则,结束流程;S400:获取未缺失磁盘的逻辑卷并记录缺失的逻辑卷的磁盘序号及磁盘个数;S500:恢复缺失磁盘的数据;S600:按照基于元数据的raid数据恢复方法恢复数据。

A data recovery method of raid6 missing disk in logical volume management

【技术实现步骤摘要】
一种逻辑卷管理中raid6缺失磁盘的数据恢复方法
本专利技术属于数据恢复与取证领域,涉及一种缺失磁盘的数据恢复方法,尤其涉及一种逻辑卷管理中raid6缺失磁盘的数据恢复方法。
技术介绍
在数据恢复与取证领域中,随着硬盘容量的不断增加,加上硬盘性能也在不断提高,使得硬盘的用户群不断增加,硬盘的使用次数也急剧增加,硬盘的故障也随之提高。逻辑卷管理(LVM,即LogicalVolumeManager)是Linux环境下对磁盘分区进行管理的一种机制,也是Linux下实现零停机前提下可以自如地对文件系统的大小进行调整,且文件系统跨越不同磁盘和分区的一种完美解决方案。逻辑卷管理中raid是lvm中的一类数据类型,其兼容lvm与raid的优点,支持坏盘修复以及在线扩容等优点,逻辑卷管理中raid设备管理技术在大容量存储系统中被广泛使用。其中逻辑卷管理中raid6是一个可以最多支持两块坏盘的一种raid,容错性高,使用广泛。逻辑卷管理中的raid6的校验值Q的计算以及组织方式与普通的raid6不一样,当逻辑卷管理中的raid6缺一、二块磁盘时,现有技术中尚无一种缺失磁盘的数据恢复方法。
技术实现思路
针对现有技术的不足,本专利技术提供了一种逻辑卷管理中raid6缺失磁盘的数据恢复方法。本专利技术申请包括以下步骤:S100:加载逻辑卷管理中raid的各个磁盘,其中,逻辑卷管理的raid分配至一个或多个磁盘上,各个磁盘包含数据条带、校验值P条带及校验值Q条带,所述数据条带用以存储用户数据,所述校验值P条带用以存储校验值P,所述校验值Q条带用以存储校验值Q;S200:解析逻辑卷管理的配置区域的数据,获取逻辑卷管理的raid类型、磁盘数量、条带大小、组织方式及旋转方向,包括以下步骤:S201:根据各个物理卷的配置区域的偏移地址,寻址并解析各个物理卷的所述配置区域的描述信息,获取所述配置区域的数据的偏移地址及所述配置区域的数据的字节长度;S202:寻址所述配置区域的数据的偏移地址,并根据所述配置区域的数据的字节长度获取所述配置区域的数据;S203:解析所述配置区域的数据,获取逻辑卷管理的raid类型、磁盘数量、条带大小、组织方式及旋转方向;S300:判断逻辑卷管理的类型是否为raid6系列,如果是,执行步骤S400,否则,结束流程;S400:获取未缺失磁盘的逻辑卷并记录缺失的逻辑卷的磁盘序号及磁盘个数;S500:恢复缺失磁盘的数据,包括以下步骤;S510:伽罗华域GF(28)中,采用本原多项式为0x11d并生成如下表一所示的伽罗华域正表及表二所示的伽罗华域反表,用以恢复逻辑卷管理中raid6缺失磁盘的数据:表一:伽罗华域正表表二:伽罗华域反表S520:获取伽罗华域正表第n个值作为第n个磁盘的系数Kn,其中,n为对应磁盘的序号且n为不小于0、不大于255的正整数;S530:定义伽罗华域的乘法公式为:X*Y=GFILOG[(GFLOG[X]+GFLOG[Y])mod255]定义伽罗华域的除法公式为:X/Y=GFILOG[(GFLOG[X]-GFLOG[Y])mod255]其中,X、Y为伽罗华域中的值且均为不小于0、不大于255的整数;S540:判断逻辑卷管理中raid6是否缺失一块磁盘,如果是,执行步骤S560,否则执行步骤S550;S550:判断逻辑卷管理中raid6是否缺失二块磁盘,如果是,执行步骤S570,否则,结束流程;S560:根据所获取的系数Kn及未缺失磁盘的逻辑卷,对逻辑卷管理中raid6缺失一块磁盘的数据进行恢复,执行步骤S600;S570:根据所获取的系数Kn及未缺失磁盘的逻辑卷,对逻辑卷管理中raid6缺失二块磁盘的数据进行恢复。S600:按照基于元数据的raid数据恢复方法恢复数据。优选地,所述raid6系列包括raid6、raid6_zr、raid6_nr、raid6_nc,对应的组织方式及旋转方向如下表三所示。表三逻辑卷管理所支持raid6的类型、组织方式及旋转方向优选地,所述表三中raid6_zr及raid6的组织方式如下表四所示。表四:raid6_zr及raid6的组织方式优选地,所述表三中raid6_nr的组织方式如下表五所示。表五:raid6_nr的组织方式ABCDE1D1D2D3PQ2D4D5PQD63D7PQD8D94PQD10D11D125QD13D14D15P优选地,所述表三中raid6_nc的组织方式如下表六所示。表六:raid6_nc的组织方式ABCDE1D1D2D3QP2D5D6QPD43D9QPD7D84QPD10D11D125PD13D14D15Q优选地,所述步骤S560包括如下步骤:情况1:对逻辑卷管理中raid6缺失一块磁盘中包含校验值P的情况下进行数据恢复后,执行步骤S600,数据恢复方法包括:设A、B、C为数据条带中存储的用户数据,分别存储于第i、第j及第m个磁盘中,P为校验值P条带存储的校验值P,按下述第一公式计算并获取缺失的校验值P:P=A⊕B⊕C其中,运算符号⊕表示异或加;情况2:对逻辑卷管理中raid6缺失一块磁盘中包含校验值Q的情况下对校验值Q条带进行数据恢复后,执行步骤S600,数据恢复方法包括:设A、B、C为数据条带中存储的用户数据,分别存储于第i、第j及第m个磁盘中;Q为校验值Q条带存储的校验值Q;Ki、Kj及Km分别表示从伽罗华域正表中所获取的第i、第j及第m个值,并各个作为第i、第j及第m个磁盘的系数,......以此类推,其中,i、j及m均为磁盘序号且为不小于0、不大于255的正整数;按下述第二公式计算并获取缺失的校验值Q:Q=A*Ki⊕B*Kj⊕C*Km其中,运算符号⊕表示异或加,运算符号*表示伽罗华域中的所述乘法;情本文档来自技高网...

【技术保护点】
1.一种逻辑卷管理中raid6缺失磁盘的数据恢复方法,其特征在于包括以下步骤:/nS100:加载逻辑卷管理中raid的各个磁盘,其中,逻辑卷管理的raid分配至一个或多个磁盘上,各个磁盘包含数据条带、校验值P条带及校验值Q条带,所述数据条带用以存储用户数据,所述校验值P条带用以存储校验值P,所述校验值Q条带用以存储校验值Q;/nS200:解析逻辑卷管理的配置区域的数据,获取逻辑卷管理的raid类型、磁盘数量、条带大小、组织方式及旋转方向,包括以下步骤:/nS201:根据各个物理卷的配置区域的偏移地址,寻址并解析各个物理卷的所述配置区域的描述信息,获取所述配置区域的数据的偏移地址及所述配置区域的数据的字节长度;/nS202:寻址所述配置区域的数据的偏移地址,并根据所述配置区域的数据的字节长度获取所述配置区域的数据;/nS203:解析所述配置区域的数据,获取逻辑卷管理的raid类型、磁盘数量、条带大小、组织方式及旋转方向;/nS300:判断逻辑卷管理的类型是否为raid6系列,如果是,执行步骤S400,否则,结束流程;/nS400:获取未缺失磁盘的逻辑卷并记录缺失的逻辑卷的磁盘序号及磁盘个数;/nS500:恢复缺失磁盘的数据,包括以下步骤;/nS510:伽罗华域GF(2...

【技术特征摘要】
1.一种逻辑卷管理中raid6缺失磁盘的数据恢复方法,其特征在于包括以下步骤:
S100:加载逻辑卷管理中raid的各个磁盘,其中,逻辑卷管理的raid分配至一个或多个磁盘上,各个磁盘包含数据条带、校验值P条带及校验值Q条带,所述数据条带用以存储用户数据,所述校验值P条带用以存储校验值P,所述校验值Q条带用以存储校验值Q;
S200:解析逻辑卷管理的配置区域的数据,获取逻辑卷管理的raid类型、磁盘数量、条带大小、组织方式及旋转方向,包括以下步骤:
S201:根据各个物理卷的配置区域的偏移地址,寻址并解析各个物理卷的所述配置区域的描述信息,获取所述配置区域的数据的偏移地址及所述配置区域的数据的字节长度;
S202:寻址所述配置区域的数据的偏移地址,并根据所述配置区域的数据的字节长度获取所述配置区域的数据;
S203:解析所述配置区域的数据,获取逻辑卷管理的raid类型、磁盘数量、条带大小、组织方式及旋转方向;
S300:判断逻辑卷管理的类型是否为raid6系列,如果是,执行步骤S400,否则,结束流程;
S400:获取未缺失磁盘的逻辑卷并记录缺失的逻辑卷的磁盘序号及磁盘个数;
S500:恢复缺失磁盘的数据,包括以下步骤;
S510:伽罗华域GF(28)中,采用本原多项式为0x11d并生成如下表一所示的伽罗华域正表及表二所示的伽罗华域反表,用以恢复逻辑卷管理中raid6缺失磁盘的数据:
表一:伽罗华域正表



表二:伽罗华域反表



S520:获取伽罗华域正表第n个值作为第n个磁盘的系数Kn,其中,n为对应磁盘的序号且n为不小于0、不大于255的整数;
S530:定义伽罗华域的乘法公式为:
X*Y=GFILOG[(GFLOG[X]+GFLOG[Y])mod255]
定义伽罗华域的除法公式为:
X/Y=GFILOG[(GFLOG[X]-GFLOG[Y])mod255]
其中,X、Y为伽罗华域中的值且均为不小于0、不大于255的整数;
S540:判断逻辑卷管理中raid6是否缺失一块磁盘,如果是,执行步骤S560,否则执行步骤S550;
S550:判断逻辑卷管理中raid6是否缺失二块磁盘,如果是,执行步骤S570,否则,结束流程;
S560:根据所获取的系数Kn及未缺失磁盘的逻辑卷,对逻辑卷管理中raid6缺失一块磁盘的数据进行恢复,执行步骤S600;
S570:根据所获取的系数Kn及未缺失磁盘的逻辑卷,对逻辑卷管理中raid6缺失二块磁盘的数据进行恢复;
S600:按照基于元数据的raid数据恢复方法恢复数据。


2.根据权利要求1所述的一种逻辑卷管理中raid6缺失磁盘的数据恢复方法,其特征在于,所述raid6系列包括raid6、raid6_zr、raid6_nr、raid6_nc,对应的组织方式及旋转方向如下表三所示。
表三:逻辑卷管理所支持raid6的类型、组织方式及旋转方向





3.根据权利要求2所述的一种逻辑卷管理中raid6缺失磁盘的数据恢复方法,其特征在于,所述表三中raid6_zr及raid6的组织方式如下表四所示。
表四:raid6_zr及raid6的组织方式













A
B
C
D
E


1
P
Q
D1
D2
D3


2
D4
p
Q
D5
D6


3
D7
D8
P
Q
D9


4
D10
D11
D12
P
Q


5
Q
D13
D14
D15
P








4.根据权利要求2所述的一种逻辑卷管理中raid6缺失磁盘的数据恢复方法,其特征在于,所述表三中raid6_nr的组织方式如下表五所示。
表五:raid6_nr的组织方式













A
B
C
D
E


1
D1
D2
D3
P
Q


2
D4
D5
P
Q
D6


3
D7
P
Q
D8
D9


4
P
Q
D10
D11
D12


5
Q
D13
D14
D15
P








5.根据权利要求2所述的一种逻辑卷管理中raid6缺失磁盘的数据恢复方法,其特征在于,所述表三中raid6_nc的组织方式如下表六所示。
表六:raid6_nc的组织方式













A
B
C
D
E


1
D1
D2
D3
Q
P


2
D5
D6

【专利技术属性】
技术研发人员:梁效宁
申请(专利权)人:四川效率源科技有限责任公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1