希捷硬盘固件故障问题导致不被识别的数据恢复方法

文档序号:8472855阅读:1129来源:国知局
希捷硬盘固件故障问题导致不被识别的数据恢复方法
【技术领域】
[0001] 本发明属于数据恢复领域,具体涉及一种希捷硬盘固件故障问题导致不被识别的 数据恢复方法。
【背景技术】
[0002] 目前市面上的数据恢复都是针对硬盘可以被识别的情况下进行的,即逻辑层的数 据恢复,还没有硬盘不被识别情况下的数据恢复方法,虽然一些硬盘修复方法有相关的解 决之道,但都存在以下缺陷需要进一步解决。
[0003] 1.只能处理硬盘容量被更改导致的不被识别。
[0004] 2.无法对固件本身进行操作。
[0005] 3.对于坏道很多甚至全盘坏道的现象可能是固件问题导致的不能读取,盲目按照 清零、重映射等方法处理不能达到效果。

【发明内容】

[0006] 本发明针对现有技术的不足,提供了一种希捷硬盘固件故障问题导致不被识别的 数据恢复方法,能够有效的解决硬盘不被识别情况下的数据恢复。
[0007] 为解决以上问题,本发明采用的技术方案如下:一种希捷硬盘固件故障问题导致 不被识别的数据恢复方法,包括以下步骤:
[0008] Sl对故障盘进行初始化;
[0009] S2故障盘初始化后检测故障盘状态,并检测是否为以下特定的数据:
[0010] 检测数据是否是ATAFailed;检测数据是否是Failedsyssect,write;检测数 据是否是Stuffwasunreadable;检测数据是否是CELOG;检测数据是否是Nointerface age;检测数据是否是ErrAPPcode。
[0011] S3根据检测到的不同数据进行相应的修复。
[0012] 作为优选:若S2检测到数据为ATAFailed,解决方法如下:
[0013] 1021故障盘正常使用时有备份转到1024,否则转到1022 ;
[0014] 1022获取故障盘的Family和Firmware参数信息;
[0015] 1023找到与故障盘Family和Firmware相同的匹配盘的ATA模块;
[0016] 1024将匹配盘的ATA模块写入故障盘。
[0017] 作为优选:若S2检测到数据为Failedsyssect,write,解决方法如下:
[0018] 1031将故障盘盘体上的CERT模块加载到故障盘电路板的缓存芯片中;
[0019] 1032开启强制写模式,在1级工厂模式下开启强制写;
[0020] 1033在T级模式下初始化G表;
[0021] 1034在1级工厂模式下清除S.M.A.R.T表。
[0022] 作为优选:若S2检测到数据为Stuffwasunreadable,解决方法如下:
[0023] 1041故障盘正常使用时有备份转到1044,否则转到1042 ;
[0024] 1042获取故障盘的Family和Firmware参数信息;
[0025] 1043找到与故障盘Family和Firmware相同的匹配盘的INFO模块;
[0026] 1044将匹配盘的INFO模块写入故障盘。
[0027] 作为优选:若S2检测到数据为CEL0G,解决方法如下:
[0028] 1051将CERT模块加入到缓存中,使用Ctrl+R加载故障盘盘体上的模块;
[0029] 1052加载CERTTAB模块到缓存,使用Ctrl+T加载故障盘盘体上的模块;
[0030] 1053在T级模式下开启4E校准流程;
[0031] 1054在T级模式调整故障盘回到正常的工作模式,即使AGE= 50。
[0032] 作为优选:若S2检测到数据为Nointerfaceage,解决方法如下:
[0033] 1061获取AGE的值,如果AGE= 60,转到1063,否则转到1062 ;
[0034] 1062在T级模式下将工作模式改成正常工作模式;
[0035] 1063按照检测数据是ErrAPPcode的修复方式修复。
[0036] 作为优选:若S2检测到数据为ErrAPPcode,解决方法如下:
[0037] 1071故障盘正常使用时有备份转到1074,否则转到1072;
[0038] 1072获取故障盘的Family和Firmware参数信息;
[0039] 1073找到与故障盘Family和Firmware相同的匹配盘的APP模块;
[0040] 1074加载APP模块到故障盘的缓存芯片中;
[0041] 1075查看状态是否就绪,如果就绪则结束,否则转到1076;
[0042] 1076加载CERT、CERTTAB模块到故障盘的缓存芯片中;
[0043] 1077在T级模式下调整故障盘回到正常的工作模式,即使AGE= 50 ;
[0044] 1078在T级模式下清除G表,在1级工厂模式下清除S.M.A.R.T表。
[0045] 作为优选:Sl通过调用UART0_Init(9600,set)实现。
[0046] 本发明的有益效果如下:
[0047]1.通过函数调用提示判断造成硬盘不被识别的原因;
[0048] 2.可以通过函数调用对固件的操作解决不被识别的问题;
[0049] 3.可以在不断电的情况下对数据进行恢复。
【附图说明】
[0050] 图1是获取故障盘数据的流程图;
[0051] 图2是102故障盘修复流程图;
[0052] 图3是103故障盘修复流程图;
[0053] 图4是104故障盘修复流程图;
[0054] 图5是106故障盘修复流程图;
[0055] 图6是107故障盘修复流程图。
【具体实施方式】
[0056] 为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对 本发明做进一步详细说明。
[0057] 希捷硬盘固件故障问题导致不被识别的数据恢复方法,包括以下步骤:
[0058] SI对故障盘进行初始化;
[0059] S1通过调用以下函数实现:
[0060] UART0_Init(9600,set) ;//set中包含奇偶校验停止位设置
[0061] S2故障盘初始化后检测故障盘状态,并检测是否为以下特定的数据:
[0062] 检测数据是否是ATAFailed;检测数据是否是Failedsyssect,write;检测数 据是否是Stuffwasunreadable;检测数据是否是CELOG;检测数据是否是Nointerface age;检测数据是否是ErrAPPcode。
[0063] S2通过调用以下函数实现:
[0064] UARTO_Sendchar(OxlA) ;//进入指令模式
[0065] IRQ_READ_UART0 () ;// 读取数据到buffer
[0066] CheckT() ;//检测buffer数据是否是T>
[0067] CheckATAFailedO;//检测buffer数据是否是ATAFailed
[0068] CheckFailedsys() ;//检测buffer数据是否是Failedsyssect,write
[0069] CheckStuffwasunreadable() ;// 检测buffer数据是否是Stuffwas unreadable
[0070] CheckCELogO;//检测buffer数据是否是CELOG
[0071] CheckNOInterfaceAge() ;//检测buffer数据是否是Nointerfaceage
[0072] CheckErrAppCode() ;//检测buffer数据是否是ErrAPPcode
[0073] S3根据检测到的不同数据进行相应的修复。
[0074] 若S2检测到数据为ATAFailed,解决方法如下:
[0075] 1021故障盘正常使用时有备份转到1024,否则转到1022 ;
[0076] 1022获取故障盘的Family和Firmware参数信息;
[0077] 通过调用以下函数实现:
[0078] UART0_Sendchar(OxC) ;// 显不硬盘的Family和Firmware
[0079] 1023找到与故障盘Family和Firmware相同的匹配盘的ATA模块;
[0080] 1024将匹配盘的ATA模块写入故障盘。
[0081] 若S2检测到数据为Failedsyssect,write,解决方法如下:
[0082] 1031将故障盘盘体上的CERT模块加载到故障盘电路板的缓存芯片中;
[0083] 通过调用以下函数实现:
[0084] UART0_Sendchar(0x12);//CERT模块加到缓存
[0085] 1032开启强制写模式,在1级工厂模式下开启强制写;
[0086] 通过调用以下函数实现:
[0087]
【主权项】
1. 一种希捷硬盘固件故障问题导致不被识别的数据恢复方法,其特征在于,包括以下 步骤: Sl对故障盘进行初始化; S2故障盘初始化后检测故障盘状态,并检测是否为以下特定的数据: 检测数据是否是ATAFailed;检测数据是否是Failedsyssect,write;检测数据是否 是Stuffwasunreadable;检测数据是否是CELOG;检测数据是否是Nointerfaceage; 检测数据是否是ErrAPPcode。 S3根据检测到的不同数据进行相应的修复。
2. 根据权利要求1所述的方法,其特征在于,若S2检测到数据为ATAFailed,解决方 法如下: 1021故障盘正常使用时有备份转到1024,否则转到1022 ; 1022获取故障盘的Family和Firmware参数信息; 1023找到与故障盘Family和Firmware相同的匹配盘的ATA模块; 1024将匹配盘的ATA模块写入故障盘。
3. 根据权利要求2所述的方法,其特征在于,若S2检测到数据为Failedsyssect, write,解决方法如下: 1031将故障盘盘体上的CERT模块加载到故障盘电路板的缓存芯片中; 1032开启强制写模式,在1级工厂模式下开启强制写; 1033在T级模式下初始化G表; 1034在1级工厂模式下清除S.M.A.R.T表。
4. 根据权利要求2或3所述的方法,其特征在于,若S2检测到数据为Stuffwas unreadable,解决方法如下: 1041故障盘正常使用时有备份转到1044,否则转到1042 ; 1042获取故障盘的Family和Firmware参数信息; 1043找到与故障盘Family和Firmware相同的匹配盘的INFO模块; 1044将匹配盘的INFO模块写入故障盘。
5. 根据权利要求4所述的方法,其特征在于,若S2检测到数据为CEL0G,解决方法如 下: 1051将CERT模块加入到缓存中,使用Ctrl+R加载故障盘盘体上的模块; 1052加载CERTTAB模块到缓存,使用Ctrl+T加载故障盘盘体上的模块; 1053在T级模式下开启4E校准流程; 1054在T级模式调整故障盘回到正常的工作模式,即使AGE= 50。
6. 根据权利要求5所述的方法,其特征在于,若S2检测到数据为Nointerfaceage, 解决方法如下: 1061获取AGE的值,如果AGE= 60,转到1063,否则转到1062 ; 1062在T级模式下将工作模式改成正常工作模式; 1063按照检测数据是ErrAPPcode的修复方式修复。
7. 根据权利要求1所述的方法,其特征在于,若S2检测到数据为ErrAPPcode,解决 方法如下: 1071故障盘正常使用时有备份转到1074,否则转到1072 ; 1072获取故障盘的Family和Firmware参数信息; 1073找到与故障盘Family和Firmware相同的匹配盘的APP模块; 1074加载APP模块到故障盘的缓存芯片中; 1075查看状态是否就绪,如果就绪则结束,否则转到1076 ; 1076加载CERT、CERTTAB模块到故障盘的缓存芯片中; 1077在T级模式下调整故障盘回到正常的工作模式,即使AGE= 50 ; 1078在T级模式下清除G表,在1级工厂模式下清除S.M.A.R.T表。
8.根据权利要求1所述的方法,其特征在于,Sl通过调用UART0_Init(9600,set)实 现。
【专利摘要】本发明公开了一种希捷硬盘固件故障问题导致不被识别的数据恢复方法,属于数据恢复技术领域,包括以下步骤:S1对故障盘进行初始化;S2故障盘初始化后检测故障盘状态,并检测是否为以下特定的数据:检测数据是否是ATA Failed;检测数据是否是Failed sys sect.write;检测数据是否是Stuff was unreadable;检测数据是否是CE LOG;检测数据是否是No interface age;检测数据是否是Err APP code。本发明的有益效果如下:1.通过函数调用提示判断造成硬盘不被识别的原因2.可以通过函数调用对固件的操作解决不被识别的问题。
【IPC分类】G06F11-07
【公开号】CN104794018
【申请号】CN201510218639
【发明人】梁效宁
【申请人】四川效率源信息安全技术有限责任公司
【公开日】2015年7月22日
【申请日】2015年4月30日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1