[发明专利]硬盘故障处理方法及处理装置有效
申请号: | 201210185744.6 | 申请日: | 2012-06-06 |
公开(公告)号: | CN103473157A | 公开(公告)日: | 2013-12-25 |
发明(设计)人: | 王志谦;魏伟;胡殿明 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F11/22 | 分类号: | G06F11/22 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 宋合成 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 硬盘 故障 处理 方法 装置 | ||
技术领域
本发明涉及网络设备维护技术领域,特别涉及一种硬盘故障处理方法及故障处理装置。
背景技术
随着科学技术的不断发展,单个硬盘的容量变得越来越大。特别在服务器领域,单个3.5寸的硬盘已经达到了3TB的容量,该硬盘总共包括3*1024*1024*1024*1024字节,而每个扇区包括512个字节,所以该硬盘总共包括3*1024*1024*1024*2个扇区,约为6*109个扇区。
由于硬盘包括大量的扇区,使得硬盘在使用过程中,扇区发生故障的总体概率增加。对于硬盘而言,如果单个扇区故障认定硬盘发生了一次故障。传统的对扇区故障的处理方式是替换整个硬盘。但是采用这种方式,需要同步硬盘中的全部数据,同时需要人工更换和运输硬盘,从而带来了大量的人力物力浪费。
传统的解决方法是扫描硬盘,将硬盘中遇到的故障硬件全部添加到某一目录,即将文件全部屏蔽处理。如果文件大小为1GB,则需要耗费硬盘1GB的空间。如图1所示,当数据块Block 551发生故障时,传统的方法只能一次性将文件A屏蔽,从而占用大量的空间。
传统的获取故障文件的方式是扫描被文件系统标记为使用的块,根据故障数据块号获取对应的故障文件,并删除该故障文件,如图2所示。
步骤S201,获取故障数据块号。
步骤S202,根据故障数据块号反查故障文件。
步骤S203,判断是否找到故障文件,如果是,则执行步骤S204,否则执行步骤S205。
步骤S204,失败。
步骤S205,删除故障文件。
但是,传统的方法只能扫描被文件系统标记为使用的块,对未使用的块则无能为力。如果某个故障扇区的文件被删除了,则无法屏蔽这个故障数据块,导致下次分配时还会出错。
如图3所示,文件B占用数据块Block 7010,文件C占用数据块Block 7011,文件D占用数据块Block 7013,数据块Block7012未被占用。如果数据块Block7012发生故障,则由于其未被任何文件使用,无法处理该数据块。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。
为此,本发明的第一个目的在于提出一种硬盘故障处理方法,该方法可以对故障文件进行处理,确保文件系统的连续和一致性,同时保证故障的文件不会被再次访问。本发明的第二个目的在于提出一种硬盘故障处理装置。
为实现上述目的,本发明第一方面的实施例提供了一种硬盘故障处理方法,包括如下步骤:获得硬盘出现故障的故障数据块的故障扇区号,其中,所述硬盘的分区表区中存储有分区表,所述分区表中存储有所述文件系统存储区中各个文件系统的分区信息,所述故障数据块包括至少一个故障扇区;根据所述故障扇区号和所述各个文件系统的分区信息获得所述故障扇区号所属的文件系统,以及根据所述故障扇区号和所述故障扇区号所属的文件系统确定所述故障数据块所对应的故障文件;在所述文件系统中删除所述故障文件,并在所述文件系统中利用空闲数据块创建新文件;修改所述新文件的指针以使所述新文件的指针指向所述故障数据块,并释放所述新文件所利用的所述空闲数据块,以及修改所述文件系统的位图以占用所述故障数据块。
根据本发明实施例的硬盘故障处理方法,可以通过故障数据块的故障扇区号查找对应的故障文件,并对故障文件进行处理,达到占用故障数据块的目的,从而实现对故障数据块的屏蔽,解决了文件系统分配使用故障数据块时出现故障的问题,确保了文件系统的连续和一致性,同时保证故障的文件不会被再次访问。
本发明第二方面的实施例提供了一种硬盘故障处理装置,包括:扇区故障检测模块,用于检测硬盘出现故障的故障数据块的故障扇区号,其中,所述硬盘的分区表区中存储有分区表,所述分区表中存储有所述文件系统存储区中各个文件系统的分区信息,所述故障数据块包括至少一个故障扇区;故障文件定位模块,用于根据所述故障扇区号和所述各个文件系统的分区信息获得所述故障扇区号所属的文件系统,以及根据所述故障扇区号和所述故障扇区号所属的文件系统确定所述故障数据块所对应的故障文件;文件处理模块,在所述文件系统中删除所述故障文件,并在所述文件系统中利用空闲数据块创建新文件;故障处理模块,用于修改所述新文件的指针以使所述新文件的指针指向所述故障数据块,并释放所述新文件所利用的所述空闲数据块,以及修改所述文件系统的位图以占用所述故障数据块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210185744.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种禽用笼舍结构
- 下一篇:一种禽类养殖笼的高度调节装置的使用方法