逻辑卷设定硬盘禁区并利用硬盘禁区备份配置信息的方法

著录项
  • CN201510228704.9
  • 20150507
  • CN104793904A
  • 20150722
  • 北京银信长远科技股份有限公司
  • 关宁风
  • G06F3/06
  • G06F3/06 G06F11/14

  • 北京市海淀区苏州街18号院长远天地大厦4号楼21层2101-2105房
  • 中国,CN,北京(11)
摘要
逻辑卷设定硬盘禁区并利用硬盘禁区备份配置信息的方法涉及信息技术领域,尤其是计算机操作系统中数据安全,以及数据的备份和恢复领域。本发明的具体实现包括两部分内容,分别是通过切分机制来设定逻辑卷管理系统下硬盘禁区和设定所备份逻辑卷配置的数据格式并利用硬盘禁区备份逻辑卷配置,本发明给出了不需要编程和调用硬盘函数的切分机制来设定逻辑卷管理系统下硬盘禁区的方法并且规定了逻辑卷配置备份的数据格式,通过本发明定期地备份逻辑卷配置信息,就能在误操作或者硬盘部分故障的情况下,恢复逻辑卷管理系统,挽回数据,恢复业务的运行。
权利要求

1.逻辑卷设定硬盘禁区并利用硬盘禁区备份配置信息的方法,本发明的具体实现包括两部分内容,分别是通过切分机制来设定逻辑卷管理系统下硬盘禁区和设定所备份逻辑卷配置的数据格式并利用硬盘禁区备份逻辑卷配置,如下所示:

1)通过切分机制来设定逻辑卷管理系统下硬盘禁区

前提:在逻辑卷管理系统中存在硬盘非分配区域,但是硬盘的大小对我们是不确定的,每种硬盘都有不同扇区数目,要知道一块硬盘实际扇区数可能需要非常特殊命令才能知道,有的操作系统可能还不提供类似的命令,这可能需要通过编程调用scsi硬盘函数才能知道,本发明提供不需要编程和调用scsi硬盘函数来确定硬盘大小就可以通过切分机制来设定逻辑卷管理系统下硬盘禁区的方式;

本发明方法的硬盘禁区位置的设定遵循如下2个原则:

i. 尽量离开硬盘的尾部,因为硬盘的尾部相当于硬盘磁片的边缘位置,不经常访问,可能存在磁性弱化的可能,容易造成数据丢失或数据错误;

ii. 尽量离开最后一个PP位置,避免不可遇见的意外导致备份的数据被覆盖;

步骤1,已知逻辑卷管理的PP SIZE用S表示和一个硬盘的pp数目用N表示;

那么PP size转换为扇区数目就是(S * 1024)*1024 /512 = 2048*S,假设硬盘禁区大小是K个扇区,从最后一个pp 的结尾再偏移2048*S / n个扇区,n等于2,判断这个位置没有超出硬盘的尾部,没有超出硬盘的尾部,这个位置作为第一个硬盘禁区的截止位置;当上述位置超出硬盘的尾部,从最后一个pp 的结尾再偏移2048*S / n 2 个扇区,判断这个位置是否超出硬盘尾部,没有超出硬盘的尾部,这个位置作为第一个硬盘禁区的截止位置;以此类推,通过偏移2048*S / n 3,2048*S / n 4等一系列操作能确定到第一个硬盘禁区的截止位置;

 步骤2,在第一个硬盘禁区的起始位置确定后,假设这时第一个硬盘禁区的截止位置是1/n位置,判断2048*S / 2n 是否大于 K,当2048*S / 2n 大于 K,从最后一个pp 的结尾再偏移2048*S / 2n 个扇区为第二个硬盘禁区的截止位置;当2048*S / 2n 小于 K,不设定第二个硬盘禁区;当设定第二个硬盘禁区时第一个硬盘禁区和第二个硬盘禁区互为镜像,确保数据可靠性;

2)设定所备份逻辑卷配置的数据格式并利用硬盘禁区备份逻辑卷配置

前提:任何版本的逻辑卷管理系统都需要描述如下的信息:

硬盘的物理分区(PP)的数量;

每个物理分区大小,以M字节为单位;

硬盘上逻辑卷的数量;

每个逻辑卷的大小,占多少个pp;

逻辑卷是有作条带化,条带的大小,以K字节为单位;

每个逻辑卷在硬盘的分布;

以上就是逻辑卷管理配置的基本信息,设计备份如上信息的数据格式,必须要满足如下条件:

需要能通过脚本和通用命令实现,这就要求数据信息要用可见字符来描述;

备份的数据要足够精炼,尽量少用硬盘禁区的空间;

步骤1,为了满足上述条件,本发明特地设计了专用的备份逻辑卷配置的数据格式,具体如下:

PNUM9999 --- 8个字节,描述硬盘的物理分区数量,0001-9999;

SIZE9999 --- 8个字节,描述硬盘的物理分区大小,0001-9999M;

LNUM9999 --- 8个字节,描述硬盘的逻辑卷数量,0001-9999;

SIZE9999 --- 8个字节,第一个逻辑卷大小,0001-9999个PP;

STRP9999 --- 8个字节,逻辑卷条带化大小,0001-9999K, 0000表示没有没有条带化;

000100020003... 第一个逻辑卷包含的物理分区的序号,每4个字节描述一个物理分区,具体个数由前面定义逻辑卷大小SIZE决定;

SIZE9999 --- 8个字节,第二个逻辑卷大小,0001-9999个PP;

STRP9999 --- 8个字节,逻辑卷条带化大小,0001-9999K, 0000表示没有没有条带化;

010101020103... 第二个逻辑卷包含的物理分区的序号,每4个字节描述一个物理分区,具体个数由前面定义逻辑卷大小SIZE决定;

END -- 结尾标志,END1表示第一个备份镜像,END2表示第二个备份镜像;

步骤2,按照备份逻辑卷配置的数据格式利用硬盘禁区备份逻辑卷配置,备份逻辑卷配置信息根据用户需要通过压缩并加密保存到硬盘禁区,这样数据内容将更小而且防止别人恶意改动,更加安全可靠。

说明书
技术领域

本发明涉及信息技术领域,尤其是计算机操作系统中数据安全,以及数据的备份和恢复领域。

首先介绍下硬盘的数据存储基本原理:硬盘的最基本组成的单位是扇区SECTOR,一块硬盘能被操作系统使用,它的扇区大小SIZE必须是512字节。基本上所有操作系统,包括WINDOWS、UNIX和LINUX,都是以512字节作为为最小的数据存取单元,这个数据单元命名为数据块BLOCK。

以一块希捷公司生成的型号为ST3300655LC硬盘为例,这块硬盘是300g SCSI硬盘,它的扇区大小是512字节,一共有585,937,500个扇区,这样他的实际容量是279g左右。计算公式:512*585,937,500/1024K/1024M/1024G 差不多是279.36g。这里585,937,500个扇区就是硬盘的实际可用容量。

在UNIX或LINUX中为了更好管理硬盘,一般采用逻辑卷方式。以下对逻辑卷管理介绍,并以AIX这个目前使用最广的UNIX系统为例:

AIX中五个基本的逻辑存储概念是:物理卷PV、卷组VG、物理分区PP、逻辑卷LV和逻辑分区LP。

物理卷:每个单独的硬盘驱动器称为一个物理卷physical volume,PV,并具有一个名称,例如:hdisk0、hdisk1 或 hdisk2。

物理分区:物理卷划分为相同大小的物理分区physical partition,PP,一般AIX 把一块硬盘划分为不超过1016个的物理分区。以前面举例的ST3300655LC硬盘为例,可以分为558个PP,每个PP大小是512M。

逻辑分区:一般一个物理分区对应一个逻辑分区logical partition,LP,如果为逻辑卷指定了镜像,则可以分配额外的物理分区来存储每个逻辑分区的额外副本。

逻辑卷:每个逻辑卷logical volume,LV由一个或多个逻辑分区logical volume,LV组成,逻辑卷上的数据在用户看来像是连续的,但是在物理卷上可以是不连续的。

卷组:多个逻辑卷组成卷组volume group,VG。

从以上介绍可以看出,逻辑卷管理就是把硬盘分为连续的等大小的分区来管理硬盘,其它的UNIX系统或LINUX系统也是基于上述原理。

既然把硬盘分为等大小分区,就肯定有部分硬盘区域没有分配给逻辑管理来使用。以上面硬盘为例:585,937,500减去558*512*1024*1024 / 512= 832092,其中585,937,500是一共扇区数;558是PP数,即物理分区数;512是扇区大小,最后得出有832092个扇区没有用到。这个未被分配分区在操作系统运行的整个生命周期都永远不被使用。本专利区别于现有技术的核心原理就是利用这个区域,用来存储和备份逻辑管理的配置信息,用于将来的数据恢复。

 逻辑卷管理系统广泛应用于目前绝大数的UNIX和LINUX中,更重要的是逻辑卷管理系统存储的是用户的数据,甚至是核心数据,一旦因为误操作或这硬盘故障导致逻辑卷管理系统失败,可能会对数据造成不可挽回的灾难性后果。

目前国内和国际上大部分的行业客户,包括银行、保险、政府以及商业和制造业的核心系统基本都是采用UNIX系统,逻辑卷管理系统存储的都是他们的核心数据。发明人有着超过15年系统维护经验,经常跟逻辑管理系统打交道,比如硬盘故障的替换、数据库安装,数据扩容等都需通过逻辑卷管理系统来实现。每次客户实施上述的维护操作的时候,都非常小心谨慎。但是还是有碰到过多起因为误操作或者硬盘故障导致的数据丢失,一旦数据丢失将对客户业务造成非常严重的影响。

因此利用本发明提供的办法,定期地备份逻辑卷配置信息,就能在误操作或者硬盘部分故障的情况下,恢复逻辑卷管理系统,挽回数据,恢复业务的运行。

针对上述现有技术中存在的问题,本发明的目的是提供逻辑卷设定硬盘禁区并利用硬盘禁区备份配置信息的方法,本发明的具体实现包括两部分内容,分别是通过切分机制来设定逻辑卷管理系统下硬盘禁区和设定所备份逻辑卷配置的数据格式并利用硬盘禁区备份逻辑卷配置,如下所示:

1)通过切分机制来设定逻辑卷管理系统下硬盘禁区

前提:在逻辑卷管理系统中存在硬盘非分配区域,但是硬盘的大小对我们是不确定的,每种硬盘都有不同扇区数目。要知道一块硬盘实际扇区数可能需要非常特殊命令才能知道,有的操作系统可能还不提供类似的命令,这可能需要通过编程调用scsi硬盘函数才能知道,本发明提供不需要编程和调用scsi硬盘函数来确定硬盘大小就可以通过切分机制来设定逻辑卷管理系统下硬盘禁区的方式;

另外硬盘禁区位置的设定遵循如下2个原则:

i. 尽量离开硬盘的尾部,因为硬盘的尾部相当于硬盘磁片的边缘位置,不经常访问,可能存在磁性弱化的可能,容易造成数据丢失或数据错误;

ii. 尽量离开最后一个PP位置,避免不可遇见的意外导致备份的数据被覆盖。

步骤1,已知逻辑卷管理的PP SIZE用S表示和一个硬盘的pp数目用N表示。那么PP size转换为扇区数目就是(S * 1024)*1024 /512 = 2048*S,假设硬盘禁区大小是K个扇区,从最后一个pp 的结尾再偏移2048*S / n个扇区,n等于2,判断这个位置没有超出硬盘的尾部,没有超出硬盘的尾部,这个位置作为第一个硬盘禁区的截止位置;当上述位置超出硬盘的尾部,从最后一个pp 的结尾再偏移2048*S / n2 个扇区,判断这个位置是否超出硬盘尾部,没有超出硬盘的尾部,这个位置作为第一个硬盘禁区的截止位置;以此类推,通过偏移2048*S / n3,2048*S / n4等一系列操作能确定到第一个硬盘禁区的截止位置。

 步骤2,在第一个硬盘禁区的起始位置确定后,假设这时第一个硬盘禁区的截止位置是1/n位置,判断2048*S / 2n 是否大于 K,当2048*S / 2n 大于 K,从最后一个pp 的结尾再偏移2048*S / 2n 个扇区为第二个硬盘禁区的截止位置;当2048*S / 2n 小于 K,不设定第二个硬盘禁区;当设定第二个硬盘禁区时第一个硬盘禁区和第二个硬盘禁区互为镜像,确保数据可靠性;

2)设定所备份逻辑卷配置的数据格式并利用硬盘禁区备份逻辑卷配置

前提:任何版本的逻辑卷管理系统都需要描述如下的信息:

1. 硬盘的物理分区(PP)的数量;

2. 每个物理分区大小,以M字节为单位;

3. 硬盘上逻辑卷的数量;

4. 每个逻辑卷的大小,占多少个pp;

5. 逻辑卷是有作条带化,条带的大小,以K字节为单位;

6. 每个逻辑卷在硬盘的分布;

以上就是逻辑卷管理配置的基本信息,设计备份如上信息的数据格式,必须要满足如下条件:

1. 需要能通过脚本和通用命令实现,这就要求数据信息要用可见字符来描述;

2. 备份的数据要足够精炼,尽量少用硬盘禁区的空间;

步骤1,为了满足上述条件,本专利特地设计了专用的备份逻辑卷配置的数据格式,具体如下:

PNUM9999 --- 8个字节,描述硬盘的物理分区数量,0001-9999;

SIZE9999 --- 8个字节,描述硬盘的物理分区大小,0001-9999M;

LNUM9999 --- 8个字节,描述硬盘的逻辑卷数量,0001-9999;

SIZE9999 --- 8个字节,第一个逻辑卷大小,0001-9999个PP;

STRP9999 --- 8个字节,逻辑卷条带化大小,0001-9999K, 0000表示没有没有条带化;

000100020003... 第一个逻辑卷包含的物理分区的序号,每4个字节描述一个物理分区,具体个数由前面定义逻辑卷大小SIZE决定;

SIZE9999 --- 8个字节,第二个逻辑卷大小,0001-9999个PP;

STRP9999 --- 8个字节,逻辑卷条带化大小,0001-9999K, 0000表示没有没有条带化;

010101020103... 第二个逻辑卷包含的物理分区的序号,每4个字节描述一个物理分区,具体个数由前面定义逻辑卷大小SIZE决定;

END -- 结尾标志,END1表示第一个备份镜像,END2表示第二个备份镜像;

步骤2,按照备份逻辑卷配置的数据格式利用硬盘禁区备份逻辑卷配置,备份逻辑卷配置信息根据用户需要通过压缩并加密保存到硬盘禁区,这样数据内容将更小而且防止别人恶意改动,更加安全可靠。

有益效果

 逻辑卷管理系统广泛应用于目前绝大数的UNIX和LINUX中,更重要的是逻辑卷管理系统存储的是用户的数据,甚至是核心数据,一旦因为误操作或这硬盘故障导致逻辑卷管理系统失败,可能会对数据造成不可挽回的灾难性后果。

目前国内和国际上大部分的行业客户,包括银行、保险、政府以及商业和制造业的核心系统基本都是采用UNIX系统,逻辑卷管理系统存储的都是他们的核心数据。发明人有着超过15年系统维护经验,经常跟逻辑管理系统打交道,比如硬盘故障的替换、数据库安装,数据扩容等都需通过逻辑卷管理系统来实现。每次客户实施上述的维护操作的时候,都非常小心谨慎。但是还是有碰到过多起因为误操作或者硬盘故障导致的数据丢失,一旦数据丢失将对客户业务造成非常严重的影响。

因此利用本发明提供的办法,定期地备份逻辑卷配置信息,就能在误操作或者硬盘部分故障的情况下,恢复逻辑卷管理系统,挽回数据,恢复业务的运行,并且本发明不需要编程不需要调用硬盘参数,简单易用。

图1为本发明的通过切分机制来设定逻辑卷管理系统下硬盘禁区的示意图;

图2为本发明的实施步骤逻辑关系图。

 参看图1和图2,实现本发明的逻辑卷设定硬盘禁区并利用硬盘禁区备份配置信息的方法包括两部分内容,分别是通过切分机制来设定逻辑卷管理系统下硬盘禁区和设定所备份逻辑卷配置的数据格式并利用硬盘禁区备份逻辑卷配置,如下所示:

1)通过切分机制来设定逻辑卷管理系统下硬盘禁区

前提:在逻辑卷管理系统中存在硬盘非分配区域,但是硬盘的大小对我们是不确定的,每种硬盘都有不同扇区数目。要知道一块硬盘实际扇区数可能需要非常特殊命令才能知道,有的操作系统可能还不提供类似的命令,这可能需要通过编程调用scsi硬盘函数才能知道,本发明提供不需要编程和调用scsi硬盘函数来确定硬盘大小就可以通过切分机制来设定逻辑卷管理系统下硬盘禁区的方式;

另外硬盘禁区位置的设定遵循如下2个原则:

i. 尽量离开硬盘的尾部,因为硬盘的尾部相当于硬盘磁片的边缘位置,不经常访问,可能存在磁性弱化的可能,容易造成数据丢失或数据错误;

ii. 尽量离开最后一个PP位置,避免不可遇见的意外导致备份的数据被覆盖。

步骤1,已知逻辑卷管理的PP SIZE用S表示和一个硬盘的pp数目用N表示。那么PP size转换为扇区数目就是(S * 1024)*1024 /512 = 2048*S,假设硬盘禁区大小是K个扇区,从最后一个pp 的结尾再偏移2048*S / n个扇区,n等于2,判断这个位置没有超出硬盘的尾部,没有超出硬盘的尾部,这个位置作为第一个硬盘禁区的截止位置;当上述位置超出硬盘的尾部,从最后一个pp 的结尾再偏移2048*S / n2 个扇区,判断这个位置是否超出硬盘尾部,没有超出硬盘的尾部,这个位置作为第一个硬盘禁区的截止位置;以此类推,通过偏移2048*S / n3,2048*S / n4等一系列操作能确定到第一个硬盘禁区的截止位置。

 步骤2,在第一个硬盘禁区的起始位置确定后,假设这时第一个硬盘禁区的截止位置是1/n位置,判断2048*S / 2n 是否大于 K,当2048*S / 2n 大于 K,从最后一个pp 的结尾再偏移2048*S / 2n 个扇区为第二个硬盘禁区的截止位置;当2048*S / 2n 小于 K,不设定第二个硬盘禁区;当设定第二个硬盘禁区时第一个硬盘禁区和第二个硬盘禁区互为镜像,确保数据可靠性;

实例一,以ST3300655LC硬盘为例,可以分为558个PP,每个PP大小是512M,需要从硬盘头开始偏移的位置是:

      558 x 2048 x 512 --- 最后一个pp的尾部位置

     +2048 x 512 / 2   --- 再偏移1/2 PP size的位置

     -1              --- 作为截止位置,所以-1

     = 299574493183

具体命令如下:

dd if=test of=/dev/hdiskx bs=512 skip=299574493183 如果命令失败,说明超出硬盘尾部,继续切分。

 2)设定所备份逻辑卷配置的数据格式并利用硬盘禁区备份逻辑卷配置

前提:任何版本的逻辑卷管理系统都需要描述如下的信息:

1. 硬盘的物理分区(PP)的数量;

2. 每个物理分区大小,以M字节为单位;

3. 硬盘上逻辑卷的数量;

4. 每个逻辑卷的大小,占多少个pp;

5. 逻辑卷是有作条带化,条带的大小,以K字节为单位;

6. 每个逻辑卷在硬盘的分布;

以上就是逻辑卷管理配置的基本信息,设计备份如上信息的数据格式,必须要满足如下条件:

1. 需要能通过脚本和通用命令实现,这就要求数据信息要用可见字符来描述;

2. 备份的数据要足够精炼,尽量少用硬盘禁区的空间;

步骤1,为了满足上述条件,本专利特地设计了专用的备份逻辑卷配置的数据格式,具体如下:

PNUM9999 --- 8个字节,描述硬盘的物理分区数量,0001-9999;

SIZE9999 --- 8个字节,描述硬盘的物理分区大小,0001-9999M;

LNUM9999 --- 8个字节,描述硬盘的逻辑卷数量,0001-9999;

SIZE9999 --- 8个字节,第一个逻辑卷大小,0001-9999个PP;

STRP9999 --- 8个字节,逻辑卷条带化大小,0001-9999K, 0000表示没有没有条带化;

000100020003... 第一个逻辑卷包含的物理分区的序号,每4个字节描述一个物理分区,具体个数由前面定义逻辑卷大小SIZE决定;

SIZE9999 --- 8个字节,第二个逻辑卷大小,0001-9999个PP;

STRP9999 --- 8个字节,逻辑卷条带化大小,0001-9999K, 0000表示没有没有条带化;

010101020103... 第二个逻辑卷包含的物理分区的序号,每4个字节描述一个物理分区,具体个数由前面定义逻辑卷大小SIZE决定;

END -- 结尾标志,END1表示第一个备份镜像,END2表示第二个备份镜像;

步骤2,按照备份逻辑卷配置的数据格式利用硬盘禁区备份逻辑卷配置,备份逻辑卷配置信息根据用户需要通过压缩并加密保存到硬盘禁区,这样数据内容将更小而且防止别人恶意改动,更加安全可靠。

本文发布于:2024-09-24 06:31:00,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/73099.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议