一种针对西数硬盘停转故障的修复方法技术

技术编号:15288024 阅读:356 留言:0更新日期:2017-05-10 12:29
本发明专利技术公开了一种针对西数硬盘停转故障的修复方法,包括以下步骤:读取ROM中0B和20B模块,找到01模块UBA地址;将UBA地址加入30模块中作为屏蔽地址;重启硬盘在01模块中读取12模块的UBA地址;将UBA地址加入30模块作为屏蔽地址;重启硬盘,恢复30模块为原始状态;重启硬盘则可正常提取硬盘数据。本发明专利技术的有益效果如下:不用拆解硬盘更换部件便达到可修复硬盘并提取硬盘数据的目的,避免更换操作中因人为因素而导致硬盘故障的扩大化、对硬盘带来二次伤害、甚至造成硬盘完全损坏等问题。

A stop for WD HDD fault repair method

The invention discloses a method for stopping WD HDD fault repair method, which comprises the following steps: reading 0B and 20B module in ROM, find the 01 module UBA address; UBA address will be added as shielding address 30 module; restart disk read 12 module in the 01 module in the UBA address; UBA address into 30 modules as the shielding address; restart disk, restore 30 modules for the original state; the hard disk can restart the normal extraction of hard disk data. The invention has the advantages that: without dismantling the hard disk replacement parts can be reached to repair the hard disk and hard disk data extraction to avoid changing the operation of human factors and lead to the expansion of the hard disk failure, bring two injuries, and even cause damage to the hard disk problem completely.

【技术实现步骤摘要】

本专利技术涉及信息安全
,特别涉及一种针对西数硬盘停转故障的修复方法
技术介绍
在数据恢复的领域,经常会遇到缺陷的存储介质;重要的数据对于用户来说,往往都是无价的。硬盘敲盘、停转导致硬盘无法正常工作,出现这种情况的时候,现有技术通常是进行开盘检测,采用物理修复方案即更换匹配磁头的方法,来达到修复硬盘的目的。但是,采用寻找匹配磁头的时间都较长,且会产生购买匹配磁头的费用,再更换磁头的过程中也容易引起2次损伤,浪费财力、人力和时间。
技术实现思路
本专利技术针对现有技术的缺陷,提供了一种针对西数硬盘停转故障的修复方法,能有效的解决上述现有技术存在的问题。一种针对西数硬盘停转故障的修复方法,包括以下步骤:S1:读取ROM中0B和20B模块;S2:若没有20B模块且0B模块中没有“0x12020100”标记则执行S3,若有0B和20B模块则执行S4;S3:将“0x20”作为屏蔽地址记录,执行S6;S4:判断0B和20B中0x1B位置的值的大小,若0B大于20B,则认为硬盘启用0B模块中01模块的UBA地址,提取0B中01模块的UBA地址和01模块长度;反之提取20B中01模块的UBA地址和01模块长度;S5:设屏蔽地址=01模块UBA地址+01模块的长度;S6:在硬盘的30模块中填入S5中的屏蔽地址;S7:校验30模块,并将校验值填入校验位,回写数据到ROM中;S8:硬盘断电起电,这时硬盘直接就绪,不会停转并可正常读取01模块;S9:从01模块中解析12模块的UBA地址;S10:设屏蔽地址=12模块的UBA地址+1;S11:在硬盘的30模块中填入S10中的屏蔽地址;S12:断电再起电,再次读取01模块;S13:把12模块信息从01地图模块中抹去,12号模块的条目标记后两个字节修改为0x0000;S14:同时把修改的30模块还原到初始形态;S15:再次断电起点,所有模块能够正常访问,提取COPY1的重要模块信息,回写到COPY0,此时可提取硬盘中数据。作为优选,S4中获取01模块UBA地址和01模块长度的具体步骤如下:S41:搜索01号模块的条目标记“0x12020100”或“0x1A020100”,并找到01模块长度;若找到“0x12020100”则执行S42,若找到“0x1A020100”则执行S43;S42:在条目标记后偏移6个字节,将此后的8个字节以4个字节为一组,判断两组的值是否相同,若相同则执行S5,若不相同则结束;S43:在条目标记后偏移6个字节,将此后的16个字节以4个字节为一组,首先判断前两组的值是否都为“0x00000000”,若是执行S44;若不相同则执行S45;S44:判断后两组的值是否相同,若相同则表明是UBA地址,执行S5;若不相同则结束;S45:判断前两组的值是否相同,若相同则表明是UBA地址,执行S5;若不相同则结束。作为优选,S6和S11具体包括以下步骤:S61:找30模块缺陷条目总数并记录;S62:30模块中缺陷条目总数加1;S63:若30模块的缺陷条目总数为0则执行S64,若大于0则执行S65;S64:30模块的当前UBA缺陷条目数+1,并将屏蔽地址填入到0x40至0x43;S65:判断30模块中原始缺陷条目地址是否大于屏蔽地址,若大于则执行S66,若小于则执行S67;S66:取原始缺陷条目,将原始缺陷条目数+1,再将原始缺陷条目填入原地址的后8个字节中,再将“0x01000000”填入0x3C至0x3F位置,并将屏蔽地址填入到0x40至0x43位置,执行S7;S67:在原始缺陷条目后8个字节填入原始缺陷条目数+1和屏蔽地址,执行S7。作为优选,S9中获取12模块UBA地址的具体步骤如下:S91:搜索12号模块的条目标记“0x12021200”或“0x1A021200”;若找到“0x12021200”则执行S42,若找到“0x1A021200”则执行S43;S92:在条目标记后偏移6个字节,将此后的8个字节以4个字节为一组,判断两组的值是否相同,若相同则执行S5,若不相同则结束;S93:在条目标记后偏移6个字节,将此后的16个字节以4个字节为一组,首先判断前两组的值是否都为“0x00000000”,若是执行S94;若不相同则执行S95;S94:判断后两组的值是否相同,若相同则表明是UBA地址,执行S10;若不相同则结束;S95:判断前两组的值是否相同,若相同则表明是UBA地址,执行S10;若不相同则结束。与现有技术相比本专利技术的优点在于:不用拆解硬盘更换部件便达到可修复硬盘并提取硬盘数据的目的,避免更换操作中因人为因素而导致硬盘故障的扩大化、对硬盘带来二次伤害、甚至造成硬盘完全损坏等问题。附图说明图1为本专利技术实施例20B模块的数据结构图;图2为本专利技术实施例0B模块的数据结构图;图3为本专利技术实施例缺陷条目总数为0的30模块数据结构图;图4为图3加入屏蔽条目后的30模块数据结构图;图5为本专利技术实施例缺陷条目总数不为0且缺陷条目UBA地址大于屏蔽地址的30模块数据结构图;图6为图5加入屏蔽条目后的30模块数据结构图;图7位为本专利技术实施例缺陷条目总数不为0且缺陷条目UBA地址小于屏蔽地址的30模块数据结构图;图8为图7加入屏蔽条目后的30模块数据结构图;图9为本专利技术实施例12模块的数据结构图;图10为图9抹去12模块后的数据结构图。具体实施方式为使本专利技术的目的:技术方案及优点更加清楚明白,以下举实施例,对本专利技术做进一步详细说明。一种针对西数硬盘停转故障的修复方法,包括以下步骤:S1:读取ROM中0B和20B模块;S2:若没有20B模块且0B模块中没有“0x12020100”标记则执行S3,若有0B和20B模块则执行S4;S3:将“0x20”作为屏蔽地址记录,执行S6;S4:判断0B和20B该地址的值的大小,若0B大于20B,则认为硬盘启用0B模块中01模块的UBA地址,提取0B中01模块的UBA地址和01模块长度;反之提取20B中01模块的UBA地址和01模块长度;S4中获取01模块UBA地址和01模块长度的具体步骤如下:S41:搜索01号模块的条目标记“0x12020100”或“0x1A020100”,并找到01模块长度(01模块的长度在条目标记后两个字节);若找到“0x12020100”则执行S42,若找到“0x1A020100”则执行S43;S42:在条目标记后偏移6个字节,将此后的8个字节以4个字节为一组,判断两组的值是否相同,若相同则执行S5,若不相同则结束;S43:在条目标记后偏移6个字节,将此后的16个字节以4个字节为一组,首先判断前两组的值是否都为“0x00000000”,若是执行S44;若不相同则执行S45;S44:判断后两组的值是否相同,若相同则表明是UBA地址,执行S5;若不相同则结束;S45:判断前两组的值是否相同,若相同则表明是UBA地址,执行S5;若不相同则结束。如图1、2所示,图1中20B的值大于图2中0B的值,则取20B的01模块的UBA地址“0x0002FAE6”和01模块长度“0x18”。S5:设屏蔽地址=01模块UBA地址+01模块的长度;S6:在硬盘的30模块中填入S5中的屏蔽地址;S6具体的包括以下步骤:S61:找30模块缺陷条目本文档来自技高网...
一种针对西数硬盘停转故障的修复方法

【技术保护点】
一种针对西数硬盘停转故障的修复方法,包括以下步骤:S1:读取ROM中0B和20B模块;S2:若没有20B模块且0B模块中没有“0x12020100”标记则执行S3,若有0B和20B模块则执行S4;S3:将“0x20”作为屏蔽地址记录,执行S6;S4:判断0B和20B中0x1B位置的值的大小,若0B大于20B,则认为硬盘启用0B模块中01模块的UBA地址,提取0B中01模块的UBA地址和01模块长度;反之提取20B中01模块的UBA地址和01模块长度;S5:设屏蔽地址=01模块UBA地址+01模块的长度;S6:在硬盘的30模块中填入S5中的屏蔽地址;S7:校验30模块,并将校验值填入校验位,回写数据到ROM中;S8:硬盘断电起电,这时硬盘直接就绪,不会停转并可正常读取01模块;S9:从01模块中解析12模块的UBA地址“0x00013545”;S10:设屏蔽地址=12模块的UBA地址+1;S11:在硬盘的30模块中填入S10中的屏蔽地址;S12:断电再起电,再次读取01模块;S13:把12模块信息从01地图模块中抹去,12号模块的条目标记后两个字节修改为0x0000;S14:同时把修改的30模块还原到初始形态;S15:再次断电起点,所有模块能够正常访问,提取COPY1的重要模块信息,回写到COPY0,此时可提取硬盘中数据。...

【技术特征摘要】
1.一种针对西数硬盘停转故障的修复方法,包括以下步骤:S1:读取ROM中0B和20B模块;S2:若没有20B模块且0B模块中没有“0x12020100”标记则执行S3,若有0B和20B模块则执行S4;S3:将“0x20”作为屏蔽地址记录,执行S6;S4:判断0B和20B中0x1B位置的值的大小,若0B大于20B,则认为硬盘启用0B模块中01模块的UBA地址,提取0B中01模块的UBA地址和01模块长度;反之提取20B中01模块的UBA地址和01模块长度;S5:设屏蔽地址=01模块UBA地址+01模块的长度;S6:在硬盘的30模块中填入S5中的屏蔽地址;S7:校验30模块,并将校验值填入校验位,回写数据到ROM中;S8:硬盘断电起电,这时硬盘直接就绪,不会停转并可正常读取01模块;S9:从01模块中解析12模块的UBA地址“0x00013545”;S10:设屏蔽地址=12模块的UBA地址+1;S11:在硬盘的30模块中填入S10中的屏蔽地址;S12:断电再起电,再次读取01模块;S13:把12模块信息从01地图模块中抹去,12号模块的条目标记后两个字节修改为0x0000;S14:同时把修改的30模块还原到初始形态;S15:再次断电起点,所有模块能够正常访问,提取COPY1的重要模块信息,回写到COPY0,此时可提取硬盘中数据。2.根据权利要求1所述的一种针对西数硬盘停转故障的修复方法,其特征在于S4中获取01模块UBA地址和01模块长度的具体步骤如下:S41:搜索01号模块的条目标记“0x12020100”或“0x1A020100”,并找到01模块长度;若找到“0x12020100”则执行S42,若找到“0x1A020100”则执行S43;S42:在条目标记后偏移6个字节,将此后的8个字节以4个字节为一组,判断两组的值是否相同,若相同则执行S5,若不相同则结束;S43:在条目标记后偏移6个字节,将此后的16个字节以4个字节为一组,首先判断前两组的值是...

【专利技术属性】
技术研发人员:黄旭杨先珉张佳强
申请(专利权)人:四川秘无痕信息安全技术有限责任公司
类型:发明
国别省市:四川;51

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

1