硬盘数据备份与恢复方法

文档序号:6566986阅读:345来源:国知局
专利名称:硬盘数据备份与恢复方法
技术领域
本发明涉及一种计算机硬盘数据备份与恢复方法。
在目前采用的硬盘数据备份方法中,有一种是将分区或硬盘的信息备份成一个文件,恢复时打开该文件,将备份的内容恢复到原分区或硬盘中去,这种备份方法是建立在文件系统的基础上的,一旦文件系统被破坏,如果由于病毒的袭击而使保存该备份文件的分区被删除,或者该分区被破坏以至不能再读出该文件,则不可能恢复所备份的信息。该备份要依赖于备份文件所在的分区的完整性和备份文件本身的完整性,因此这种备份本身的安全性得不到保障。
目前所采用的硬盘数据备份方法中,其备份和恢复都存在一些局限性,即要么备份整个硬盘,要么备份一个分区,恢复时按照备份时的方式恢复整个硬盘或一个分区,而如果用户有多种需求,比如有时候需要恢复整个硬盘,有时候仅需要恢复其中的一个分区,而按照整个硬盘做的备份不能实现仅恢复一个分区,按照分区进行的备份不能实现恢复整个硬盘。要想实现既能恢复整个分区,又能恢复整个硬盘,则就要进行两次备份,一次备份一个分区,另一次备份整个硬盘,造成了备份的冗余,既浪费了人力和时间,也浪费了硬盘的空间。
本发明的技术方案如下根据本发明的一种硬盘数据备份方法,用于对硬盘中的用户数据进行备份,包括以下步骤(1)在该硬盘上的划分出至少一段硬盘空间作为数据备份区;(2)将硬盘上的分区状态和至少一个分区的需备份数据备份到该数据备份区;(3)对该数据备份区加锁,以禁止其它应用软件或操作系统对数据备份区的访问。
在本发明的数据备份方法中,所述的数据备份区可以是在硬盘上的逻辑地址高端之区域空间。但本发明并非限于此,一般来说,本发明的数据备份区可设置在硬盘中的任何一个区域中。但由于IDE硬盘之标准(例如ATA5及其以后的IDE硬盘之规范)所支持的硬盘区域保护功能(HostProtected Area Feature)只能保护其高端区域,因此,本发明优选的是将数据备份区设置在其中的高端区域。该数据备份区可以是硬盘中的一段或多段空间。
在本发明的数据备份方法中,所述的对数据备份区的加锁和数据备份区的设置可以通过设置硬盘的最大地址来实现,并且可以是自动完成的,该最大地址小于该硬盘的实际最大空间地址。该硬盘的最大地址被设置成功后,硬盘中大于所设置之最大地址、小于实际最大空间地址之间的扇区将不能被访问。在加锁状态下任何软件都不可能访问或修改在加锁区中的内容,将该区域保护加载和解除需要特殊的命令,从而确保备份数据的安全可靠。也可以利用其它的加锁手段实现对数据备份区的禁止访问。
为设置硬盘的最大地址,可利用硬盘本身所具有的硬盘区域保护功能所支持的SET MAX命令,将硬盘中大于该最大地址之高端区域划分出来作为数据备份区;硬盘中小于该最大地址之区域作为用户可用的数据区。
在本发明的数据备份方法中,该数据备份区的大小可以根据硬盘上的数据资料实际占用的空间大小而确定。该数据备份区可以大于数据实际占用空间。实际上,本发明只备份实际占用空间的数据,不会备份闲置空间。因此可以计算出至少所需的硬盘备份空间的大小,在硬盘上划分出相应所需大小的数据备份区。
在进行数据备份时,硬盘数据可连同控制信息一起被写入数据备份区,该控制信息可包括备份区域的大小、备份区域的起始地址、备份的原分区的大小、原分区的数量、分区的类型、硬盘分区表的大小、备份区是否已成功加锁的标记之信息。这些控制信息是在进行硬盘数据恢复功能和加锁功能时的依据。
在本发明的数据备份方法中,对数据备份区的加锁方式可包括以下两种(1)永久性加锁加锁后将不能访问高端加锁的数据备份区,即使是在硬盘掉电后再启动时仍然看不到加锁的数据备份区;(2)临时性加锁加锁后将不能访问高端加锁的数据备份区,但在硬盘掉电后再启动时的加锁状态则为该硬盘最近一次设置的永久性加锁之状态值。
上述的两种加锁方式可对应于SET MAX命令的两种设置方式,即永久性设置方式和临时性设置方式。
在本发明的数据备份方法中,数据备份时可在数据备份区中存入一个表示加锁状态的标记,该标记可被设置为待加锁标记和成功加锁标记,分别表示已实现的临时性加锁和永久性加锁。
当硬盘被启动时,如果所述的标记是待加锁标记,可对硬盘进行永久性加锁,加锁成功后可将该标记设置为成功加锁标记。
在本发明的数据备份方法中,所述的将数据备份到数据备份区之步骤可包括(1)读出硬盘的主引导记录;(2)根据主引导记录中的硬盘分区信息表找到各个分区的信息;(3)根据每个分区的FAT表的情况计算出每个分区中的数据占用量,计算出备份分区所需的容量,在硬盘的高端空闲空间划分出备份数据区;(4)将各个分区中的FAT表和引导记录扇区保存到数据备份区;(5)对每一个分区,根据FAT表的占用情况,将分区数据区中已使用的簇保存到数据备份区。
根据本发明的一种硬盘数据恢复方法,用于将备份在硬盘中并被加锁的数据从数据备份区恢复到可基于操作系统访问的分区中,包括(1)将该数据备份区解锁;(2)根据数据备份区中所存储的控制信息,将数据备份区中的数据恢复到对应的硬盘分区中,该步骤包括以下可由用户选择执行的步骤(a)恢复硬盘单个分区步骤对数据备份区中所备份的硬盘内容中的某一个分区之数据进行恢复;(b)恢复整个硬盘内容步骤将硬盘的分区状态恢复到备份时的状态,并将数据备份区的数据资料恢复到对应的每一个硬盘分区中,也即将每一个硬盘分区中的数据全部恢复到备份时的状态。
在本发明的数据恢复方法中,所述的对数据备份区的加锁是通过设置该硬盘的最大地址来实现,该最大地址小于该硬盘的实际最大空间地址;所述的解锁步骤可以是将该硬盘的实际最大空间地址设置为最大地址,以使数据备份区可被访问。
在本发明的数据恢复方法中,恢复硬盘单个分区步骤可包括将数据备份区的数据从根目录开始,依次按文件方式读出来,将每个文件的备份按照当前分区的簇的大小重新分成若干个簇,将每个文件重新组成簇链存放到当前分区中去,同时修改目录中文件信息,使之在恢复后的分区中能够指向正确的首簇;对于子目录除了把目录本身重新组成簇链存放到分区中去以外,还把其目录中的各个文件及子目录也重新组成簇链存入分区中去。这种方式是基于文件占用方式对单个分区进行恢复的方法。
在本发明的数据恢复方法中,恢复硬盘单个分区步骤可包括当要恢复的分区和备份时的分区的结构和每簇扇区数都相同时,按照备份时的FAT表将分区中用到的簇恢复到分区中去,同时将备份FAT表中簇的占用情况恢复到分区的FAT表中,把分区FAT表中其它没有用到的簇信息填入空簇标志。这种方式是基于FAT(文件分配表)占用方式对单个分区进行恢复的方法。
在根据本发明之数据恢复方法的一个实施例中,先将硬盘的备份数据区中保存的硬盘的分区状态读出,将当前硬盘的分区状态设为备份时的状态,然后对每一个分区,根据备份时的FAT表的占用情况,将每一个分区在备份区的内容恢复到分区的相应位置,从而实现对整个硬盘之数据的恢复。
在根据本发明之数据恢复方法的一个实施例中,控制实现所述的硬盘数据备份方法和数据恢复方法之各步骤的计算机程序是加入在计算机内的系统BIOS(基本输入输出系统)程序内,该程序在计算机启动时执行。
本发明能够对硬盘中的数据进行安全可靠的备份与恢复,计算机用户利用本发明可以非常方便地备份硬盘上的数据,使得因各种原因(严重的物理、机械、存储介质损坏原因除外)而导致破坏或丢失的硬盘数据能够得以迅速的恢复。本发明可利用ATA5硬盘规范对高端区域的加锁控制功能,将硬盘的数据备份到硬盘空间高端的一个受保护的区域,该区域既不依赖于硬盘分区,也不依赖于操作系统,因此不能被应用软件或操作系统访问,在整个硬盘受到计算机病毒攻击时也能够不受侵袭,使硬盘的备份数据不受侵害,保证了备份数据的安全性。
本发明利用硬盘加锁功能及加锁标记,可以确保在启动的情况下硬盘的高端地址数据备份区不会被访问和破坏,同时解决了单次加锁可能失效的问题和大批量生产时母盘复制的问题。做完母盘后,硬盘进行了临时加锁,使数据备份区的数据处于受保护状态,确保了备份区的安全;而硬盘没有永久加锁,所以可以取下进行硬盘的正常拷贝,批量复制硬盘。待再次启动时,会将硬盘永久加锁,此时数据区处于受保护状态,即使取下硬盘拿到另一个系统上备份区仍是不能访问的。因此,本发明之对硬盘数据备份区的加锁方法既保证了数据的安全,又充分考虑了系统厂商大批量生产复制带有备份数据内容的硬盘的需求,从而解决了大批量生产和数据安全之间的矛盾。
实现本发明之计算机程序可集成在计算机系统BIOS中,稳定、可靠,恢复和备份的算法本身非常安全。采用在硬盘高端存储加锁的方式,确保了备份数据的安全。
本发明既能一次备份一个硬盘分区之数据,也可以一次备份整个硬盘之数据,备份后用户可以采用灵活的方式来完成各种恢复功能,如在备份了整个硬盘后,用户可以直接使用备份的数据只恢复其中的一个分区,而不需为了实现单个分区的恢复而再去备份这个分区,节省了硬盘空间,又实现了多种功能。
应用本发明的方法对硬盘数据进行备份,并对硬盘数据的备份区域进行加锁,其优点是明显的及多方面的。例如,用户在应用中可能出现以下情况(1)在某种条件下,如遭到计算机病毒袭机或不小心误删除了关键文件,整个硬盘数据丢失,可能通过本发明的恢复方法将硬盘所有的分区和数据恢复到备份时的状态。
(2)在某种条件下,如遇病毒或不小心误删除了关键文件甚至误操作对系统分区进行了完全格式化,文件部分或全部丢失,系统不能正常启动,采用本发明的方法将备份数据的系统部分完全恢复,系统可以正常启动,而硬盘数据区的内容不受影响。
(3)用户重新划分了硬盘的分区,将硬盘系统分区和数据分区的大小都发生了变化,这时可以通过本发明的恢复方法将操作系统按备份的方式拷贝到新分区上,省却了安装操作系统的时间,也节省了因增加恢复光盘的成本。
(4)用户重新划分了硬盘的分区,将硬盘系统分区和数据分区的大小都发生了变化,用户在新的系统区安装了新的操作系统,并且在其它分区装了大量的数据,当用户想把原来的操作系统恢复时,可以使用本发明的单个分区恢复功能恢复系统分区,不影响其他分区的内容。
(5)将硬盘拿到另外一个计算机系统上重新将硬盘分区和格式化,这时由于备份区的内容是加锁的,所以在该系统上看不到该加锁的隐藏区,其中的数据还保存完好,用户将该硬盘再拿回本来的机器上时,可以按一个热键启动本发明,即可将该盘上原来的内容恢复回来。
(6)电脑生产厂商采用本发明的方法在生产时就将硬盘系统内容备份,使用备份后的硬盘进行多个同类硬盘的复制,然后采用本发明的方法进行加锁,电脑卖到用户手中时,可能由于若干原因系统被破坏不能正常启动,则用户可以方便地使用恢复功能将硬盘恢复到出厂状态,也可以采用只恢复系统分区的方法将操作系统恢复到出厂状态而不影响其它分区的大小和内容。
以下结合附图和实施例进一步说明本发明。


图1所示,在本发明的一个实施例中,控制计算机实现本发明之数据备份及恢复的程序置于BIOS之FLASH ROM芯片中,在运行BIOS之过程中实现IDE硬盘数据的备份和恢复。用户在计算机的启动过程中可以按下备份热键进入备份功能菜单,或者按下恢复热键进入恢复功能菜单。在备份功能菜单中可以实现对整个硬盘的分区信息和分区中数据的备份,在恢复功能菜单中可以实现将备份的数据信息按照用户的意愿恢复到硬盘上去。
在BIOS的POST(Power On Self Test,上电自检)过程中,如图1所示,如果用户按下了系统恢复热键或系统备份热键则BIOS会设置相应的标志,在完成系统各硬件的检测和实始化之后,在启动操作系统之前,BIOS会查看设置的标志,如果用户没有按任何热键,则会进行硬盘备份区加锁的一系列操作;如果用户在此前按下了硬盘备份热键,则进行硬盘备份的一系列操作;而如果用户在此前按下了硬盘恢复热键,则进行硬盘恢复的一系列操作,完成硬盘恢复的操作后,再进行硬盘备份区加锁的一系列操作。硬盘加锁后开始引导操作系统,BIOS的POST过程结束。
本发明特别适用于当前的符合ATA 5及其后规范的IDE硬盘,使用其特有的SET MAX命令将备份数据区加锁,在加锁状态下任何软件都不可能访问或修改在加锁区中的内容,从而确保了备份数据的安全可靠。本发明的对硬盘备份数据区的加锁方法既保证了数据的安全,又完全满足了系统厂商大批量生产复制带有备份数据内容的硬盘的需求。
图2是根据本发明之实施例对数据备份区进行加锁的方法。在该实施例中,对硬盘高端区域的加锁方法是根据ATA 5的规范,采用SET MAX命令来实现的。该命令作用是设置硬盘的最大地址,设置成功后,硬盘中大于该设置地址的扇区将不能被访问,该命令就是通过这种方式实现对硬盘高端区域的加锁,该命令对硬盘高端区域的加锁的方式有两种永久性加锁和临时性加锁。两种加锁方式设置后对硬盘访问控制的加锁效果是一样的,不一样的只是加锁的持续时间,临时性加锁的方式只是在硬盘不掉电的情况下有效,可以多次设置;而永久性加锁的方式在硬盘掉电后仍有效。但是永久性加锁方式的设置在硬盘的一次上电周期内只能进行一次,第二次再试图进行永久性加锁设置时无效。系统厂商是使用硬盘复制机来进行大批量生产的,而硬盘复制机使用软件来访问硬盘空间,在生产时如果设置了加锁,则高端的数据备份区不能进行有效复制。
因而本实施例采用了如下的方法在对硬盘进行备份时,为了利于生产,只对硬盘进行临时加锁。在备份时在备份的区域中存下了一个“待加锁”标记,该标记的含义是本硬盘已进行了数据备份,但是硬盘的备份数据区还没有进行永久性加锁,而临时性加锁既保证了在本次上电周期中数据的安全,也可以让系统厂商在备份完成后,关掉电源,取下硬盘,装到硬盘复制机上进行完整的硬盘复制(此时虽然硬盘经过临时加锁,但掉电后无效,因此硬盘复制机软件可以访问备份数据区)。
在之后的计算机系统启动时,系统BIOS会检查该标记,若该标记为“待加锁”,则将硬盘进行永久性加锁,若加锁成功,则将该标记设置“成功加锁状态”,若永久性加锁不成功,则不更改该加锁标记,而对硬盘设置临时性加锁,待下次启动时再进行永久性加锁,直至成功将高端永久加锁。在永久性加锁不成功时设置临时性加锁,保证了数据在本次上电周期的安全。而加锁标记的设置可以让计算机在每次启动时都去进行加锁,直至加锁成功。
如图2所示,对数据备份区设置加锁时,不需要用户干预,对每一个硬盘都进行如下的操作使用临时SET MAX命令将其最容量设为硬盘的实际容量,然后读出该硬盘中的控制信息,若控制信息中的标志表明该硬盘处在“待加锁”状态,则对该硬盘的备份数据区进行永久性加锁,若加锁成功,则设置“成功加锁”标志,若不成功,则使用临时SET MAX命令将备份数据区加锁。
在本发明之数据备份方法之实施例中,如图3A和图3B所示,因为用户的系统可能会安装有多个硬盘,所以在进行硬盘备份的操作时,首先让用户选择要进行操作的硬盘,选定硬盘后,因为该硬盘可能以前进行过备份,进行过加锁的动作,所以要访问所有的硬盘数据就必须将其解锁,因而使用临时SET MAX命令将硬盘的容量设为硬盘的实际最大容量,将硬盘中的加锁区域解锁;然后,读出硬盘的第一个逻辑扇区即主引导记录(MBR),根据主引导记录中的硬盘分区信息表可以找到该硬盘的各个分区的信息。首先根据每个分区的FAT表的情况计算出每个分区中的数据占用扇区数,累加起来就得到硬盘各分区备份所需的空间大小,可以在这个扇区数的基础上加上500,作为备份数据区所需空间的大小,这500个扇区是为存储控制信息和一些不属于任何分区的有用扇区如MBR等扇区预留的。在计算出数据备份区所需空间后,再检查一下硬盘中的高端有没有足够的空间划分出这个数据备份区,若没有足够的空间,则此硬盘不能进行数据备份;若有足够的空间,则根据计算出数据备份区所需的容量,在硬盘的高端空闲空间划分出数据备份区;然后根据各个分区FAT中的信息,将各个分区中的数据信息读出,保存到数据备份区;最后将数据备份区加锁,使备份的数据处在受保护状态。
图6是备份硬盘中一个分区的详细流程,这个过程将分区中的有用数据读出,备份到划分出的数据备份区域,这些有用数据包括分区的引导记录、分区的FAT表、以及分区的数据区中保存了数据的簇。对于数据区中的一个簇是否存了有用数据,是通过对FAT中的记录确定的,若FAT表中该簇的信息为0,则表明该簇没有被占用,不用保存;若该簇的信息为非零,则将该簇读出,保存在备份数据区。
将所有的分区保存完毕后,将MBR和备份的控制信息也存入数据备份区,此时备份完成,设置备份成功标志,并设置“待加锁”标志。
最后使用临时SET MAX命令将数据备份区加锁,加锁的目的是为了保护硬盘备份数据区中的数据,而使用临时SET MAX命令的目的是本次备份成功后,系统厂商可以用来大批量复制硬盘用于生产,而如果将该区域永久加锁,则系统厂商取下硬盘后,备份数据区仍处于加锁状态,不能复制备份数据区的内容。而由于我们设置的“待加锁”标志,则在使用该硬盘再次启动时,BIOS会自动识别该标志并将硬盘设置为永久加锁。
本发明的备份数据之恢复方法可以有两种方式来实现,分别满足用户的不同需求,即恢复硬盘单个分区和恢复全部硬盘内容,如图4A和图4B和图5所示。
如果在BIOS的上电自检过程中用户按下了硬盘恢复热键,则会进行硬盘恢复的操作,首先会让用户选择是哪种恢复方式,如果选择了恢复单个分区的恢复方式,则进行恢复所选择的单个分区,如图4A和图4B所示,不影响硬盘的分区状态和其它分区的内容;如果选择了恢复整个硬盘的恢复方式,则按备份时的状态将硬盘的分区状态和各个分区的内容恢复,如图5所示。
对于仅恢复硬盘单个分区的方式,是实现将备份区中备份的硬盘内容中的某一个分区的恢复,而不更改硬盘的分区状态,也不影响硬盘中的其它分区的内容。即使用户在备份后改变了分区的大小,只要改变后分区的容量大于备份的容量,就可以将该分区按备份的内容恢复。这种恢复方法是通过将分区的内容转化为文件的方式来实现的,在分区的大小改变而分区的每簇的大小不变的情况下,本发明还提供了一种不依赖于文件的简便的方法来实现单个分区的恢复。
在进行恢复单个分区的动作时,如图4A和图4B,首先让用户选择要操作的硬盘,然后使用临时SET MAX命令将该硬盘的容量设为该硬盘的实际容量,读出备份数据区中的控制信息,若控制信息合法且控制信息表明本硬盘中有备份信息,则进行下面的操作,否则不能进行恢复。
让用户选择要恢复的分区,因为用户可能调整了分区的大小,所以要读出硬盘中该分区当前的大小,和备份分区中存储的数据量比较,看当前的分区能否容纳下备份数据的内容。若当前的分区足够容纳备份的分区的数据,则进行恢复单个分区的动作,否则不能进行恢复这个分区的操作。
此时可以通过两种方法中的一种来实现对单个分区恢复的操作,基于文件的方法比较复杂一些,而基于FAT的方式程序实现起来较为简便,但是有一些限制,它除了要求当前的分区能够容纳下备份的数据以外,还要求当前的分区和备份时的分区结构和簇的大小是相同的。我们可以来判断一下,若当前分区的结构及簇的大小相同,则进行基于FAT的方式;否则进行基于文件的操作。
这两种方法的介绍如下(i)基于文件占用方式的恢复方法如图9A和图9B所示,将备份区的数据从根目录开始,依次按文件方式读出来,将每个文件的备份按照当前分区的簇的大小重新分成若干个簇,将每个文件重新组成簇链存放到当前分区中去,同时修改目录中文件信息,使之在恢复后的分区中能够指向正确的首簇。对于子目录除了把目录本身重新组成簇链存放到分区中去以外,还把其目录中的各个文件及子目录也重新组成簇链存入分区中去。这样,在分区中就建立了和备份时一样的文件系统,这就完成了从备份到分区的按文件方式的恢复。
(ii)基于FAT占用方式的恢复方法如图8所示,这种方式的前提是要恢复的分区和备份时分区的结构和每簇扇区数都是相同的,分区的大小可以不同。分区结构和簇的大小相同,则可以把数据区的数据直接恢复到备份时的状态,而分区的大小不同,FAT的大小也不同,只需将簇的占用情况按备份时的情况恢复。所以这种备份方法按照备份时的FAT表将分区中用到的簇恢复到分区中去,同将备份FAT表中簇的占用情况恢复到分区的FAT表中,把分区FAT表中没有用到的簇填入空簇标志。
对于恢复全部硬盘内容的方式,可以实现将硬盘的分区状态和每个分区的数据资料恢复到备份时的状态,如图5和图7所示。
这种恢复方法首先将硬盘的备份数据区中保存的硬盘的分区状态读出,将当前硬盘的分区状态设为备份时的状态,然后对每一个分区,根据备份时的FAT表的占用情况,将每一个分区在备份区的内容恢复到分区的相应位置。
首先让用户选择要进行操作的硬盘,使用SET MAX命令将其容量设为硬盘的实际容量,以便能够访问到硬盘的备份数据区。读出在备份数据区中的控制信息,若当前的硬盘中没有备份数据,则不能进行恢复的动作;若硬盘中有备份数据,则从备份数据区中读出备份的硬盘第一个分区即MBR,从中找到备份时硬盘的分区状态,将将该MBR恢复到当前硬盘中。
按照备份时的分区状态,对每一个分区从备份数据区读出备份的该分区的基本信息,如分区的PBR、分区的隐藏扇区等,将其恢复;然后读出在备份数据区中备份的该分区的文件分配表(FAT),根据FAT中的簇的占用情况,将该分区中备份的簇读出恢复,并恢复该FAT,对所有备份的分区恢复完成后就将整个硬盘恢复到了备份时的状态。
权利要求
1.一种硬盘数据备份方法,用于对硬盘中的用户数据进行备份,包括以下步骤(1)在该硬盘上的划分出至少一段硬盘空间作为数据备份区;(2)将硬盘上的分区状态和至少一个分区的需备份数据备份到该数据备份区;(3)对该数据备份区加锁,以禁止其它应用软件或操作系统对数据备份区的访问。
2.根据权利要求1所述的方法,其中,所述的数据备份区是在硬盘上的逻辑地址高端之区域空间。
3.根据权利要求1或2所述的方法,其中,所述的对数据备份区的加锁和数据备份区的设置是通过设置硬盘的最大地址来实现的,该最大地址小于该硬盘的实际最大空间地址。
4.根据权利要求3所述的方法,其中,利用硬盘本身所具有的硬盘区域保护功能所支持的SET MAX命令来设置硬盘的最大地址,硬盘中大于该最大地址之高端区域被划分出来,作为数据备份区;硬盘中小于该最大地址之区域作为用户可用的数据区。
5.根据权利要求1所述的方法,其中,该数据备份区的大小是根据硬盘上的数据资料实际占用的空间大小而确定的。
6.根据权利要求1所述的方法,其中,在数据备份时,硬盘数据连同控制信息一起被写入数据备份区,该控制信息包括备份区域的大小、备份区域的起始地址、备份的原分区的大小、原分区的数量、分区的类型、硬盘分区表的大小、备份区是否已成功加锁的标记之信息。
7.根据权利要求1所述的方法,其中,对数据备份区的加锁方式包括以下两种(1)永久性加锁加锁后将不能访问高端加锁的数据备份区,即使是在硬盘掉电后再启动时仍然不能访问加锁的数据备份区;(2)临时性加锁加锁后将不能访问高端加锁的数据备份区,但在硬盘掉电后再启动时的加锁状态则为该硬盘最近一次设置的永久性加锁之状态值。
8.根据权利要求7所述的方法,其中,所述的两种加锁方式对应于SETMAX命令的两种设置方式,即永久性设置方式和临时性设置方式。
9.根据权利要求7所述的方法,其中,数据备份时在数据备份区中存入一个表示加锁状态的标记,该标记可被设置为待加锁标记和成功加锁标记,分别表示已实现的临时性加锁和永久性加锁。
10.根据权利要求9所述的方法,其中,当硬盘被启动时,如果所述的标记是待加锁标记,则对硬盘进行永久性加锁,加锁成功后将该标记设置为成功加锁标记。
11.根据权利要求1所述的方法,其中所述的将数据备份到数据备份区之步骤包括(1)读出硬盘的主引导记录;(2)根据主引导记录中的硬盘分区信息表找到各个分区的信息;(3)根据每个分区的FAT表的情况计算出每个分区中的数据占用量,计算出备份分区所需的容量,在硬盘的高端空闲空间划分出备份数据区;(4)将各个分区中的FAT表和引导记录扇区保存到数据备份区;(5)对每一个分区,根据FAT表的占用情况,将分区数据区中已使用的簇保存到数据备份区。
12.一种硬盘数据恢复方法,用于将备份在硬盘中并被加锁的数据从数据备份区恢复到可基于操作系统访问的分区中,包括(1)将该数据备份区解锁;(2)根据数据备份区中所存储的控制信息,将数据备份区中的数据恢复到对应的硬盘分区中,该步骤包括以下可由用户选择执行的步骤(a)恢复硬盘单个分区步骤对数据备份区中所备份的硬盘内容中的某一个分区之数据进行恢复;(b)恢复整个硬盘内容步骤将硬盘的分区状态恢复到备份时的状态,并将数据备份区的数据资料恢复到对应的每一个硬盘分区中。
13.根据权利要求12所述的方法,其中,所述的对数据备份区的加锁是通过设置该硬盘的最大地址来实现,该最大地址小于该硬盘的实际最大空间地址;所述的解锁步骤是将该硬盘的实际最大空间地址设置为最大地址,以使数据备份区可被访问。
14.根据权利要求12所述的方法,其中,恢复硬盘单个分区步骤包括将数据备份区的数据从根目录开始,依次按文件方式读出来,将每个文件的备份按照当前分区的簇的大小重新分成若干个簇,将每个文件重新组成簇链存放到当前分区中去,同时修改目录中文件信息,使之在恢复后的分区中能够指向正确的首簇;对于子目录除了把目录本身重新组成簇链存放到分区中去以外,还把其目录中的各个文件及子目录也重新组成簇链存入分区中去。
15.根据权利要求12所述的方法,其中,恢复硬盘单个分区步骤包括当要恢复的分区和备份时的分区的结构和每簇扇区数都相同时,按照备份时的FAT表将分区中用到的簇恢复到分区中去,同时将备份FAT表中簇的占用情况恢复到分区的FAT表中,把分区FAT表中其它没有用到的簇信息填入空簇标志。
16.根据权利要求12所述的方法,其中,先将硬盘的备份数据区中保存的硬盘的分区状态读出,将当前硬盘的分区状态设为备份时的状态,然后对每一个分区,根据备份时的FAT表的占用情况,将每一个分区在备份区的内容恢复到分区的相应位置。
17.根据权利要求1至7或9至16中任一项所述的方法,其中,控制实现所述的硬盘数据备份方法和数据恢复方法之各步骤的计算机程序是加入在计算机内的系统BIOS程序内,该程序在计算机启动时执行。
全文摘要
一种硬盘数据备份及恢复方法,用于对硬盘中的用户数据进行备份,包括以下步骤在该硬盘上的划分出一段硬盘空间作为数据备份区;将硬盘上的分区状态和至少一个分区的需备份数据备份到该数据备份区;对该数据备份区加锁,以禁止其它应用软件或操作系统对数据备份区的访问。利用本发明可对硬盘中的数据进行安全可靠的备份与恢复,并保证备份数据的安全性。
文档编号G06F11/14GK1419196SQ01134778
公开日2003年5月21日 申请日期2001年11月12日 优先权日2001年11月12日
发明者张建辉 申请人:联想(北京)有限公司, 昆腾设计(香港)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1