手工修复硬盘分区表
1.准备好工具 diskedit 和引导盘。
2.检查 CMOS 配置是否正确。
检查硬盘设置,在 CMOS 中记下 CYLINDER,SECTOR 和 HEAD 参数.
此处只考虑有多个逻辑硬盘硬盘的分区情况:
如果不知道各个逻辑硬盘的具体情况,用 DISKEDIT 中的 Find 菜单寻找字符串 00 00 00 55 AA,并判断是否为
EXTEND 分区的分区信息,如果找到,即可知道 Extend 分区的起始位置,并可推算 DOS 主分区的起始和结束位置,
并推算相关的参数,由于备逻辑盘是连续的,由 EXTEND 分区信息,可找到各逻辑硬盘的分区信息,并推算出
EXTEND 分区的结束位 置及相关参数,将推算出的相关信息写入主分区表中,即可恢复分区表。
注意:EXTEND 分区为 05,DOS 分区为 04 或 06。 对 FAT32 则为 0B 和 0C.用 DISKEDIT 中的 OBJECT 菜单选择
PHYSICAL SECTOR,键入 0,0,1,即可进入主引导区。用 VIEW 菜单中的 AS PARTITION TABLE 项可看分区结构。
一 般情况下 主 引 导 区 的起 始 位 置 SIDE=1 SECTOR=1 , EXTEND 分 区 的起始位 置 SIDE=0 SECTOR=1 , 而
ENDING LOCATION 处 SIDE 和 SECTOR 必然是最大值。可直接在该分区表中修改数据。光标移至任意处回车, 可
显示该 数据处的分区 结构,并可通 过 F2 和 F6 切换。后一个分区的 STARTING LOCATION 必然是前一个分区
ENDING LOCATION 的 下 一 个 扇 区 。 NUMBER OF SECTORS 可 通 过 分 区 的 ENDINGLOCATION 和 STARTING
LOCATION 计 算 出 , 例 如 , STARTING LOCATION 的 SIDE=1 , CYLINDER=0 , SECTOR=1 , ENDING
LOCATION 的 SIDE=7,CYLINDER=262, SECTOR=39 则通过以下式子计算:
主引导区的 RELATIVE SECTORS 是 SECTOR 的最 大值。
EXTEND 分区的 RELATIVE SECTORS=主引导区的 RELATIVE SECTORS+主引导区的 NUMBER OF SECTORS。
EXTEND 分区的 NUMBER OF SECTORS=本分区的 ENDING LOCATION (换算为 SECTORS)-本分区的 RELATIVE
SECTORS。
下面是某 116M 硬盘(参数为 CYLINDER=760 HEAD=8 SECTOR=39)共分有:
C 盘(DOS 引导盘)大小为 40M,DOS 扩充盘 大小为 76M,DOS 扩充盘上的逻辑驱动器为:
D: 32M E: 3M F: 4M G:6M H:7M I:7M J:17M
Starting Location Ending Location Relative Number of
System Boot Side Cylinder Sector Side Cylinder Sertor Sertors Sertors
BIGDOS Yes 1 0 1 7 262 39 39 82017
h1 c1 s1 h2 c2 s2 r1 n1
EXTEND No 0 263 1 7 760 39 82056 155376
h3 c3 s3 h4 c4 s4 r2 n2
unused No 0 0 0 0 0 0 0 0
unused No 0 0 0 0 0 0 0 0
即:r1=s2
n1=(h2+1)*(c2+1)*s2-s2
r2=r1+n1
n2=(h4+1)*(c4+1)*s4-r2
光标停留在 EXTEND 行,按回车键出现下列 DOS 扩展分区逻辑分区表: