手工修复硬盘分区表
手动恢复分区表
笔者原有一个30GB移动硬盘,使用磁盘管理工具时,误操作将硬盘逻辑驱动器(移动硬盘的第二分区)删除。
重新插上移动硬盘,系统提示创建新的磁盘分区。
因不忍眼看精心收集的资料就这样消失,那怕有一线生机也要将丢失的数据找回来,试试吧。
首先了解一下硬盘的基本情况:此移动硬盘是笔记本硬盘,硬盘分为四个区,即C(系统盘)、D、E、F,均为FAT32 格式,其中被误删除的是D盘。
由于是系统自带的磁盘管理中的删除逻辑驱动器功能将磁盘删去的,之后还未重新创建,因此数据肯定没有被擦除,可能只是删去了此硬盘分区的一些信息。
如果我们能重新恢复这些信息,系统就可以识别出原磁盘分区以及其中的文件。
我们平时最常见的分区方式是先建立一个主分区,然后将剩余的空间全部建立扩展分区,再在扩展分区上建立逻辑盘。
但是,逻辑盘并没有存在于主引导扇区的分区表里,那么硬盘是如何识别逻辑盘符的呢?其实在逻辑盘的扇区上都会建立一个虚拟MBR(主引导记录),扩展分区指向第一个逻辑盘的MBR,第一个逻辑盘的MBR指向第二个逻辑盘的MBR,以此类推。
其中硬盘分区表64字节中每16个字节具体含义如表1:下面我们将使用DiskGen和KVFIX(江民硬盘修复工具)手工修复硬盘分区表:小提示:DiskGen可以显示硬盘分区的基本信息并能进行分区表的备份和修改。
KVFIX能查看硬盘的扇区同时还能进行扇区参数的编辑。
需要注意的是在操作之前一定要做好备份,而且最好是把备份文件拷贝到其他磁盘上,一旦我们操作有误还可以进行恢复。
通过DiskGen,我们可以获得一些有用信息,如图1:根据显示的信息我们很容易就能得出被删D盘的起始和终止位置,实际上硬盘的分区就是通过起始位置和终止位置来定的。
我们可以由起始和终止的位置算出总的扇区数,也可以由总的扇区数逆推出终止扇区数,同时可以通过查看具体的扇区来检验是否正确。
因为就像前面提到的扇区里的字节是有特点的,比方说结束标志55AA。
手工修复MFT
前阵子,我在一次正常开机后,打开QQ空间,突然系统死机。
点击鼠标无反应,按键ctrl+alt+del想杀进程确无反应,于是只好按主机reset键强制重启,结果RP爆发,百年一遇…重启后,无法进XP系统,用PE光盘进,发现C盘和E盘都提示“文件或目录损坏且无法读取”,于是用ptdd重建mbr,仍进不了系统。
重启又进入PE,发现此250G的5个分区的硬盘中,E盘反而可以正常读取了,其他分区出现上面那个提示。
用PTDD重建分区表,没解决。
后来在网上搜过“文件或目录损坏且无法读取”的解决方法,最多提到的是chkdsk /f, 但是在PE里,提示无法识别ntfs。
于是只好把硬盘挂载到室友的电脑里,用chkdsk /f修复,修复后我在Xp双击这些分区,原来的C盘,F盘G盘依旧无法进入,还是那个错误提示。
而D盘可以了。
后来挂载到我电脑另一个硬盘的linux里,竟然能进F和G 盘,里面有FOUND.000这类文件夹,在里面找到了不少修复回来的文件,随机在不同目录点了几个都能用。
于是接下来要解决的问题有:1.同样全部是ntfs系统,为什么XP无法读取F和G分区,而linux可以?(虽然不可以在windows里读取,但至少在linux下可以把数据导出备份,成功了一点点)2.如果从数据修复的角度看,现在只剩下C分区了。
头疼… PTDD,DISKGEN,还有用过一些磁盘错误扫描,都检查不出什么错误。
(这里明显我是病急乱投医…)本着不修复好不罢休的精神吧,虽然C分区的数据真的没有了也不至于损失多惨重,可恰好我可以在另一个硬盘linux里的虚拟机里的XP上网,所以也不需要急用电脑而不得不重装系统。
(双系统的好处之一o(∩_∩)o )之后是上网找专业论坛,搜索期刊。
顺便做下广告,我觉得中国硬盘基地技术论坛不错。
我也是第一次从这里知道可以用winhex修复数据。
并且也通过搜索得知我的故障可能是MFT有错。
在里面看过一句话,“你要是不会手动16进制写mft,不知道他的规则,计算方式。
手工编辑分区表挽救丢失的硬盘分区数据
分 区净空 间
Tb a By e tl t s 0 0 2 7 6 6 80 3 18 4 O : 1I 2 O 2 D 3 4 94 096274 2 3 4 1 34 000956 1 8 7 8 64
D区起 始扇 区- C分 区起 始扇 区—6 =3 8 8 2 - 3 4 2 90—0 3 42 8 7 —6 =3 8 8 5 :
D盘 占用 净扇 区数应为 :
E区起始扇 区—- 区起 始扇 区- 6 =7 8 4 2 —3 8 82 —6 =4 0 5 4 : D分 - 3 7 3 9 5 4 2 9 0 3 3 0 92 -
OF GUANGXI
F盘 占用净扇 区数应为 : 磁盘 总扇区一 F分 区起始扇 区 =16 9 3 2 3—15 8 95—6 5 2 6 2 +6 3 16 7 3=2 94 ; 10 3 7 1
可见 C盘分 区数据链 出了问题 , 占用净扇 区数不准 , 其 需要修改 。 () 2 记录分析各个分 区表数据 在 K 0 0的界面 , F V30 按 6硬盘救护箱功能 , 再按 F 进入查看 C盘主分 区表。硬盘分 区表上 四个 数据块 l 项共有 6 4个字节 。 每一块项 1 6个字节表示一个分区 , 以一个分 区表空间最多 只能表示 4个 分 区。主分 区 所
表上的 4 块项 用来表示主分 区和扩展分 区的信息 。因为扩展分区最 多只能有 一个 , 以硬盘最多可 以有 四个 所 主分 区或者三个主分区 , 扩展分 区。余下 的分 区表是表示逻辑分 区的。本磁盘原来有一个 主分 区和 一个 一个 扩展 分区 , 正常情况下数据要 占 2 用 个块项 , 其余的块项 数据为零 。
如何修复分区表
1. 如何修复分区表建议你在dos下先使用fdisk/mbr命令试着恢复一下硬盘分区表;如果不行考虑尝试diskgen(原名diskman)里面的修复分区表命令来恢复,同样是在dos下运行.给你推荐几款修复软件1:三茗硬盘医生是继KV3000和DiskGen之后又一恢复分区表的利器,由于功能专一,所以重建分区表的能力比两位前辈强大,举个例子,DiskGen 虽然也能扫描到许多分区表信息,但找到的多数都是无用数据,而且花费时间太长,而三茗硬盘医生的“命中率”明显高得多了。
三茗硬盘医生下载地址:/soft/5554.htm,只有64K大小,把它拷到软盘或U盘中就可以开始你的数据恢复之旅了。
2:FDISK用FDISK还可以新建立分区、重建主分区表,但这种方法不覆盖主引导记录的代码区。
如果要保证硬盘内数不受破坏,分区时必需与原来的分区相一致,否则数据不保。
建议使用FDISK的汉化版,很容易上手。
参考资料:/question/9322158.html3:KV3000在KV3000的主菜单上,按下F10键,就可对系统的有关参数和硬盘分区表快速测试,如果硬盘分区表不正常,KV3000会先将坏分区表保存到软盘上以防不测,再自动重建硬盘分区表,使硬盘起死回生。
但如果硬盘只有一个分区,而且文件分配表(FAT表)、文件目录表(ROOT表) 严重损坏,数据已经都没有了。
那么,用这个功能即使恢复了C盘分区表,也不能使C盘引导,数据也不能恢复。
这时需要配合其它的硬盘修复工具来恢复数据。
如果硬盘还有D、E、...等几个分区,一般情况下,KV3000能找回后面没有被破坏掉的分区,重建一个新的硬盘分区表,然后,再用DOS系统软盘引导机器后,就可进入硬盘后面几个分区,将数据备出后,再将硬盘重新分区、格式化。
KV3000修复硬盘的详细使用方法,大家可以查看KV3000杀毒软件的使用说明文件,也可以到江民网站去查看。
21如何修复硬盘的分区表分区表为何会出故障在分区表被破坏后,启动系统时往往会出现“Non-System disk or disk error,replace disk and press a key to reboot”(非系统盘或盘出错)、“Error Loading Operating System”(装入DOS引导记录错误)或者“No ROM Basic,System Halted”(不能进入ROM Basic,系统停止响应)等提示信息。
手工(代码)分析硬盘分区表
三、关于分区数大于4
很多情况下,我们的分区数目不止于四个,但MBR中最多只能容纳四个,为此MS引入了虚拟MBR的概念,所谓虚拟MBR就是在硬盘分区表的后面还有很多和主引导扇区一样的扇区(具体个数取决于你硬盘分区的数量),此虚拟MBR占位512个字节,只不过它的引导程序没有任何意义,一般为全0填充,它的分区表信息也只有2项(各个字节含义同主引导扇区),第一个部分描述本分区信息,第二个部分描述的是下一个分区的信息。如果下一个分区的信息为全0 则表示分区结束。通常情况下,主引导扇区的4个分区也不是全都使用的,第一个为引导区(通常的C盘),第2个为扩展分区,顺着这个链就可以一直找出所有的分区。
invoke StdOut,offset _10
invoke CreateFile,addr diskname,GENERIC_READ or GENERIC_WRITE ,\
FILE_SHARE_READ or FILE_SHARE_WRITE ,0,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0
diskname db '\\.\PHYSICALDRIVE0',0
ctitle db '分区号 分区首地址(扇区) 分区容量(MB)',0
cline db '=======================================',0
cspace db ' ',0
invoke StdOut,offset _10
jmp localsector ;转到扫描扩展分区链的处理程序段
.endif
inc ebx
.endw
localsector: ;扩展分区链处理
winhex修复分区表
据恢复分类:硬恢复和软恢复。
所谓硬恢复就是硬盘出现物理性损伤,比如有盘体坏道、电路板芯片烧毁、盘体异响,等故障,由此所导致的普通用户不容易取出里面数据,那么我们将它修好,同时又保留里面的数据或后来恢复里面的数据,这些都叫数据恢复,只不过这些故障有容易的和困难的之分;所谓软恢复,就是硬盘本身没有物理损伤,而是由于人为或者病毒破坏所造成的数据丢失(比如误格式化,误分区),那么这样的数据恢复就叫软恢复。
这里呢,我们主要介绍软恢复,因为硬恢复还需要购买一些工具设备(比如pc3000,电烙铁,各种芯片、电路板),而且还需要懂一点点电路基础,我们这里所讲到的所有的知识,涉及面广,层次深,既有数据结构原理,为我们手工准确恢复数据提供依据,又有各种数据恢复软件的使用方法及技巧,为我们快速恢复数据提供便利,而且所有软件均为网上下载,不需要我们投资一分钱。
数据恢复的前提:数据不能被二次破坏、覆盖!关于数码与码制:关于二进制、十六进制、八进制它们之间的转换我不想多说,因为他对我们数据恢复来说帮助不大,而且很容易把我们绕晕。
如果你感兴趣想多了解一些,可以到百度里面去搜一下,这方面资料已经很多了,就不需要我再多说了。
数据恢复我们主要用十六进制编辑器:Winhex (数据恢复首选软件)我们先了解一下数据结构:下面是一个分了三个区的整个硬盘的数据结构MBR C盘EBR D盘EBR E盘MBR,即主引导纪录,位于整个硬盘的0柱面0磁道1扇区,共占用了63个扇区,但实际只使用了1个扇区(512字节)。
在总共512字节的主引导记录中,MBR又可分为三部分:第一部分:引导代码,占用了446个字节;第二部分:分区表,占用了64字节;第三部分:55AA,结束标志,占用了两个字节。
后面我们要说的用winhex软件来恢复误分区,主要就是恢复第二部分:分区表。
引导代码的作用:就是让硬盘具备可以引导的功能。
如果引导代码丢失,分区表还在,那么这个硬盘作为从盘所有分区数据都还在,只是这个硬盘自己不能够用来启动进系统了。
分区表练习题
硬盘数据恢复与维修任务书项目三分区表结构班级姓名工位号上课时间任务一:进制转换一.计算机中的存储单位1、单位8 bit = Byte = B (字节)1 KB = B = 210B1 MB = 1024 KB = KB=220B1 GB = 1024 MB = 210MB= BTB = 1024 GB = 210GB=240B2、进制十进制二进制八进制十六进制10()2()8()16()基数数字二.MBR的数据结构1、MBR可分为三大部分:1):占用446字节2):占用64字节,3)结束标志,占用两个字节2、 分区表部分表项各字节含义: 1)第1字节:引导标志,80H 表示 分区,00H 表示 分区 第2、3、4、字节:表示起始磁头数,柱面数,扇区数(CHS 物理地址) 第5字节:表示 。
第6、7、8、字节:表示结束磁头号,扇区号,柱面号。
第9、10、11、12字节:本分区 的扇区数(保留扇区) 第13、14、15、16字节:表示 扇区数(分区大小)2)常用的分区表类型00H---------表示该分区未用0BH0CH---------FAT32分区类型(EB 90)07H-------- 分区类型(EB 90)05H-------- 分区0FH-------- 分区83H--------Linux分区三.DBR的数据结构任务二:winhex1.MBR 结构在底层数据编辑软件中2.DBR 结构在底层数据编辑软件中3、 填写分区表步骤一: 二: 三:任务三:实操手写恢复分区表1.手工恢复分区表:每人最少三遍2. 写出遇到的问题以及解决的方法。
3.手工恢复分区表考核。
要求:对教师所给硬盘进行手工恢复分区表,恢复后请工程师检查是否合格并签字。
手工恢复分区表考核练习合格!签字:记录数据页。
手工恢复硬盘分区表记述
手工恢复硬盘分区表记述(zt)想必大家都有过数据丢失的糟糕经历,费尽心力收集的数据,由于病毒破坏、误删除、误格式化、分区软件误操作、存储设备损坏等原因而毁之一旦,真是令人痛心。
其实我们只要静下心来学习一点数据恢复方面的浅近知识,遇上这样的倒霉事,只要不是严重的硬件损坏,就能挽回一部分数据,运气不错的话,找回全部数据也是可能的。
讨论数据恢复,我们先来看看最简单的情况:单纯的硬盘分区表损毁(非硬件损坏),现象——分区丢失。
要重建硬盘分区表,就得搞清楚硬盘分区是如何组织的,下面先介绍相关的背景知识。
一、磁盘寻址方式:CHS和LBA1.CHS寻址方式CHS是Cylinder(柱面)/Head(磁头)/Sector(扇区)的缩写。
为什么会有这些参数,这要从早期的磁盘结构说起。
很久以前,硬盘的容量还非常小的时候,为了扩大磁盘容量,人们把几个盘片叠加在一起,每个盘面由一个磁头访问,盘面又划分为许多同心圆环,这就是磁道,每条磁道又划分为许多区段,每个区段就称为一个扇区。
由此产生了所谓的3D参数(Disk Geometry),即磁头数(Heads)、柱面数(Cylinders,所谓柱面是由半径相同分属不同盘面的若干磁道组成)、扇区数(Sectors),以及相应的寻址方式。
见附图:图片附件: 1.jpg (2006-12-13 20:16, 54.09 K)其中:磁头数(Heads) 表示硬盘总共有几个磁头,也就是有几面盘片,最大为255 (用8 个二进制位存储);柱面数(Cylinders) 表示硬盘每一面盘片上有几条磁道,最大为1024(用10 个二进制位存储);扇区数(Sectors) 表示每一条磁道上有几个扇区,最大为63 (用6个二进制位存储)。
每个扇区一般是512个字节,理论上讲这不是必须的,但好象没有取别的值的。
所以磁盘最大容量为:255 * 1024 * 63 * 512 / 1024 / 1024 = 8032.5 MB。
WINHEXRAID纯手工恢复加超详细解
WINHEX RAID修复RAID0分析关于RAID,大家可能有些陌生。
在个人电脑上,RAID用的不多,但是windows XP支持跨区卷和带区卷。
Windows server 2003支持跨区卷,带区卷,RAID-5等。
对于RAID0的分析主要在于重组磁盘,重组磁盘就需要确定盘序,块大小,判断磁盘加入阵列的起始位置等。
确定了上述参数后就可以重组阵列达到恢复数据的目的了。
但是在具体的操作中,要如何确定上述参数呢?这个就要对文件系统有深入的了解,特别是NTFS文件系统,因为RAID基本都是采用NTFS文件系统,很少有采用FAT32文件系统的。
看了马林老师的《数据重现》之后发现,马林老师给出的实验素材真是精心设计过的了。
如果自己做一个RAID就会出现很多和马老师的素材不一样的结果。
这里我就从如何组建一个RAID0开始然后逐步分析。
马老师给出的方法具有通用性,但是有些时候会出现找不到符合马老师给出的素材的情况,那么就不能用马老师讲的方法了。
我们就只能在对文件系统有深入的理解的前提下,分析RAID了。
这就要求我们对文件系统有深入的理解,特别是NTFS文件系统。
好的,下面我就从组建一个RAID0开始,分析一下RAID0。
希望能给大家带来一些启示。
这个是我在windows XP下虚拟出的三块磁盘,每块磁盘的大小都是200M三块磁盘做了一个RAID0 ,采用NTFS格式化。
上图显示的三块磁盘的0号扇区,这个扇区的主要作用是一个DOS分区结构。
和基本磁盘的MBR有点类似。
这个扇区也有一个分区表,但是只占用了一个分区表项。
大家看下图分区类型是0x42 起始于63号扇区,大小是0x9A 20 06 00 也就是401562个扇区。
而磁盘的总扇区数是409600个扇区。
因为在windows系统中采用逻辑磁盘管理也就是LDM。
LDM支持JBOD, RAID0, RAID1和RAID5。
要组成这些阵列类型,我们需要把我们的磁盘转换成动态磁盘,而LDM就是管理动态磁盘的。
用WinHex手工恢复硬盘分区表
用WinHex手工恢复硬盘分区表最近,PC机不能正常引导,将硬盘挂载到其它PC机上,显示硬盘未分区,结果如下图所示:原硬盘分为4个分区,但现在显示未分区,推测是硬盘的分区表丢失,计划用WinHex工具手工恢复硬盘分区表,通过用WinHex查看分区表,果真丢失了分区表,于是利用该工具进行了恢复,成功修复硬盘。
恢复期间,参考了网上的众多资料,这些资料虽然提供了很多帮助,但感觉理论性太强,没有充分利用工具本身的优势,因此作一总结,以为新手提供帮助。
为了更好的理解恢复方案,在文中增加了小知识点,如果对理论不感兴趣,可略过这些小知识点,直接参考恢复步骤即可。
在此也一并感谢在网上分享资料的各位大侠。
一、查看MBR(Master Boot Record)利用WINHEX打开硬盘的MBR,如下图所示:从图中可见,1、第1扇区的55AA前的64个字节全为0,表明分区表信息丢失。
2、在最上边的栏中的可以看到分区信息,包括分区名称、类型、大小、该分区的首扇区等信息,这些将帮助我们迅速地恢复硬盘分区。
小知识1:MBR(Master Boot Recorder)、DPT(Disk Partition Table)MBR位于磁盘的第一个扇区,CHS地址是0柱面,0磁头,1扇区,共占用63DPT中定义的分区包括主分区和扩展分区,主分区+扩展分区总共不能超过4个。
所谓主分区是指DPT中包含能够被系统的磁盘分区,一个硬盘主分区至少有1个,最多4个,它是可以设置为活动的,即可以引导操作系统。
一个硬盘只能有一个活动分区。
扩展分区并不能被系统直接使用,它的作用是突破DPT中只能定义四个分区限制的,可以没有,最多1个。
对于windows系统,一般分为一个主分区,一个扩展分区。
(本文介绍的方法也是针对这种情况,对硬盘分区表进行恢复)。
其做法:定义完主分区之后,将多余的容量定义为扩展分区,指定该分区的起始位置,根据起始位置指向硬盘的某一扇区,称作扩展MBR(EBR),在其中定义下一个分区表。
实验2 手工恢复硬盘分区表
手工恢复硬盘分区表实验步骤:1、模仿分区表被病毒破坏的情况,将MBR全部填零。
首先将MBR所在的扇区选中。
鼠标指向第一个字节,单击右键,选择“选块开始” ,然后鼠标指向MBR的最后一个字节,单击右键,选择“选块结尾”;在选区内部单击鼠标右键,选择“编辑”,这样就有出来一个菜单,选“填充选块”,这样就出来一个填充选块对话框,在“用十六进制填充”的输入框中输入“00”,再点“确定”,这样MBR所在扇区全部被我们填充为“00”。
如果想取消选区,那就用鼠标拖动随便选中一块区域,那么原来的选区就会取消。
注意,如果扇区数据被修改了而没有存盘就会变为别的颜色。
2、修改了扇区,这时候还没有存盘生效,如果你想存盘生效的话,就选择“文件”菜单“保存扇区”命令。
存盘后,扇区被修改的数据又变为黑色。
3、这样分区表给删除了,但必须重新启动才能生效,如果打开我的电脑,会发现三个分区(F 、G、H)还在那里,并且里面的数据还能正常使用。
关闭所有程序将电脑重新启动……4、再打开Winhex发现MBR全部为零了,下面我们就着手开始手工恢复分区表。
5、首先恢复引导代码,用Winhex到别的系统盘把引导代码复制过来。
现在的机器上应该挂着两个硬盘。
从系统盘上复制引导代码到实验盘。
单击“磁盘编辑器”按钮,出现“编辑磁盘”对话框,选择“HD0”,点“确定”。
这样我们就把系统盘的分区表给打开了,注意,现在我们是打开了两个窗口,当前的窗口是“硬盘0”,在标题栏上有显示。
另外,打开窗口菜单也能看出来,当前窗口被打上一个勾,如果想切换回原来的窗口,就点击“硬盘1”。
首先选中系统盘的引导代码,然后在选区中单击鼠标右键,选“编辑”。
又出来一个菜单,然后我们选“复制选块”——“正常”,然后切换回硬盘1窗口,在零扇区的第一个字节处单击鼠标右键,选“编辑”,然后选“剪贴板数据”——“写入……”,出现一个窗口提示,点“确定”。
这样,我们就把一个正常系统盘上的引导代码复制过来了。
用WinHex手工恢复硬盘分区表
用WinHex手工恢复硬盘分区表最近,PC机不能正常引导,将硬盘挂载到其它PC机上,显示硬盘未分区,结果如下图所示:原硬盘分为4个分区,但现在显示未分区,推测是硬盘的分区表丢失,计划用WinHex工具手工恢复硬盘分区表,通过用WinHex查看分区表,果真丢失了分区表,于是利用该工具进行了恢复,成功修复硬盘。
恢复期间,参考了网上的众多资料,这些资料虽然提供了很多帮助,但感觉理论性太强,没有充分利用工具本身的优势,因此作一总结,以为新手提供帮助。
为了更好的理解恢复方案,在文中增加了小知识点,如果对理论不感兴趣,可略过这些小知识点,直接参考恢复步骤即可。
在此也一并感谢在网上分享资料的各位大侠。
一、查看MBR(Master Boot Record)利用WINHEX打开硬盘的MBR,如下图所示:从图中可见,1、第1扇区的55AA前的64个字节全为0,表明分区表信息丢失。
2、在最上边的栏中的可以看到分区信息,包括分区名称、类型、大小、该分区的首扇区等信息,这些将帮助我们迅速地恢复硬盘分区。
小知识1:MBR(Master Boot Recorder)、DPT(Disk Partition Table)MBR位于磁盘的第一个扇区,CHS地址是0柱面,0磁头,1扇区,共占用63个扇区,实际上只使用1扇区;其布局如下:DPT中定义的分区包括主分区和扩展分区,主分区+扩展分区总共不能超过4个。
所谓主分区是指DPT中包含能够被系统的磁盘分区,一个硬盘主分区至少有1个,最多4个,它是可以设置为活动的,即可以引导操作系统。
一个硬盘只能有一个活动分区。
扩展分区并不能被系统直接使用,它的作用是突破DPT中只能定义四个分区限制的,可以没有,最多1个。
对于windows系统,一般分为一个主分区,一个扩展分区。
(本文介绍的方法也是针对这种情况,对硬盘分区表进行恢复)。
其做法:定义完主分区之后,将多余的容量定义为扩展分区,指定该分区的起始位置,根据起始位置指向硬盘的某一扇区,称作扩展MBR(EBR),在其中定义下一个分区表。
用WinHex手工恢复硬盘分区表
用WinHex手工恢复硬盘分区表最近,PC机不能正常引导,将硬盘挂载到其它PC机上,显示硬盘未分区,结果如下图所示:原硬盘分为4个分区,但现在显示未分区,推测是硬盘的分区表丢失,计划用WinHex工具手工恢复硬盘分区表,通过用WinHex查看分区表,果真丢失了分区表,于是利用该工具进行了恢复,成功修复硬盘。
恢复期间,参考了网上的众多资料,这些资料虽然提供了很多帮助,但感觉理论性太强,没有充分利用工具本身的优势,因此作一总结,以为新手提供帮助。
为了更好的理解恢复方案,在文中增加了小知识点,如果对理论不感兴趣,可略过这些小知识点,直接参考恢复步骤即可。
在此也一并感谢在网上分享资料的各位大侠。
一、查看MBR(Master Boot Record)利用WINHEX打开硬盘的MBR,如下图所示:从图中可见,1、第1扇区的55AA前的64个字节全为0,表明分区表信息丢失。
2、在最上边的栏中的可以看到分区信息,包括分区名称、类型、大小、该分区的首扇区等信息,这些将帮助我们迅速地恢复硬盘分区。
小知识1:MBR(Master Boot Recorder)、DPT(Disk Partition Table)MBR位于磁盘的第一个扇区,CHS地址是0柱面,0磁头,1扇区,共占用63个扇区,实际上只使用1扇区;其布局如下:DPT中定义的分区包括主分区和扩展分区,主分区+扩展分区总共不能超过4个。
所谓主分区是指DPT中包含能够被系统的磁盘分区,一个硬盘主分区至少有1个,最多4个,它是可以设置为活动的,即可以引导操作系统。
一个硬盘只能有一个活动分区。
扩展分区并不能被系统直接使用,它的作用是突破DPT中只能定义四个分区限制的,可以没有,最多1个。
对于windows系统,一般分为一个主分区,一个扩展分区。
(本文介绍的方法也是针对这种情况,对硬盘分区表进行恢复)。
其做法:定义完主分区之后,将多余的容量定义为扩展分区,指定该分区的起始位置,根据起始位置指向硬盘的某一扇区,称作扩展MBR(EBR),在其中定义下一个分区表。
硬盘损坏后恢复数据的几种方法nbsp误格式化硬盘数据的恢复
硬盘损坏后恢复数据的几种方法 误格式化硬盘数据的恢复214小游戏/一、硬盘的分区对于你手中硬盘来说,首先要做的事情就是分区了。
硬盘分区是否合理直接影响到以后工作的便利性和数据的安全性。
我们最常见到的分区表错误也是硬盘的最严重错误,不同错误的程度会造成不同的损失。
如果是没有活动分区标志,则计算机无法启动。
但从软驱或光驱引导系统后可对硬盘读写,可通过fdisk重置活动分区可进行修复。
如果是某一分区类型错误,会造成某一分区的丢失。
在一般情况下完成硬盘分区之后,会形成3种形式的分区状态;即主分区、扩展分区和非DOS分区。
在硬盘中非DOS分区(Non-DOSPartition)是一种特殊的分区形式,它是将硬盘中的一块区域单独划分出来供另一个操作系统使用,对主分区的操作系统来讲,是一块被划分出去的存储空间。
只有非DOS分区内的操作系统才能管理和使用这块存储区域,非DOS分区之外的系统一般不能对该分区内的数据进行访问。
主分区则是一个比较单纯的分区,通常位于硬盘的最前面一块区域中,构成逻辑C磁盘。
其中的主引导程序是它的一部分,此段程序主要用于检测硬盘分区的正确性,并确定活动分区,负责把引导权移交给活动分区的DOS或其他操作系统。
此段程序损坏将无法从硬盘引导,但从软区或光区之后可对硬盘进行读写。
而扩展分区的概念是比较复杂的,极容易造成硬盘分区与逻辑磁盘混淆;分区表的第四个字节为分区类型值,正常的可引导的大于32mb的基本DOS分区值为06,扩展的DOS分区值是05。
如果把基本DOS分区类型改为05则无法启动系统,并且不能读写其中的数据。
如果把06改为DOS不识别的类型如efh,则DOS认为改分区不是DOS分区,当然无法读写。
很多人利用此类型值实现单个分区的加密技术,恢复原来的正确类型值即可使该分区恢复正常。
分区表中还有其他数据用于纪录分区的起始或终止地址。
这些数据的损坏将造成该分区的混乱或丢失,一般无法进行手工恢复,唯一的方法是用备份的分区表数据重新写回,或者从其他的相同类型的并且分区状况相同的硬盘上获取分区表数据,否则将导致其他的数据永久的丢失。
硬盘分区逻辑错误的修复
<基本定义>硬盘分区记录MBR表:位于硬盘分区第0扇区用于引导硬盘分区的含有分区表的扇区。
硬盘引导记录I/O表:位于硬盘分区第63扇区用于引导逻辑磁盘且含有磁盘I/O参数的扇区。
硬盘主引导分区:用于引导操作系统的分区,一个硬盘只能有一个主引导分区。
硬盘扩展分区:用于管理一个或多个逻辑磁盘分区的分区,系统不能直接使用。
硬盘逻辑分区:可供系统直接使用其扇区的硬盘分区。
硬盘逻辑磁盘:被系统利用的硬盘逻辑分区的系统管理部分。
<基础知识>1、硬盘0扇区及硬盘总扇区倒数的第100个扇区备份有硬盘的主引导分区表。
2、硬盘63扇区及硬盘总扇区倒数的第99扇区备份有硬盘的主引导扇区,即磁盘的I/0参数表。
3、一般用FDISK分区的FAT32类型的硬盘在此分区的第69扇区处会有一个备份的引导扇区的信息。
4、硬盘分区结构顺序:(PART+BOOT(保留扇区)+FAT*2+ROOT+DA TA)。
5、文件分配表FAT首部含有十六进制数0000F8FFFF0F(不含前导符0000)。
6、文件目录表FDT中含有分区根目录下的目录名和文件名,如command和recycled。
7、被FDISK处理后的BOOT区,内容全为十六进制"F6",同时FDISK所备份FAT32的BOOT 扇区也被清空为"F6",再翻到"BOOT扇区+32"位置,会有FAT表标志"F8FFFF0F"。
<分区记录>800101000B FE7F BE3F000000C0926D00000041BF0F FE FF FE FF926D00FC0C F501每个表项16字节,低位在前高位在后,各字节的含义如下:第00字节:为引导标志项,值应为00或80第01-03字节:为分区开始的磁头、扇区、柱面号。
第04 字节:为分区系统标志,值05为逻辑分区记录中的扩展分区、06 为FAT16分区、0B 为FAT32分区、0F为主分区记录中的扩展分区。
硬盘分区表的修复-TestDisk篇
硬盘分区表的修复——TestDisk软件篇自从上个世纪计算机诞生以来,计算机从实验室慢慢走入我们日常生活之中,特别是上个世纪未,微型计算机更是普及到了工作、生活的方方面面,计算机以其方便、快捷、功能强大成了我们工作、生活不可缺少的工具,而且因其保存、处理、搜索数据方便的特性,使得我们慢慢将数据从纸张上转移到计算机存储器上来;重要的数据,我们都会去做最少一份拷贝,例如备份至其它计算机的存储器上、备份至光盘等不易损坏的存储介质上,甚至有如美国一家公司在每天下午使用汽车等运输工具将每天的数据运输至另外的一座城市内去,这---正突出了生活工作中数据的重要性;但,有些时候我们可能因一些原因未备份重要数据,在此期间因一些操作导致存储数据的硬件损坏,这时就只能去恢复数据了,一部分故障可以通过一些方法修复,但是还有很大一部分故障则可能无法修复,这时造成的损失就根据数据的重要而变化了,严重的可能就会导致公司的运作无法进行下去,比如有些公司是专门联系客户来进行中介开展商务的,如果丢失了所有客户的通讯方法,则公司的损失就很严重了;在这些因操作导致数据存储器的故障中,因现在工艺的限制,硬盘是其中最易损坏的一类存储器,今天我们就以硬盘为例,介绍因为分区表损坏,导致无法读取分区中的数据的情况,通常我们是通过恢复备份的分区表信息来恢复数据的,但很多时候我们没有备份分区表,那么应该怎么办呢?!在修复此类故障的方法中,就一种方法是重新建立分区表,我们可以通过第三方软件(例如DISKGEN、Partition Table Doctor、DiskMan、TestDisk、易我分区表医生等)来扫描硬盘的扇区,分析数据的存储结构来重新建立原来的分区表数据,以此达到恢复数据的目的,当然,前提是故障发现后,未对硬盘作过操作。
下面我以其中的TestDisk软件为例来讲述怎么通过软件重建硬盘的分区表。
TestDisk 主要用来恢复损坏的分区以及拯救无法引导的磁盘,TestDisk支持在Windows、Linux、Unix、Mac OS 等系统上执行。
SATA硬盘分区表损坏的维修
硬件HardWare电脑知识与技术应用天地S ATA硬盘分区表损坏的维修■文/图刀刀棋125 3 4笔者的硬盘为120GB SATA,前段时间机器无法启动,经过多次检查后,发现是硬盘分区表坏了,但当我使用Norton Utility修复分区表时,软件却无法检测到硬盘,后来测试发现,原来大部分软件都无法支持SATA硬盘修复,后来找到了《易我分区表医生》这个工具,它帮我解决了问题。
一、制作修复启动盘硬盘分区表被破坏后,Window s系统无法识别硬盘分区,而把硬盘作为一个尚未分区的“裸盘”来对待。
如此一来,不仅Windo ws系统无法运行,而且连已经保存在硬盘上的数据也不会被系统所认可。
因此,要修复硬盘进行分区表,必须通过引导修复启动盘进入DOS模式。
不过在此之前,需要在另一台正常的机器上安装《易我分区表医生》,然后用该软件制作一张启动软盘,制作时会弹出一个“创建紧急启动盘”界面,此是插入一张空白1.44M B软盘到软驱中,然后点“开始”按钮进行启动盘制作(如图1),接下来开始检测并创建启动盘(如图2),大概需要几分钟即可创建完毕(如图3)。
需要注意的是,如果你的电脑没有软驱,可以将该软件的ISO文件刻录成启动盘,然后当系统出现错误时,通过修复光盘启动来修复。
二、分区表修复方法用启动盘引导系统,登陆DOS模式时软件会对硬盘的分区情况进行检测,同时开始加载在DOS下使用的常用程序(如图4)。
进入分区表修复界面后就可以对硬盘故障进行修复了,通常情况下,硬盘分区是依靠分区表和分区的引导扇区被系统识别,如果分区表或者分区的引导扇区被病毒破坏或者误删除,我们将看不到这些被破坏或误删的分区,但是这些分区没有被真正丢失。
一般而言,被破坏或误删的分区在软件中被用红‘X’标志,用鼠标右键单击这个分区,然后选择“Fix boot”选项(如图5),此时会出现“Auto”和“Interactive”两种修复模式(如图6),其中“Auto”模式将自动检测和修复这个分区的引导扇区,建议你选择这个模式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
手工修复硬盘分区表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可通过分区的ENDING LOCATION和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引导盘)大小为40MDOS扩充盘大小为76MDOS扩充盘上的逻辑驱动器为:D: 32M E: 3M F: 4M G:6M H:7M I:7M J:17MStarting Location Ending Location Relative Number ofSystem Boot Side Cylinder Sector Side Cylinder Sertor Sertors Sertors BIGDOS Yes 1 0 1 7 262 39 39 82017h1 c1 s1 h2 c2 s2 r1 n1EXTEND No 0 263 1 7 760 39 82056 155376h3 c3 s3 h4 c4 s4 r2 n2unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0即:r1=s2n1=(h2+1)*(c2+1)*s2-s2r2=r1+n1n2=(h4+1)*(c4+1)*s4-r2光标停留在EXTEND行,按回车键出现下列DOS 扩展分区逻辑分区表: Starting Location Ending Location Relative Number ofSystem Boot Side Cylinder Sector Side Cylinder Sertor Sertors Sertors DOS- 16 No 1 263 1 7 472 39 39 65481h5 c5 s5 h6 c6 s6 r3 n3EXTEND No 0 473 1 7 492 39 65520 6240h7 c7 s7 h8 c8 s8 r4 n4unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0公式:r3=s6n3=(h6+1)*(c6+1)*s6-r3-r2r4=r3+n3n4=(h8+1)*(c8+1)*s8-r4-r2光标停留在EXTEND行,按回车键出现下列DOS 扩展分区逻辑分区表: Starting Location Ending Location Relative Number ofSystem Boot Side Cylinder Sector Side Cylinder Sertor Sertors Sertors DOS- 12 No 1 473 1 7 492 39 39 6201h9 c9 s9 h10 c10 s10 r5 n5EXTEND No 0 493 1 7 519 39 71760 8424h11 c11 s11 h12 c12 s12 r6 n6unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0公式:r5=s10n5=(h10+1)*(c10+1)*s10-r5-r2- r4r6=r4+r5+n5n6=(h12+1)*(c12+1)*s12-r2- r6光标停留在EXTEND行,按回车键出现下列DOS 扩展分区逻辑分区表: Starting Location Ending Location Relative Number ofSystem Boot Side Cylinder Sector Side Cylinder Sertor Sertors Sertors DOS- 12 No 1 493 1 7 519 39 39 8385h13 c13 s13 h14 c14 s14 r7 n7EXTEND No 0 520 1 7 559 39 80184 12480h15 c15 s15 h16 c16 s16 r8 n8unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0公式:r7=s14n7=(h14+1)*(c14+1)*s14-r7-r2-r4- n4r8=r5+r6+n6-r7n8=(h16+1)*(c16+1)*s16-r2- r8光标停留在EXTEND行,按回车键出现下列DOS 扩展分区逻辑分区表:Starting Location Ending Location Relative Number ofSystem Boot Side Cylinder Sector Side Cylinder Sertor Sertors SertorsDOS- 12 No 1 520 1 7 559 39 39 12441EXTEND No 0 560 1 7 605 39 92664 14352unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0光标停留在EXTEND行,按回车键出现下列DOS 扩展分区逻辑分区表:Starting Location Ending Location Relative Number ofSystem Boot Side Cylinder Sector Side Cylinder Sertor Sertors SertorsDOS- 12 No 1 560 1 7 605 39 39 14313EXTEND No 0 606 1 7 651 39 107016 14352unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0光标停留在EXTEND行,按回车键出现下列DOS 扩展分区逻辑分区表:Starting Location Ending Location Relative Number ofSystem Boot Side Cylinder Sector Side Cylinder Sertor Sertors SertorsDOS- 12 No 1 606 1 7 651 39 39 14313EXTEND No 0 652 1 7 760 39 121368 34008unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0光标停留在EXTEND行,按回车键出现下列DOS 扩展分区逻辑分区表:Starting Location Ending Location Relative Number ofSystem Boot Side Cylinder Sector Side Cylinder Sertor Sertors SertorsDOS- 16 No 1 652 1 7 760 39 39 33969unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0unused No 0 0 0 0 0 0 0 0修复硬盘主引导记录有时,硬盘主引导记录感染了病毒,物理盘和逻辑盘还可以访问, 但运行程序却很慢。
当用kv300等杀毒工具杀毒时,只能够发现病毒,却杀毒不了------望“ 毒”兴叹!解决办法:运行kv300后,按F6查看硬盘主引导记录区,发现分区表已面目全非。
记下从偏移量1BEH到1FFH 的代码(“80 01----55 AA”),按“S”保存分区表到A:\ HDPT.VIR。
从另一台无感染病毒的计算机上运行 kv300,按F6查看硬盘分区表保存分区表到A:\HDPT.DAT。
用DOS的DEBUG.EXE打开A:\HDPT.DAT,把记下的代码写到偏移量1BEH到1FFH的地方,然后写回到A:\HDPT.DAT中。
运行kv300 HDPT.DAT,硬盘分区表就写回到硬盘上. 这种方法可以避免FDISK AND FORMAT 硬盘,保存了宝贵的数据.附表:或用另一种办法:在DOS硬盘分区表和文件分配表硬盘只有经过物理格式化,分区,逻辑格式化后才能使用,在进行分区时,FDISK 会在硬盘的0柱面0磁头1扇区建一个64字节的分区表,在分表的前面是主引导记录(MRB),后面是两个字节的有效标志55H,AAH,(H表示16进制)。
此扇区被称为主引导扇区,也是病毒最爱侵袭的地方,它由主引导记录+分区表+有效标志组成。
分区表对于系统自举十分重要,它规定着系统有几个分区;每个分区的起始及终止扇区,大小以及是否为活动分区等重要信息。