笔者的电脑是2005年组装的,硬盘为80GB,具有四个FAT32分区,前段时间正在使用时,D盘突然无法打开,并提示“该分区未格式化”,用启动盘进入DOS模式,出现A:\>后键入D:\>,切换到D盘后使用DIR命令查询,此时出现“Invalid media type reading drive D:”错误信息,经过查询发现,这是硬盘的DBR故障,其实直接格式化该分区后可以正常使用,但由于D盘存放了重要数据,于是计划对该分区的数据进行修复。我们的推荐文章 根据硬盘分区的数据结构,每一个分区由DBR(操作系统引导记录区)、FAT1(文件分配表1)、FAT2(文件分配表2)、DIR(根目录区)、DATA(数据)几个部分组成, 其中DBR通常位于硬盘的0磁道1柱面1扇区,是操作系统可直接访问的第一个扇区,它包括一个引导程序和一个被称为BPB的本分区参数记录表。如果DBR坏了,又没有做备份, 要恢复DBR故障分区的数据,可以使用WinHex工具(下载地址:http://www.cpcw.com/bzsoft)。 步骤1:重启机器后进入Windows系统,首先需要空出一个没有问题的分区,目的是将该分区的DBR作为模板,因为要修改分区重要参数,可能会造成分区无法访问,于是笔者将E分区的资料备份到F盘,并将E盘资料全部清空。tw.WIngWit.cOm 步骤2:此时运行WinHex软件,在“工具”菜单下选择“打开磁盘”,在出现的“编辑磁盘”中选择硬盘(图1),不要选择D分区,这样就能使用硬盘中分区表信息来处理分区,从而巧妙绕过DBR信息。 步骤3:点“确定”按钮后,出现一个“硬盘0已经被打开”的提示,点“确定”按钮后继续(图2),直接在右上方的“访问”下拉列表中选择出现DBR故障的分区(即D分区),进入“分区表(模板)”,将“扇区在分区 1”和“扇区在前的分区 1”的数值记下,它们分别代表分区总扇区数(即扇区<大容量>)和隐藏扇区。 步骤4:进入“搜索”菜单,选择“查找16进制值”,输入FAT32文件分配表数值(如F8 FF FF 0F FF FF FF FF),进入第一文件分配表的起始扇区,将“相关扇区编号”的数值记下(如25),它表示保留扇区数。 步骤5:按F3键继续搜索,转到第二文件分配表的起始扇区,将“相关扇区编号”的数值记下(如3751),此时可得到文件分配表的扇区为3751-25=3726(即扇区/FAT)。由此还可以得出:每簇扇区数=(分区总扇区数-保留扇区数-文件分配表扇区数×2)/(文件分配表扇区数×512/4),得出的结果向下取整即为扇区/簇。 需要注意的是,每簇扇区数必为1、2、4、8、16、32、64,而FAT32分区簇最大为32KB,笔者得出的扇区/簇的数值为16。于是得到了“扇区/簇”、“保留扇区”、“隐藏扇区”、“扇区(大容量)”、“扇区/FAT”五项参数。 步骤6:选中模板分区的“启动扇区(模板)”项,然后会弹出分区DBR参数窗口(图3),将以上五项参数分别填入对应的位置,选中模板扇区后按“Ctrl + C”组合键,切换到D分区的启动扇区,将光标移至偏移0处,选择“编辑→剪贴板数据→写入”菜单(图4),并将剪贴板内容写入备份扇,最后点“保存”按钮,此时进入D盘发现,所有的数据都被恢复出来了。 |