日立 -- 基于MRT的日立硬盘修复初级教程
1. 启动程序 MRT是一款优秀的数据恢复工具,目前推出了日立维修模块,在日立硬盘的维修上具有强大的功能。 MRT工具的日立专修模块启动时提供两种模式选择 : “普通模式”和“安全模式”。以“普通模式”启动时程序从硬盘读取的参数进行初始化;以“安全模式”启动时 ,程序不再读取硬盘盘片上的数据,并忽略内部故障仅访问PCB板。当硬盘固件数据损坏导致停止响应或者发出敲击声音时,应该选择“安全模式”。
下面详细的介绍“普通模式”。
程序启动时首先读取硬盘ID信息:
从硬盘ID中提取的硬盘型号等信息会显示在窗口的顶端“硬盘信息”栏,默认显示:“型号”、“序列号”、“固件版本”、“容量”。
然后程序根据选择的硬盘家族进行必要初始化。之后程序会按照下面的步骤进行配置:
1. 加载技术密钥,如果出错显示以下信息:
“Load TeachKey…………………………………………Error(加载技术密钥出错)”
2. 读取 NV-RAM 以获得硬盘的某些内部参数,如果出错显示以下信息:
“Read NV-RAM…………………………………………Error(读 NV-RAM 出错)”。
3. 读取模块列表(“ USAG ”),程序首先会读取USAG的Copy0如果Copy0无法读取将尝试读取Copy1,如果出错显示以下信息:
“Read module table Error,Try to Copy1......(读取模块列表出错,尝试Copy1)”。
Copy1如果读取出错将显示以下信息:
“Read module table…………………………………………Error(读取模块列表出错)”
4. 读取所谓的“ open modules table (开放的模块列表)”,如果出错显示信息:
“ Read Open modules table…………………………………………Error(开放的模块列表不可读)”。
5. 读取区域分配表(“ ZONE ”),如果出错显示信息:
“Read ZONE…………………………………………Error(读取ZONE模块出错)。”如果此模块读取成功,则根据此模块获取硬盘磁头数;否则将不显示磁头数,并将硬盘磁头数初始化为0。
关于上面各条出现的出错信息请见下面的故障分析和解决的方法。
2. 程序的使用
2.1 NV-RAM
固件版本号(例如, A45A )。固件版本号中的头两个字符应与 NV-RAM 中的μ - 码的前两个字符相同 ;若不相同那么硬盘就不能使用 NV-RAM 中的数据初始化,伺服系统无法正常工作。此固件版本码也应与 NV-RAM 中的相应的码相同。若不相同那么硬盘就不能使用 NV-RAM 中的数据初始化,伺服系统也无法正常工作。
2.2 硬盘基本信息 。
查看基本信息时显示以下信息:
--标识符(Identifier)。
--μ - 码(μ -Code)。其中前四个字符( ER4O )表示硬盘型号(参看表 2.“属系码”)。
表 2. 属系码
后四个字符( A45A )表示固件版本号;它与 ROM 中的固件版本号相联系:前 2 个字符( A4 )必须相同,后 2 个字符可以不同。另外 NV-RAM 中的μ - 码还应该与模块列表( USAG )中的μ - 码相同。否则硬盘将使用 NV-RAM 中的数据初始化;伺服系统启动但是不读取磁盘固件区的数据。
--Code of microprogram version ( 微程序代码版本)。
--磁头位图(Heads map)(如,00 01 02 03)。硬盘中磁头的数量和它们的启用情况。
SA结构检测(检查固件结构) 检查固件的完整性和他们的内容有无损坏。
模块的信息以以日志的形式显示在程序的Log页,。
“模块对象备份”。此命令可以修复单个模块或者一组模块。此命令还允许以多种模式读模块:
读模块时忽略错误
Copy 0 (拷贝 0 ) Copy 1 (拷贝 1 )
Copy F (工厂拷贝)
“ Copy 0 ”或“ Copy 1 ”模式仅读取模块拷贝 0 或拷贝 1 。在多磁头的硬盘中拷贝 1 对应的是磁头 1 ;在单磁头的硬盘中拷贝 1 位于另一个磁道上。
模块拷贝的精确位置存储在 NV-RAM 中的地址字节。因此若将多磁头的硬盘的数据写入道单磁头的硬盘的 NV-RAM ,将会引起敲盘——硬盘试图寻找并不存在的磁头对应的模块拷贝。
当仅有copy 0 损坏,模块不能正常工作。
处理建议:可以从损坏的copy强制读取模块数据,再从另一个copy读取数据,两者结合拼出完整的模块数据,然后保存。
在做这一工作之前,应该选择“读模块时忽略错误”模式。
注意:不是所有的模块都在拷贝 1 中有一份拷贝,因此他们只能使用“ Copy 0 ”模式。在“ open modules table (开放模块列表)”列出,而在“模块列表( USAG )”中没有列出的模块不能使用“ copy 1 (拷贝 1 )”模式。
“ Copy F” 将在工厂写入的模块移到硬盘上没有使用的磁道。
注意:只有“模块列表( USAG )”中列出的模块可以使用此种模式。另外, "SRVM (柱面缺陷表)模块”的工厂拷贝与实际使用的模块在校正部分是不同的。很显然,在 “SRVM (柱面缺陷表) 模块"的“工厂拷贝”在写入硬盘之后,硬盘又经过了最后校正,因此造成了两者的不同。
2.3 “修改配置”命令
如果某些原始模块不可读,可以从同型号的硬盘拷贝相应的模块。这里要注意的是从其他硬盘拷贝的模块,需要按照修改后的磁头配置重新执行修改过程。需要修改的模块是 ZONE,SRVM (柱面缺陷表)和 CNSL 。也有可能所有的模块都不可读(当磁头 0 损坏时),
“更改磁头位图” 通过只修改 NV-RAM 中的数据来改变磁头位图。当固件区有缺陷扇区时,可以使用这一方法来修复硬盘。
“修改启动标识” 将 NV-RAM 中的启动标志位清零。当固件区损坏,致使硬盘启动时中止或者磁头发出敲击声时,可以使用这个命令来访问硬盘上的固件模块。此方法如同一个 “开关” 。
2.4 编译器重建
“G-List转P-List ” 将 G 表中的缺陷写入 P 表。由于此命令是对编译器操作,此命令会忽略所谓的“ candidate (候选)”缺陷(不稳定的扇区)。
实际上,东芝日立硬盘的编译器就是P表和G表。
2.5 磁盘 ID
Drive ID (磁盘 ID ) 修改磁盘 ID (磁盘 ID 由在 PC 启动时由系统 BIOS 读出),核对固件区中的信息是否与硬盘标签上的信息相符。
2.6 格式化
Formatting (格式化) 重建编译器,用扇区缓冲中的随机码快速的覆盖硬盘表面。如果遇到严重损坏的区域则中止。运行此命令时需要填入起始 LBA 地址和结束 LBA,格式化步长,跳过的最大扇区数 —遇到错误时跳过一些扇区并继续进行,此外,还可以选择是否记录缺陷。如果选择了记录缺陷扇区,格式化结束后会显示缺陷扇区列表。
2.7 逻辑扫描
逻辑扫描,使用逻辑参数扫描磁盘表面,并将缺陷保存为文件。硬盘自动将发现的坏区写入 G 表。扫描完成后将显示缺陷条目,你可以手动编辑缺陷文件。并通过隐藏缺陷操作将缺陷写入G-List(RDMT),最后执行G-List转P-List将RDMT中的缺陷写到PSHT中,执行此操作后RDMT将被清空。
2.8 缺陷表
警告!程序只能最大只能显示 65535 条内容,如果 G 表包含的记录多于 65535条,多于的将不会显示。但是开头部分显示的缺陷的总的数目是正确的。
3. 固件
3.1 IBM 硬盘固件结构
IBM 硬盘的固件包括三部分: ROM 中的部分, NR-RAM 中的配置数据和磁盘固件区中的可载入数据( DISK firmware ,磁盘固件)。固件由版本号和版本码区分。版本号表示开发进程,版本码是工程代号。
存储在掩膜 ROM 中的固件不能被修改。固件的可修改部分存储在 NV-RAM 和 DISK F/W 中。
IBM 的工程师提出了一种鉴别固件版本的方法:版本号改变而版本码不变。例如,版本号为 A46A 的固件在升级后改为 A4xx ,前两个字符不变,只有后两个字符改变。
注意:不同属系的硬盘的固件不能互相替换。
当下列条件满足时,固件是兼容的:
— ROM , NV-RAM 和 DISK F/W 的版本码相同;
— NV-RAM 和 DISK F/W 中的μ - 码匹配
— ROM 中的版本号和 NV-RAM 与 DISK F/W 中的版本号只有后两个字符不同。
3.2 印刷电路板的兼容
PCB 的兼容性可以通过 IDE 接头处的标签鉴别(见图 3.1 , PIDM 模块中也有相同的内容)。如果前两行的第一个字符相同,那么电路板就是兼容的可以互换。更精确的判别方法可以通过 ROM 或 NV-RAM 中的信息(由于 NV-RAM 中的数据可能损坏或被重写,所以 ROM 中的信息更可靠)。
|