资源描述
目 录摘要3第一章 引言41.1 课题相关特点41.2 课题研究的意义所在4第二章 硬盘的逻辑结构42.1硬盘原理慨述42.2 硬盘数据结构。4一MBR区5二DBR区6三FAT区6四DIR区7五数据(DATA)区7第三章 数据损坏的类型与有关恢复方法73.1文件存储与读取原理73.2硬盘数据损坏的类型与相应的恢复方法73.2.1 文件删除恢复73.2.2 硬盘重分区或其它情况下的分区表损坏分析。83.2.3 硬盘格式化情况下数据恢复。83.2.4 恢复已经备份的分区表恢复。83.2.5 硬盘DBR损坏。10第四章 主流数据恢复软件评测114.1 几款流行数据恢复软件介绍114.1.1 Winhex114.1.2 EasyRecovery104.1.3 FinalData134.1.4 易我数据恢复向导144.2 几款数据恢复软件恢复效果比较。14第五章:总结15参考文献;16摘要随着计算机技术的发展,同时硬盘由于其容量大价格便宜也成为人们存储数据的主要设备。然而由于种种原因,硬盘的数据可能会被损坏,这也给个人和社会带来很大的损失。因此,数据损坏后的数据恢复显得非常重要。虽然在数据恢复领域有很多的厂商已经有比较成熟的技术。然而对于并不了解硬盘原理普通人来说,如果试图恢复数据,但又无法采用很好的方法,选择正确的工具,就很难很好的恢复数据。本文分析了硬盘的有关内部结构与文件存储系统以及硬盘数据损坏的有关原因,最后分析比较国内外相关的技术和数据恢复方面流行的软件。进而对不同的数据损坏提出不同的数据恢复的方法。本文分为四部分。第一部分是引言。第二部分是对硬盘的有关结构的一个比较简单的介绍和文件系统有关介绍。第三部分分析了硬盘数据损坏的有关原因和解决思路。第四部分是对有关流行的软件的实验与比较,通过数据的分析。并提出有关不同情况的损坏提出一些有用的建议。第五部分为总结。关键词:硬盘结构 数据恢复 MBR DBR FAT 第一章 引言1.1 课题相关特点信息作为一种抽象物质。硬盘数据丢失对于硬盘来说,仅仅就是硬盘上的某些地方的磁性消失。我们所能做的就是把没有丢失的信息恢复出来,以减少人们与社会的损失。硬盘数据的丢失的原因本来就有很多种,可能因为人的误操作而丢失,也可能是因为病毒的入侵而破坏数据。并且数据丢失的程度与情况也不尽相同。可能是文件数据的丢失,可能是文件分配(FAT)表丢失,也可能硬盘的分区表等重要信息丢失。所以,硬盘数据丢失本身就是一个非常复杂的问题。要恢复硬盘的数据首先就是要分析硬盘的结构,分析数据丢失的情况。只有彻底分析硬盘数据丢失的原因才能更好的采取下一步的行动。同时,由于硬盘可能的数据丢失的情况的复杂性,这也使得数据恢复的方法的多样性。对于不同的情况,必须采用不同的方法,才会有更好的效果。1.2 课题研究的意义所在目前社会上针对数据恢复的公司有很多,有关的软件也很多。而对于普通的用户,想自己动手简单恢复数据的朋友,很少有系统的方法和对软件的选择上有些茫目。本文旨在通过研究硬盘数据恢复的原理,分析硬盘数据丢失的原因,进而比较现今比较流行的方法和有关的软件,提出对不同的数据丢失情况下的一些建议,并提出手动备份硬盘分区结构和其它重要数据的方法及通过手工恢复硬盘全盘结构的方法。本文可作为个人数据丢失时情况不是很严重时个人自己动手恢复数据的一个参考。第二章 硬盘的逻辑结构2.1硬盘原理慨述 硬盘存储数据是根据电、磁转换原理实现的。硬盘由一个或几个表面镀有磁性物质的金属或玻璃等物质盘片以及盘片两面所安装的磁头和相应的控制电路组成,其中盘片和磁头密封在无尘的金属壳中。硬盘工作时,盘片以设计转速高速旋转,设置在盘片表面的磁头则在电路控制下径向移动到指定位置然后将数据存储或读取出来。当系统向硬盘写入数据时,磁头中 “写数据”电流产生磁场使盘片表面磁性物质状态发生改变,并在写电流磁1场消失后仍能保持,这样数据就存储下来了;当系统从硬盘中读数据时,磁头经过盘片指定区域,盘片表面磁场使磁头产生感应电流或线圈阻抗产生变化,经相关电路处理后还原成数据。2.2 硬盘数据结构。硬盘上的数据按照其不同的特点和作用大致可分为5部分:MBR区、DBR区、FAT区、DIR区和DATA区。一.MBR区MBR(Main Boot Record),按其字面上的理解即为主引导记录区,位于整个硬盘的0磁道0柱面1扇区。不过,在总共512字节的主引导扇区中,MBR只占用了其中的446个字节(偏移0-偏移1BDH),另外的64个字节(偏移1BEH-偏移1FDH)交给了DPT(Disk Partition Table硬盘分区表),最后两个字节55,AA(偏移1FEH- 偏移1FFH)是分区的结束标志。这个整体构成了硬盘的主引导扇区。大致的结构如图1图1硬盘的主引导扇区结构图主引导记录中包含了硬盘的一系列参数和一段引导程序。其中的硬盘引导程序的主要作用是检查分区表是否正确并且在系统硬件完成自检以后引导具有激活标志的分区上的操作系统,并将控制权交给启动程序。MBR是由分区程序(如Fdisk.com)所产生的,它不依赖任何操作系统,而且硬盘引导程序也是可以改变的,从而实现多系统共存。DPT及各字节的意义。硬盘分区表偏移长度所表达的意义01字节分区状态0-非活动区80- 活动分区11字节该分区起始磁头(HEAD)22字节该分区起始扇区和起始柱面41字节该分区类型:如82- Linux Native分区83- Linux Swap 分区51字节该分区终止头(HEAD)62字节该分区终止扇区和终止柱面84字节该分区起始绝对扇区C4字节该分区扇区数二.DBR区DBR(Dos Boot Record)是操作系统引导记录区的意思。它通常位于硬盘的0磁道1磁头1扇区,是操作系统可以直接访问的第一个扇区,它包括一个引导程序和一个被称为BPB(Bios Parameter Block)的本分区参数记录表。引导程序的主要任务是当MBR将系统控制权交给它时,判断本分区跟目录前两个文件是不是操作系统的引导文件(以DOS为例,即是Io.sys和Msdos.sys)。如果确定存在,就把其读入内存,并把控制权交给该文件。BPB参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数,分配单元的大小等重要参数。三.FAT区在DBR之后的是我们比较熟悉的FAT(File Allocation Table文件分配表)区。在解释文件分配表的概念之前,我们先来谈谈簇(cluster)的概念。文件占用磁盘空间时,基本单位不是字节而是簇。簇的大小与磁盘的规格有关,一般情况下,软盘每簇是1个扇区,硬盘每簇的扇区数与硬盘的总容量大小有关,可能是4、8、16、32、64。通过上文我们已经知道,同一个文件的数据并不一定完整地存放在磁盘的一个连续的区域内,而往往会分成若干段,像一条链子一样存放。这种存储方式称为文件的链式存储。硬盘上的文件常常要进行创建、删除、增长、缩短等操作。这样操作做的越多,盘上的文件就可能被分得越零碎(每段至少是1簇)。但是,由于硬盘上保存着段与段之间的连接信息(即FAT),操作系统在读取文件时,总是能够准确地找到各段的位置并正确读出。四.DIR区DIR(Directory)是根目录区,紧接着第二FAT表(即备份的FAT表)之后,记录着根目录下每个文件(目录)的起始单元,文件的属性等。定位文件位置时,操作系统根据DIR中的起始单元,结合FAT表就可以知道文件在硬盘中的具体位置和大小了。 五.据(DATA)区数据区是真正意义上的数据存储的地方,位于DIR区之后,占据硬盘上的大部分数据空间。第三章 数据损坏类型及相关恢复方法3.1文件存储与读取原理当我们存储一个文件的时候,操作系统首先会在一个记录所有空间使用情况的文件分配表中,找到足够容纳我们的新文件的空间,然后把文件内容写到相对应的硬盘扇区上,最后在分配表中标出该空间被占用了。当我们删除一个文件的时候,一般并不对实际文件所占用的扇区进行操作,而是仅仅在该分配表中标记哪些空间是空白的,可以分配给别的文件使用。事实上在这个时候,要删除的文件的实际内容并没有受到破坏,可以恢复回来。但是如果我们删除一个文件后,在原来文件所在的扇区上,又重新创建了一个文件,那么被删除文件所占用的扇区就有可能被新创建的文件所使用,这时候就无法恢复原来被删除的文件了.3.2硬盘数据损坏类型及相应的恢复方法3.2.1 文件删除及其恢复 文件删除后的恢复方法相对简单。操作系统删除文件的操作进行了两方面个操作:一,将文件在磁盘的文件目录表中的相应文件目录登记项的第一个字节更改了E5H;二,将文件所占簇号在文件分配表中的记录清零,以释放该文件所占空间。文件数据信息仍然“保留”在硬盘数据区中。因此此类型的数据恢复只要通过某些硬盘管理工具或者数据恢复软件(比如EasyRecovery),按照有关的设置进行。被彻底删除的文件还是很容易被恢复过来。必须注意的是,恢复后的数据一定不能存放在原来的硬盘分区。3.2.2 硬盘重分区或其它情况下的分区表损坏分析。 第一种情况,在windows下一般利用DOS下的fdisk命令或者其它硬盘分区工具重新对硬盘进行分区后改写了硬盘分区表,也就是修改了硬盘的逻辑0扇区。第二种情况,由于个人误操作或者病毒入侵修改了硬盘逻辑0扇区(即硬盘主引导记录)从而使得系统无法启动。解决方法:一, 将硬盘挂接到另一台计算机上进入系统。在系统下启动winhex打开挂接的硬盘,首先查看此硬盘的逻辑0扇区结尾标识是否为55AA.若不是将之修改为55AA.将硬盘接到原计算机上开机是否能启动系统。二, 若重分区后不能对系统进行格式化。则可能是硬盘MBR引导程序损坏。进入DOS系统用fdisk/mbr修复硬盘逻辑0扇区的错误。三, 若确定是分区表损坏。如果之前曾用磁盘医生备份过硬盘分区表,可以使用磁盘医生恢复硬盘的分区表。如果是手动备份的。可以使用winhex十六进制数据查看工具修复硬盘分区表。四, 如果实在对硬盘的分区表没有任何备份。则只有将硬盘接到其它电脑上。使用有关数据恢复工具类似FinalData数据恢复之类的数据恢复工具扫描硬盘上的目录与文件。但是恢复的程度无法保证。3.2.3 硬盘格式化情况下数据恢复。硬盘格式化就是重写了硬盘文件分配表。同样硬盘上的实际数据还是没消失。此时硬盘一般无法再引导系统,如果要恢复数据,最好不要对硬盘进行任何操作。此类情况下数据恢复我们可以考虑一点就是一般情况下每个硬盘分区中FAT(文件分配表)都有一个备份。首先我们必须利用硬盘分区大小,分区格式,簇大小计算出硬盘FAT大小。查找硬盘第一个FAT位置,再计算出硬盘第二个FAT所在扇区。使用有关磁盘操作工具或者winhex工具恢复文件分配表。3.2.4 恢复已经备份的分区表恢复。当系统由于误操作或者病毒破坏而使系统无法启动,经检查是硬盘的分区表损坏。如果在硬盘刚分区时有正好进行过硬盘分区表的备份。此时可以用以下的方法试着恢复硬盘分区表,这样系统又可以完好如初,且整个文件系统也不会有任何破坏。总的来说,硬盘的分区结构就是一个链式结构。硬盘的逻辑0扇区就是主引导记录(MBR)其中偏移1BEH-偏移1FDH是硬盘的主分区表。总共64个字节,第16个字节记录一个分区的情况。一般硬盘可以有一个主分区一个扩展分区。其中扩展分区有多个逻辑分区。上面我们使用的工具是WinHex.使用这个工具我们可以在windows界面下看到硬盘所有数据,以十六进制数表示一个字节。同时我们可以用这个工具修改硬盘上的数据。这也正是我们修复硬盘分区表的关键所在。在此以本人计算机的硬盘分区表为例。本人计算机硬盘有一个主分区就是系统的C盘。一个扩展分区,3个逻辑分区分别为:D,E,F盘。关键步骤如下:A 将受损硬盘挂接到加别的计算机上以后。打开软件WinHex。然后选择工具/打开磁盘/物理磁盘。打开需要修复的硬盘。界面如下图2:B 在WinHex上具栏用跳至扇区输入0到边硬盘的逻辑0扇区。找到偏移1BE的位置。用备份了的分区表数据覆盖原来的数据。在此本人主分区表十六进制数据如下:80 01 01 00 0C FE FF FF 3F 00 00 00 FA EF D4 0100 00 C1 FF 0F FE FF FF 39 F0 D4 01 88 9A CC 1000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00用以上数据覆盖逻辑0扇区的分区表的位置。C 分析硬盘分区备份的数据。在主分区表第二项记录的是逻辑分区的第一个分区,也就是D盘所在的位置。通过主分区表第二项记录00 00 C1 FF 0F FE FF FF 39 F0 D4 01 88 9A CC 10计算出D盘的起始扇区为十进制的30732345扇区。使用WinHex工具转到第30732345号扇区。把这一扇区的偏移1BE的位置用备份了的数据进行恢复。D 然后再分析找到的D盘的虚拟主引导记录的分区表。分析其第二项。找到E盘的分区表的位置。依此类推,依次找到下面的盘的分区表,然后一个一个的恢复。E 通过上面的恢复以后,硬盘的分区完好如初,此时硬盘数据得以完全恢复3.2.5 硬盘DBR损坏。DBR是操作系统能直接访问的第一个扇区,它包括一个引导程序和一个被称为BPB(Bios Parameter Block)的本分区参数记录表。引导程序的主要任务是当MBR将系统控制权交给它时,判断本分区跟目录前两个文件是不是操作系统的引导文件(以DOS为例,即是Io.sys和Msdos.sys)。如果确定存在,就把其读入内存,并把控制权 交给该文件。BPB参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数,分配单元的大小等重要参数。它对操作系统的成功启动有至关重要的作用。当DBR被损坏时,计算机系统无法正常启动。此时,我们可以利用硬盘上已存在的DBR的备份去恢复硬盘上的DBR。对于硬盘的每个逻辑分区。DBR在第一个DBR的后面6个扇区都有一个备份。A 我们将待修复硬盘挂接在另一台正常的计算机上。进入系统后用WINHEX软件打开待修复硬盘。B 利用分区表的数据找到逻辑分区起始扇区,转到分区所在扇区,第一个是DBR。往后查找到第六个扇区,复制这一个扇区的数据,将之覆盖第一个DBR。C 将修复后的硬盘挂到原机器上,重启系统。第四章 主流数据恢复软件评测目前世面上有的几款流行的免费的数据恢复软件,使用它们一般能解决一般情况下的少量的不完整的数据恢复。它们的共同特点是:它们发恢作用的原理是:硬盘上的数据删除时并没有对文件所在区域的二进制数据进行修改,只是修改了文件目录表和文件分配表。这样通过使用一定的算法,通过扫描硬盘上的数据,检测不同的文件类型来恢复文件。恢复的程度不一,恢复后一般文件比较散乱。对于不能通过恢复分区表或者DBR及FAT的情况,一般用这些软件,可以恢复少量数据。4.1 几款流行数据恢复软件应用。4.1.1 winhexWinhex是一款很好的,功能很强大的磁盘,文件二进制数据查看,修改工具.使用它我们可以很方便的查看磁盘的数据,手动修改数据。WinHex以通用的 16 进制编辑器为核心,专门用来对付计算机取证、数据恢复、低级数据处理、以及 IT 安全性、各种日常紧急情况的高级工具: 用来检查和修复各种文件、恢复删除文件、硬盘损坏等。得到 ZDNet Software Library 五星级最高评价,拥有强大的系统效用。功能(特点)如下: A 硬盘, 软盘, CD-ROM 和 DVD, ZIP, Smart Media, Compact Flash, 等磁盘编辑器. B 支持 FAT, NTFS, Ext2/3, ReiserFS, Reiser4, UFS, CDFS, UDF 文件系统 C 支持对磁盘阵列 RAID 系统和动态磁盘的重组、分析和数据恢复D 多种数据恢复技术,可分析 RAW 格式原始数据镜像文件中的完整目录结构,支持分段保存的镜像文件E 数据解释器, 已知 20 种数据类型,驱动器镜像和备份 (可选压缩或分割成 650 MB 的档案)4.1.2 easyrecovery界面如图3图3EasyRecovery软件主界面图EasyRecovery 是世界著名数据恢复公司 Ontrack 的技术杰作。其 Professioanl (专业) 版更是囊括了磁盘诊断、数据恢复、文件修复、E-mail 修复等全部 4 大类目 19 个项目的各种数据文件修复和磁盘诊断方案。其支持的数据恢复方案包括:高级恢复 使用高级选项自定义数据恢复 删除恢复 查找并恢复已删除的文件 格式化恢复 从格式化过的卷中恢复文件 Raw 恢复 忽略任何文件系统信息进行恢复 继续恢复 继续一个保存的数据恢复进度 紧急启动盘 创建自引导紧急启动盘 其支持的磁盘诊断模式包括:驱动器测试 测试驱动器以寻找潜在的硬件问题 SMART 测试 监视并报告潜在的磁盘驱动器问题 空间管理器 磁盘驱动器空间情况的详细信息 跳线查看 查找 IDE/ATA 磁盘驱动器的跳线设置4.1.3 finaldata界面如图4图4FinalData主界面图FinalData能够对FAT、FAT32和NTFS三种文件系统中的文件进行恢复,而且它的界面风格和操作方法和Windows资源管理器非常接近,即使是非计算机专业人员的普通用户也可以在几分钟的时间里掌握基本的使用方法,完成大部分数据恢复工作。另外,快速高效则是FinalData的另一个显著特点,恢复单个丢失的文件只需要几秒钟的时间,而对于整个硬盘的恢复也可以在几十分钟内完成。4.1.4 易我数据恢复向导界面如图5图5易我数据恢复主只界面易我数据恢复向导是首款国内自主研发的数据恢复软件,是一款功能强大并且性价比非常高的数据恢复软件。本软件在WINDOWS操作系统下,提供FAT12/ FAT16/FAT32/VFAT/NTFS/NTFS5分区的数据恢复,支持IDE/ATA、SATA、SCSI、USB、IEEE1394种类的硬盘或闪盘、软盘、数码相机、数码摄像机和USB种类的存储盘。本软件具有删除恢复、格式化恢复、高级恢复等非常强大的功能,可以针对不同情况的数据丢失来进行数据恢复。本软件能非常有效的恢复删除或丢失的文件、恢复格式化的分区以及恢复分区异常导致丢失的文件。4.2 几款数据恢复软件恢复效果比较实验介绍:在一台虚拟机上安装了各种数据恢复软件。新创建的一个分区(无任何数据),在该分区上创建各种常用文件类型的文件。然后将分区的数据全部删除,清空回收站,将该分区重新格式化。使用各种不同的数据恢复软件恢复恢复数据。最后比较扫描所用的时间,恢复的文件格式,比较恢复的程度,从而从客观实验上反映出各种不同的数据恢复软件恢复数据的效果。进一步为不同情况数据恢复所选用不同软件提供建议。实验结果如下:一 Easyrecovery根据其数据恢复报告,扫描F盘用时为95秒。恢复所有文件,恢复的格式有doc,zip,rar,mp3,bmp,jpg,exe,bat,swf.恢复程度,所有文件全部恢复。二 易我数据恢复软件根据其数据恢复报告,扫描用时为68秒,但时其前期准备时间比较长。恢复的格式有doc,zip,rar,mp3,bmp,jpg.恢复的程度,所有的文件全部恢复。三 finaldata根据其数据恢复报告,扫描用时为15分51秒.恢复的格式有doc,zip,rar,mp3,bmp,jpg.恢复的程度,所有的文件全部恢复。总的来说:easyrecovery和易我数据恢复软件扫描速度相对较快,而finaldata扫描深度更深,如果是少量数据的丢失,建议使用像easyrecovery一类的快速而又功能强大的软件对数据进行恢复。而大量数据损坏,则建议先考虑恢复分区表或DBR之类来全盘恢复硬盘的文件系统,如果不能则再考虑用fianldat之类的软件对数据进行深度的扫描。第五章 总结硬盘数据恢复的基础是在数据丢失后没有对磁盘进行任何写操作或者低级格式化。而且可能恢复的概率也不可能是百分之百,所有在日常使用电脑时在装好操作系统后最好对硬盘和系统一些重要数据如分区表,DBR进行备份,并且定期对硬盘重要分区数据进行备份,只有这样,在硬盘数据损坏后可以最大程度的恢复数据。对于一般情况的数据丢失,我们必须首先详细的分析原因,采取对应的有效的方法,在数据恢复时首先复制一份原硬盘数据,以免出现意外情况,使得数据又受到更严重的损坏。在恢复时不能保存恢复后的数据到原来的逻辑分区。经过近三个月的努力,终于把论文做完了!硬盘有关数据恢复方面资料非常难找,其中很多资料来源于互联网,所以每份资料,每个观点都是经过我精心选择,细心比较才确定的。另外有关硬盘数据恢复方面的技术在国内还不成熟,虽然在国外已经非常成熟,这方面的研究也相对较少。由于本来对计算机硬件,特别是硬盘结构了解得比较少,所以从一开始,花来很多的时间,对硬盘的逻辑结构做了一个深入的学习。再后来考虑从哪个方面写硬盘数据的恢复,最终我确定了从日常计算机的使用可能发生的数据恢复情况入手,提出自己相应的解决办法。所有的情况都经过我在虚拟机的实验验证的。最后,我收集了几款流行且高效的数据恢复软件,并比较了它们在数据恢复方面的各自特点。在这其间真的经历了很多事情,其中也曾想要放弃,是我的指导老师韦老师的鼓励让我坚持了下来。虽然没能得做到多少理论方面的创新,但是我学到了很多专业知识。由于是边学边做的论文,可能会好很多不完美的地方,请大家指正。参考文献:1 张树.硬盘故障处理与数据维护。北京:电子科技出版社。19972 王龙,上官冰冰。电脑常见故障1000例。北京:中国铁道出版社。20023张尧学 史美林 张高 计算机操作系统教程(第三版).清华大学出版社。20064姜灵敏。微机硬盘管理技术。北京:人民邮电出版社。19995郑信武.最新硬盘应用完全手册。电脑报社策化制作。20026林东和。急救硬盘数据不求人。人民邮电出版社。20027硬盘结构详细图解.http:/www.bbkmg.com/information/technology/2005102000485682665_2.htm8数据恢复软件评测http:/news.newhua.com/news1/Eval_System/2009/828/0982811920BK306DK90J7F4A7F4G1AGK04JC1BF23F4I94F8HDAF7C3.html
展开阅读全文