专利名称:硬盘故障处理方法及处理装置的制作方法
技术领域:
本发明涉及网络设备维护技术领域,特别涉及一种硬盘故障处理方法及故障处理
直O
背景技术:
随着科学技术的不断发展,单个硬盘的容量变得越来越大。特别在服务器领域,单个硬盘中的扇区达到IO9个。由于硬盘包括大量的扇区,使得硬盘在使用过程中,扇区发生故障的总体概率增加。对于硬盘而言,如果单个扇区发生故障则认定硬盘发生了一次故障。 传统的对扇区故障的处理方式是替换整个硬盘。但是采用这种方式,需要同步硬盘中的全部数据,同时需要人工更换和运输硬盘,从而带来了大量的人力物力浪费。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明的第一个目的在于提出一种硬盘故障处理方法,该方法可以直接从硬盘硬件扇区映射到文件系统和文件,为故障扇区处理和数据恢复提供了便利,从而可以提高故障处理和数据恢复的效率。本发明的第二个目的在于提出一种硬盘故障处理装置。为实现上述目的,本发明第一方面的实施例提供了一种硬盘故障处理方法,包括如下步骤获得硬盘出现故障的故障扇区号,其中,所述硬盘的分区表区中存储有分区表, 所述分区表中存储有所述文件系统存储区中各个文件系统的分区信息;根据所述故障扇区号和所述各个文件系统的分区信息获得所述故障扇区号所属的文件系统,以及根据所述故障扇区号和所述故障扇区号所属的文件系统获得所述故障扇区号对应的扇区地址;根据所述扇区地址确定所述故障扇区号对应的文件;以及根据所述文件对出现故障的扇区进行故障处理。根据本发明实施例的硬盘故障处理方法,可以通过硬盘的扇区号查找到所属的文件系统和文件,当硬盘的扇区发生故障时,可以实现对扇区对应文件的及时定位,从而可以提高故障排除和数据恢复的效率。本发明第二方面的实施例提供了一种硬盘故障处理装置,包括扇区故障检测模块,用于检测出现故障的故障扇区号,其中,所述硬盘的分区表区中存储有分区表,所述分区表中存储有所述文件系统存储区中各个文件系统的分区信息;扇区地址获取模块,用于根据所述故障扇区号和所述各个文件系统的分区信息获得所述故障扇区号所属的文件系统,以及根据所述故障扇区号和所述故障扇区号所属的文件系统获得所述故障扇区号对应的扇区地址;文件系统定位模块,用于根据所述扇区地址确定所述故障扇区号对应的文件; 以及故障处理模块,用于对根据所述文件对出现故障的扇区进行故障处理。根据本发明实施例的硬盘故障处理装置,可以通过硬盘的扇区号查找到所属的文件系统和文件,当硬盘的扇区发生故障时,可以实现对扇区对应文件的及时定位,从而可以提高故障排除和数据恢复的效率。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中图1为根据本发明一个实施例的硬盘故障处理方法的流程图;图2为根据本发明实施例的硬盘逻辑划分示意图;图3为根据本发明实施例的硬盘分区示意图;图4为根据本发明另一个实施例的硬盘故障处理方法的流程图;图5为根据本发明实施例的硬盘故障处理装置的示意图;图6为根据本发明实施例的扇区地址获取模块的示意图;以及图7为根据本发明实施例的文件系统定位模块的示意图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。参照下面的描述和附图,将清楚本发明的实施例的这些和其他方面。在这些描述和附图中,具体公开了本发明的实施例中的一些特定实施方式,来表示实施本发明的实施例的原理的一些方式,但是应当理解,本发明的实施例的范围不受此限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。下面参考图1至图4描述根据本发明实施例的硬盘故障处理方法。如图1所示,本发明实施例提供的硬盘故障处理方法,包括如下步骤步骤SlOl,获取出现故障的故障扇区号。如图2所示,硬盘逻辑可以划分为引导区、分区表区和文件系统存储区。其中,文
件系统存储区可以包括多个文件系统,例如文件系统1、文件系统2、文件系统3.......文
件系统N。其中,每个文件系统的大小不是固定的,可以为IT 8T。引导区的长度是固定的,在引导区中存储有引导信息。在分区表区中存储有文件系统存储器中各个文件系统的分区信息。在本发明的一个实施例中,分区表中记录有硬盘中引导区和为文件系统存储区的分区的数目、每个分区的起始位置和结束位置。在对硬盘进行分区时,首先跳过引导区,在分区表区中查找硬盘的分区表。然后, 将该分区表读入到内存中,根据分区表对硬盘的引导区和文件系统存储区进行分区。根据读取到的分区表,对硬盘增加扇区信息。图3为硬盘分区的示意图。将引导区划分为4个扇区,分别为扇区1 扇区4,。将分区表区划分为4个扇区,分别为扇区5 扇区8。将文件系统1划分为12个扇区,分别为扇区9 扇区20。将文件系统2划分为12个扇区,分别为扇区21 扇区32。将文件系统3划分为12个扇区,分别为扇区33 扇区44。将文件系统N划分为20个扇区,分别为扇区45 扇区64。在本发明一个示例中,每个扇区可以包括512字节。
需要说明的是,上述对硬盘的引导区、分区表区和文件系统存储区的划分方式仅是出于示例的目的,而不是为了限制本发明。可以理解的是,根据硬盘以及文件系统的大小的不同,引导区、分区表区和文件系统存储区还可以为其他数量的扇区。以体积为3. 5寸、容量为3TB的硬盘为例,该硬盘共包括3*1(^4*1024*1(^4*1024 字节。其中,每个扇区包括512个字节,从而该硬盘总共包括3*10对*1024*1(^牡2个扇区, 约为6*109个扇区。从图3中,可以看出,每个扇区均属于一个文件系统,扇区的扇区号与文件系统具有对应关系。当检测到一个扇区发生故障时,即检测到硬盘中出现坏扇区时,获取出现故障的扇区的故障扇区号。步骤S102,根据故障扇区号和各个文件系统的分区信息获得故障扇区号所属的文件系统,以及根据故障扇区号和故障扇区号所属的文件系统获得故障扇区号对应的扇区地址。根据步骤SlOl获得的各个文件系统的分区信息获得各个文件系统的分区信息。 然后根据步骤S102中获得的故障扇区号以及各个文件系统的分区信息,查找故障扇区号所属的文件系统。例如当故障扇区号为13时,根据各个文件系统的分区信息,可以获知故障扇区号属于文件系统1。然后,获取该故障扇区号所属的文件系统的文件系统信息表。 根据该文件系统信息表获得所属文件系统对应的块及块信息。其中,块信息包括块的容量 (blocksize)。例如,blocksize 可以为 IK 或 4K。表2为EXT系列文件系统的数据分区示意。
权利要求
1.一种硬盘故障处理方法,其特征在于,包括以下步骤获得硬盘出现故障的故障扇区号,其中,所述硬盘的分区表区中存储有分区表,所述分区表中存储有所述文件系统存储区中各个文件系统的分区信息;根据所述故障扇区号和所述各个文件系统的分区信息获得所述故障扇区号所属的文件系统,以及根据所述故障扇区号和所述故障扇区号所属的文件系统获得所述故障扇区号对应的扇区地址;根据所述扇区地址确定所述故障扇区号对应的文件;以及根据所述文件对出现故障的扇区进行故障处理。
2.如权利要求1所述的硬盘故障处理方法,其特征在于,所述根据故障扇区号和各个文件系统的分区信息获得故障扇区号所属的文件系统进一步包括根据所述故障扇区号和所述各个文件系统的分区信息查找所述故障扇区号所属的文件系统,并获得所述故障扇区号所属的文件系统的文件系统信息表;所述根据所述故障扇区号和所述故障扇区号所属的文件系统获得所述故障扇区号对应的扇区地址进一步包括根据所述文件系统信息表获得所述文件系统对应的块及块信息;以及根据所述故障扇区号和所述文件系统对应的块及块信息获得所述故障扇区号对应的扇区地址。
3.如权利要求2所述的硬盘故障处理方法,其特征在于,所述根据故障扇区号和各个文件系统对应的块及块信息获得故障扇区号对应的扇区地址进一步包括根据故障扇区号确定所述故障扇区号所对应的块;根据所述故障扇区号和所述故障扇区号所对应的块的容量计算所述故障扇区号对应的扇区地址。
4.如权利要求2所述的硬盘故障处理方法,其特征在于,所述根据所述扇区地址以确定所述故障扇区号对应的文件系统及文件,进一步包括根据所述故障扇区号对应的扇区地址遍历所述各个文件系统的文件系统信息表中的索引节点inode,其中,所述索引节点inode中存储有所属文件系统的所有扇区的扇区地址;查找所述扇区地址所属的索引节点inode ;根据所述扇区地址所属的索引节点inode,查找所述索引节点inode对应的文件。
5.如权利要求1所述的硬盘处理方法,其特征在于,所述将硬盘划分为引导区、分区表区和文件系统存储区,进一步包括将所述分区表读入内存,并根据所述分区表对所述引导区和所述文件系统存储器进行划分。
6.一种硬盘故障处理装置,其特征在于,包括扇区故障检测模块,用于检测出现故障的故障扇区号,其中,所述硬盘的分区表区中存储有分区表,所述分区表中存储有所述文件系统存储区中各个文件系统的分区信息;扇区地址获取模块,用于根据所述故障扇区号和所述各个文件系统的分区信息获得所述故障扇区号所属的文件系统,以及根据所述故障扇区号和所述故障扇区号所属的文件系统获得所述故障扇区号对应的扇区地址;文件系统定位模块,用于根据所述扇区地址确定所述故障扇区号对应的文件;以及故障处理模块,用于对根据所述文件对出现故障的扇区进行故障处理。
7.如权利要求6所述的硬盘故障处理装置,其特征在于,所述分区表包括所述硬盘的分区数目、每个分区的起始位置和结束位置。
8.如权利要求6所述的硬盘故障处理装置,其特征在于,所述扇区地址获取模块进一步包括信息获取单元,用于根据所述故障扇区号和所述各个文件系统的分区信息查找所述故障扇区号所属的文件系统,并获得所述故障扇区号所属的文件系统的文件系统信息表;扇区地址计算单元,用于根据所述故障扇区号和所述文件系统对应的块及块信息获得所述故障扇区号对应的扇区地址。
9.如权利要求8所述的硬盘故障处理装置,其特征在于,所述扇区地址计算单元根据所述故障扇区号确定所述故障扇区号所对应的块以及所述所对应的块的数据容量,并根据所述故障扇区号和所述对应的块的容量计算所述故障扇区号对应的扇区地址。
10.如权利要求6所述的硬盘故障处理装置,其特征在于,所述文件系统定位模块进一步包括遍历单元,用于根据所述故障扇区号对应的扇区地址遍历所述各个文件系统的文件系统信息表中的索引节点inode,其中,所述索引节点inode中存储有所属文件系统的所有扇区的扇区地址;查找单元,用于查找所述扇区地址所属的索引节点inode ;定位单元,用于根据所述扇区地址所属的索引节点inode,查找所述索引节点inode对应的文件。
全文摘要
本发明公开了一种硬盘故障处理方法,包括如下步骤获得硬盘出现故障的故障扇区号;根据所述故障扇区号和所述各个文件系统的分区信息获得所述故障扇区号所属的文件系统,以及根据所述故障扇区号和所述故障扇区号所属的文件系统获得所述故障扇区号对应的扇区地址;根据所述扇区地址确定所述故障扇区号对应的文件;以及根据所述文件对出现故障的扇区进行故障处理。本发明还公开了一种硬盘故障处理装置。本发明可以直接从硬盘硬件扇区映射到文件系统和文件,为故障扇区处理和数据恢复提供了便利,从而可以提高故障处理和数据恢复的效率。
文档编号G06F11/22GK102495777SQ20111041564
公开日2012年6月13日 申请日期2011年12月13日 优先权日2011年12月13日
发明者王志谦, 胡殿明, 魏伟 申请人:百度在线网络技术(北京)有限公司