http://www.fix.com.cn/datarecover/data-recovery26.htM
MBR是硬盘重要的组成部分,一般都在硬盘的第一扇区,对系统的引导和进一步寻找硬盘的 DBR有重要的作用,下面我就介绍一下硬盘MBR的结构和修复方法。
第一部分 MBR的定义和数据结构
MBR(Master Boot Record),是硬盘的主引导记录,在主引导扇区,位于硬盘的cylinder 0, head 0, sector 1 (Sector是从1开始的)。MBR可以通过FDISK创建,通过INT 13h的fun 2来读取。 引导扇区是每个分区(Partition)的第一扇区,而主引导扇区是硬盘的第一扇区。它由三个部分组成,主引导记录MBR、硬盘分区表DPT和硬盘有效 标志。在总共512字节的主引导扇区里MBR占446个字节(偏移0--偏移1BDH),DPT占64个字节(偏移1BEH--偏移1FDH),最后两个 字节“55AA”(偏移1FEH--偏移1FFH)是硬盘有效标志。结构图如下所示:
MBR功能
1 检查分区表
2 搜索可引导分区
3 加载活动分区的第一扇区(DOS Boot Record)即所谓的硬盘DBR。
MBR组成 一个扇区的硬盘主引导记录MBR由4个部分组成:
1 主引导程序:偏移地址0000H--0088H,它负责从活动分区中装载,并运行系统引导程序。
2 出错信息数据区:偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节。
3 分区表(DPT,DiskPartitionTable):含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为分 区项1、分区项2、分区项3、分区项4。
4 结束标志字:偏移地址01FE--01FF的2个字节值为结束标志55AA,如果该标志错误系统就不能启动。
MBR结构
0 字节 分区状态: 如0-->非活动分区,80--> 活动分区
1 字节 该分区起始头(HEAD)
2 字节 该分区起始扇区和起始柱面
4 字节 该分区类型,如82--> Linux Native分区,83--> Linux Swap 分区
5 字节 该分区终止头(HEAD)
6 字节 该分区终止扇区和终止柱面
8 双字节 该分区起始绝对分区
C 双字节 该分区扇区数
最后的两个标志“55
AA”是分区表的结束标志,如果这两个标志被修改(有些病毒就会修改这两个标志),则系统引导时将报告找不到有效的分 区表。
第二部分 MBR修复方法
常见的MBR修复方法有三种
方法1:首先用光驱引导或者用软驱进入纯dos模式,再用 fdisk /mbr 命令恢复系统固有的主引导程序
方法2:用xp安装盘,进入恢复控制台, fixmbr x:
方法3:WinXP以上系统使用Diskpart命令里面的Clean擦出MBR
第三部分 修复MBR命令 Fdisk /mbr 详解
1. 主引导程序受损
此乃常见故障, 硬盘不能自举, 微机死锁, 或显示 boot failure-insert system diskette, ……之类; 经由软盘引导, fdisk 命令能列出分区信息。
取硬盘同版本 dos 软盘或应急盘引导, 运行 a>fdisk /mbr
命令,仅向主引导扇区写入当前系统固有的主引导程序, 硬盘即恢复自举能力, 如果 dos 引导信息及系统文件等均正常。
2. 仅设基本 dos 分区硬盘的主引导信息全损
前述表现之外, 执行 a>c:, 显示 invalid drive specification,乃分区表遭毁; fdisk 命令不能列出分区信息。 实践中曾遇两例原仅设基本 dos 分区的硬盘(无扩展dos分区), 主引导扇区面目皆非, 经分别运行原用的 ms dos 7.0 及 7.1 fdisk /mbr命令, 常规重写全套完全适用的主引导信息, 由于其 dos 引导信息、文件分配表、根目录及用户数据完好, c 盘均迅即康复。(常规 fdisk 命令初始化 dos 引导扇区等, 有需后续处理)
3. 清除 lilo 信息
在以系统自带的 linux load 过程中, 每修改主引导信息, 籍以引导 linux。 需要时, 删除 linux 分区后, 可用 fdisk /mbr 命令恢复系统固有的主引导程序。
1 检查分区表
2 搜索可引导分区
3 加载活动分区的第一扇区(DOS Boot Record)即所谓的硬盘DBR。
MBR组成 一个扇区的硬盘主引导记录MBR由4个部分组成:
1 主引导程序:偏移地址0000H--0088H,它负责从活动分区中装载,并运行系统引导程序。
2 出错信息数据区:偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节。
3 分区表(DPT,DiskPartitionTable):含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为分 区项1、分区项2、分区项3、分区项4。
4 结束标志字:偏移地址01FE--01FF的2个字节值为结束标志55AA,如果该标志错误系统就不能启动。
MBR结构
0 字节 分区状态: 如0-->非活动分区,80--> 活动分区
1 字节 该分区起始头(HEAD)
2 字节 该分区起始扇区和起始柱面
4 字节 该分区类型,如82--> Linux Native分区,83--> Linux Swap 分区
5 字节 该分区终止头(HEAD)
6 字节 该分区终止扇区和终止柱面
8 双字节 该分区起始绝对分区
C 双字节 该分区扇区数
最后的两个标志“55
AA”是分区表的结束标志,如果这两个标志被修改(有些病毒就会修改这两个标志),则系统引导时将报告找不到有效的分 区表。
第二部分 MBR修复方法
常见的MBR修复方法有三种
方法1:首先用光驱引导或者用软驱进入纯dos模式,再用 fdisk /mbr 命令恢复系统固有的主引导程序
方法2:用xp安装盘,进入恢复控制台, fixmbr x:
方法3:WinXP以上系统使用Diskpart命令里面的Clean擦出MBR
第三部分 修复MBR命令 Fdisk /mbr 详解
1. 主引导程序受损
此乃常见故障, 硬盘不能自举, 微机死锁, 或显示 boot failure-insert system diskette, ……之类; 经由软盘引导, fdisk 命令能列出分区信息。
取硬盘同版本 dos 软盘或应急盘引导, 运行 a>fdisk /mbr
命令,仅向主引导扇区写入当前系统固有的主引导程序, 硬盘即恢复自举能力, 如果 dos 引导信息及系统文件等均正常。
2. 仅设基本 dos 分区硬盘的主引导信息全损
前述表现之外, 执行 a>c:, 显示 invalid drive specification,乃分区表遭毁; fdisk 命令不能列出分区信息。 实践中曾遇两例原仅设基本 dos 分区的硬盘(无扩展dos分区), 主引导扇区面目皆非, 经分别运行原用的 ms dos 7.0 及 7.1 fdisk /mbr命令, 常规重写全套完全适用的主引导信息, 由于其 dos 引导信息、文件分配表、根目录及用户数据完好, c 盘均迅即康复。(常规 fdisk 命令初始化 dos 引导扇区等, 有需后续处理)
3. 清除 lilo 信息
在以系统自带的 linux load 过程中, 每修改主引导信息, 籍以引导 linux。 需要时, 删除 linux 分区后, 可用 fdisk /mbr 命令恢复系统固有的主引导程序。
沒有留言:
發佈留言