手工恢复主分区表的过程

[复制链接]

该用户从未签到

15

主题

674

回帖

9290

积分

[INTOHARD]团长

浸淫

Rank: 8Rank: 8

积分
9290
发表于 2009-2-26 09:56:51 | 显示全部楼层 |阅读模式
不知有没有人发过,转的。




原分区是C:D:E:F:四个分区。被重新划分为一个分区,恢复原来的状态。

winhex察看主分区表如下:
80 01 01 00 0B FE FF 13 3F 00 00 00 D5 29 C1 00
手工恢复的过程:

1.下面是根据现分区表,恢复出来的一部分数据。 问号的地方就是未知的数据。

80 01 01 00 0B FE ?F ?? 3F 00 00 00 ?? ?? ?? ??
00 00 ?1 ?? 05 FE FF 13 ?? ?? ?? ?? ?? ?? ?? ??

2,查找扩展分区的起始地址:

用WINHEX软件查找55AA的标志位,为加快查找速度可以利用公式:偏移地址 / 8225280 余 510 这个公式查找。 为了加快速度也可以跳到大致的起始地址开始查找。通过查找得到的值是564961FEH,这个是55AA的偏移地址,减1FE就是扩展分区的起始的偏移地址:
564961FEH-1FEH=56496000H
上面的数很重要分区表的所有未知数都是根据这个数计算出来的。

3,计算LBA参数:

根据上面计算的扩展分区的起始的偏移地址除以200H就可以得到起始的扇区数:
56496000H / 200H =2B24B0H
添加到分区表中可得到如下数:
80 01 01 00 0B FE ?F ?? 3F 00 00 00 ?? ?? ?? ??
00 00 ?1 ?? 05 FE FF 13 B0 24 2B 00 ?? ?? ?? ??
根据原分区表的总容量计算扩展分区的容量:
C129D5H+3FH-2B24B0H=960564H
添加到分区表中可得到如下数:
80 01 01 00 0B FE ?F ?? 3F 00 00 00 ?? ?? ?? ??
00 00 ?1 ?? 05 FE FF 13 B0 24 2B 00 64 05 96 00
将上面的扩展分区起始的扇区数减3FH就是主分区的容量:
2B24B0H-3FH=2B2471H
添加到分区表中可得到如下数:
80 01 01 00 0B FE ?F ?? 3F 00 00 00 71 24 2B 00
00 00 ?1 ?? 05 FE FF 13 B0 24 2B 00 64 05 96 00

4,计算CHS参数:

利用扩展分区的起始的偏移地址除以7D8200H就是扩展分区的起始的磁道数。
56496000H / 7D8200H =B0H
添加到分区表中可得到如下数:
80 01 01 00 0B FE ?F ?? 3F 00 00 00 71 24 2B 00
00 00 01 B0 05 FE FF 13 B0 24 2B 00 64 05 96 00
扩展分区的起始的磁道数减1就是主分区结束的磁道数:
B0H - 1H =AFH
添加到分区表中可得到如下数:
80 01 01 00 0B FE 3F AF 3F 00 00 00 71 24 2B 00
00 00 01 B0 05 FE FF 13 B0 24 2B 00 64 05 96 00
至此分区表全部恢复完毕,重新启动电脑就可以看到原来的分区了!




手工恢复引导扇区被覆盖的过程
原硬盘C,D,E,F四个分区,被GHOST覆盖成一个分区,并且D盘的引导记录被覆盖,用数据恢复软件未查到D盘的数据,
讲一下手工恢复的过程:

1,定位D盘的跟目录地址。

因为原始分区C盘大约为1G多,所以先移动到1G的偏移位置,开始查找2E2020202020,可使用公式除512余零来查找。这个是文件夹开始的目录项,很快查到一个目录项记录,察看它所在的族号为5F7A。去除本身的族和第一个族就是根目录到这个文件夹目录的族的数量,再根据每个族为8个扇区计算根目录到这个文件夹的偏移量:
( 5F7AH - 2H )* 8H * 200H = 5F78000H
从文件夹目录的地址作为起始地址,向上跳,偏移为5F78000就是根目录的地址:569C1E00,上下翻看发现FAT表和跟目录巳经被覆盖。
按照上面的方法多试验几个文件夹如果都定位根目录为569C1E00就说明族的扇区数为8。

2,定位扩展分区表的位置:

首先查找E区的分区表起始地址,查找方法请参考手工恢复主分区表的过程一文。查到地址为FA867E00。
通过E盘的起始地址和根目录的地址可计算出D盘的所有族的数量:
( FA867E00H - 569C1E00H )/ 8H / 200H = A3E80H
计算FAT表的容量,因为每个扇区可以记录80H个族纪录由此可计算FAT表的容量。
A3E80H / 80H =147D
根据常规数据:隐藏扇区数3FH,保留扇区数20H,两个FAT表,计算D盘到根目录的偏移地址:
( 147D * 2 + 3F + 20 )* 200H = 52B200H
在根目录的偏移地址569C1E00向上跳偏移为52B200就是D盘分区的分区表的最大偏移地址,察看3D参数为176.2.7,因为原分区的保留扇区和FAT表的个数可能不同,所以定位扩展分区表的起始地址的3D数为176.0.1。偏移为56496000。

3,修改分区表:

修改主分区表和扩展分区表:(详细请参考手工恢复主分区表的过程一文)
主分区表:
80 01 01 00 0B FE 3F AF 3F 00 00 00 71 24 2B 00
00 00 01 B0 05 FE FF 13 B0 24 2B 00 64 05 96 00
扩展分区表:
00 01 01 BO 0B FE 7F FE 3F 00 00 00 50 1E 52 00
00 00 41 FF 05 FE FF 13 8F 1E 52 00 D5 E6 43 00
重新启动电脑发现C,D,E,F分区已经可以识别了,但D区打开出现错误提示。

4,手工恢复D盘启动扇区:

将E盘的启动扇区,拷贝到176.1.1的扇区位置更改如下数据:
每族的扇区数0XD:08
保留扇区数0X0E - 0X0F:20 00
总扇区数0X20 - 0X23:50 1E 52 00 ;( FA867E00H - 56496000H - 7E00H )/ 200H = 521E50H
每个FAT扇区数0X24 - 0X27:80 14 00 00( 569C1E00- 56496000H - 7E00H - 4000H )/ 200H / 2H = 1480H
修改后保存磁盘记录,在电脑里刷新一下,就可以打开D盘了。

5,恢复数据:

将两个FAT表清空,并在首地址写入 F8 FF FF 0F FF FF FF 7F FF FF FF 0F。保存好后用数据恢复软件扫描发现数据可以全部查到了。

该用户从未签到

5

主题

528

回帖

1660

积分

[INTOHARD]营长

Rank: 6Rank: 6

积分
1660
QQ
发表于 2009-2-26 10:51:41 | 显示全部楼层
已经用此法手工恢复过三块丢失分区链表的硬盘分区了,为了避免找出太多的具有55AA的扇区,可以在搜索16进制数值前加上几个字节的00H,据此可以过滤掉大量的干扰扇区,便于快速找到分区链表,我遇到的是对方网友在丢失分区后,采用网上介绍的方法自救,用DOS版Diskgen来抢救丢失的分区,结果Diskgen将所有扩展分区链表的第一分区表项全部清0了,给恢复工作带来了更大的困难,后来根据找到的残余分区连信息,联合推算,手工填写分区表项参数,终于恢复了硬盘所有分区。根据这次的经历,奉劝那些遭遇数据丢失的朋友,自己若对恢复数据没把握或者概念不清晰,千万不要随便实施抢救措施,以免造成二次破坏。

该用户从未签到

18

主题

1353

回帖

1万

积分

[INTOHARD]团长

Rank: 8Rank: 8

积分
13472
QQ
发表于 2009-2-26 11:25:59 | 显示全部楼层
上班時間,回去再看了
  • TA的每日心情
    开心
    2014-2-19 23:25
  • 签到天数: 5 天

    [LV.2]九品芝麻官

    0

    主题

    436

    回帖

    286

    积分

    [INTOHARD]排长

    Rank: 3Rank: 3

    积分
    286
    发表于 2009-2-26 12:42:10 | 显示全部楼层
    又是一种新的恢复方法??看了一下,好像跟以前的不一样。。。

    该用户从未签到

    1

    主题

    86

    回帖

    79

    积分

    [INTOHARD]班长

    Rank: 2

    积分
    79
    发表于 2009-3-2 13:13:42 | 显示全部楼层
    收藏了说 \\
    呵呵  
    来这个论坛 学了很多东西
  • TA的每日心情
    开心
    2012-5-2 05:45
  • 签到天数: 1 天

    [LV.1]布衣百姓

    15

    主题

    750

    回帖

    5008

    积分

    [INTOHARD]团长

    Rank: 8Rank: 8

    积分
    5008
    发表于 2009-3-2 21:01:04 | 显示全部楼层
    这个确实经典`~~~~~~~
  • TA的每日心情
    开心
    2022-5-24 07:02
  • 签到天数: 261 天

    [LV.8]三品御史

    16

    主题

    1157

    回帖

    1229

    积分

    [INTOHARD]营长

    Rank: 6Rank: 6

    积分
    1229
    发表于 2009-3-3 11:32:59 | 显示全部楼层
    谢谢了,哈哈(38: (38:
  • TA的每日心情
    郁闷
    2013-10-2 13:40
  • 签到天数: 34 天

    [LV.5]六品通判

    32

    主题

    357

    回帖

    1322

    积分

    [INTOHARD]营长

    Rank: 6Rank: 6

    积分
    1322
    发表于 2009-7-8 11:54:06 | 显示全部楼层
    很好,又学会了

    该用户从未签到

    1

    主题

    186

    回帖

    107

    积分

    [INTOHARD]班长

    Rank: 2

    积分
    107
    发表于 2009-7-8 14:30:48 | 显示全部楼层
    我都要加把劲了!

    该用户从未签到

    6

    主题

    396

    回帖

    4164

    积分

    [INTOHARD]团长

    Rank: 8Rank: 8

    积分
    4164
    QQ
    发表于 2009-7-8 14:49:09 | 显示全部楼层
    学习了 ,谢楼主分享! (38:
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表