IT之道-艾锑知道

您当前位置: 主页 > IT服务 > 数据恢复服务 >

了解数据恢复的基本原理


2013-05-27 13:28 作者:ly 浏览量:

为了加深大家对数据恢复的理解,我们有必要简单了解一下数据存储的基本原理。这里以硬盘为例做简单说明(软盘、光盘及闪盘的数据存储原理与硬盘大同小异)。先来看看硬盘的数据结构。当我们拿到一块新硬盘时,必须先对其进行分区和格式化操作后才能使用。对于目前大多数朋友所使用的Windows操作系统来说,硬盘被操作系统划分成主引导扇区、操作系统引导扇区、文件分配表、目录区和数据区这5个部分。其中主引导扇区在每块硬盘中都是唯一的,一块硬盘上只能有一个主引导扇区,而其他部分则在硬盘的每个分区里都会存在。

软盘、光盘、闪存盘和硬盘的数据存储原理其实有较大不同。软盘的存储原理更像是录音带,直接通过电磁感应原理把磁场变化变成电流变化,对磁头和磁介质等材料并没有特殊要求。光盘上面也说了,至于闪盘,是直接用半导体储存高电位和低电位信号来表示0和1的数据信息。同时,各种存储介质所采用的文件格式也有很大区别。 

 

主引导扇区位于整个硬盘的0磁道0柱面1扇区,它包括硬盘主引导程序MBR(Main Boot Record)和分区表DPT(Disk Partition Table)两部分。主引导程序是由分区程序(如大家最常用的Fdisk)产生的,所以在不同的操作系统中,主引导程序可能会不同。它的作用就是检查分区表是否正确并确定以哪个分区为引导分区,然后在程序结束时把该分区的启动程序(即操作系统)调入内存执行。而对于分区表,大家应比较熟悉了,它以80H或00H为开始标志,以55AAH为结束标志,共64字节,位于0磁道0柱面1扇区的最末端。它规定着系统有几个分区,每个分区的起始和终止扇区、大小及是否为活动分区等重要信息。 

 

操作系统引导扇区即OBR(OS Boot Record),通常位于硬盘的0磁道1柱面1扇区(如果硬盘被设置为多重引导方式,则位于每个引导系统所在的主分区或扩展分区的第一个扇区)。它是操作系统可直接访问的第一个扇区,也包括一个引导程序和一个被称为BPB(BIOS Parameter Block)的分区参数记录表。引导程序的主要任务是判断本分区根目录前两个文件是否为操作系统的引导文件。如检查通过,就将引导文件读入内存,并把控制权交予该文件。BPB分区表参数块则是记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数、分配单元(Allocation Unit,以前也称为簇)的大小等重要参数。 

 

不知大家注意过没有,同一个硬盘,用生产厂家的原厂工具来分区与用Fdisk或Partition Magic之类的第三方工具来分区是有区别的。我们可以试一下,先用原厂工具来分区,然后启动Partition Magic查看,发现什么问题没有?通常用原厂工具分区的硬盘开头或结尾部分,有可能还剩下4~8MB左右的未使用空间,而用Fdisk或Partition Magic分区则不会产生这种情况。这是硬盘厂家为防止硬盘因为引导区的信息出错,或该处扇区物理损坏而产生的一系列麻烦而采取的一个小小的但是却很有实用价值的措施。所以,一般用原厂工具分区,硬盘工作起来会比较稳定,在非法关机时也不容易掉链子;即使出现所谓的零磁道损坏(逻辑零磁道)、引导区出错而导致系统不认盘等问题,用户也不需使用Disk Editor、PCTools等软件修复(甚至找JS维修),只需一个原厂工具重新快速低格然后分区就一切如常了。 

 

文件分配表即FAT(File Allocation Table),是系统的文件寻址系统,为了数据安全起见,FAT一般做两个,第二FAT为第一FAT的备份。FAT区紧接在OBR之后,其大小由本分区的大小及文件分配单元的大小决定。FAT的格式有很多种,大家比较熟悉的有FAT12、FAT16和FAT32等格式。FAT12目前仅在软盘驱动器中使用,FAT16只能用于2GB以下的分区;而FAT32使用最为广泛,可管理的最大分区为32GB。 

 

在硬盘克隆、扫描、格式化、拷贝大文件过程中突然断电的话,基本可肯定会出现分区表损坏的情况。不过现在大家知道原来分区表有两个,同时如果使用原厂工具分区,非法关机时则不易丢失分区表信息。文件系统的格式除了FAT16和FAT32外,还有NTFS、ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、VFAT、HPFS、NFS、SMB、SysV、PROC、JFS等。其实,日常我们接触的都是DOS和Windows下的文件系统,而其他的文件系统则同我们相距较远,这里就不多做介绍了。 

 

目录区即DIR(Directory),它紧接在第二FAT表之后。只有FAT还不能定位文件在磁盘中的位置,FAT还必须和DIR配合才能准确定位文件的位置。DIR记录着每个文件(目录)的起始单元(对于文件来说,这才是至关重要的)、文件的属性等。操作系统在定位文件位置时,根据DIR中的起始单元,再结合FAT表就可知文件在磁盘的具体位置及大小了。 

数据区即DATA,当将数据复制到硬盘时,数据就存放在DATA区。对于一块储存数据的硬盘来说,它占据了硬盘的绝大部分空间,但如没有前面所提到的4个部分,DATA区就仅只是一块填充着0和1的区域,没有任何意义。 

 

也不能说没有任何意义,特别是在SCSI硬盘这种具备完整的校验和安全机制的硬盘上,数据区的信息里也还有很多附加标识信息和校验信息,可作为数据恢复的手段。IDE硬盘上则确实较麻烦,要花不少功夫。不过目前很多发布数据恢复软件的公司都在不断研究这个问题,希望能通过优化算法,尽量提高数据恢复的成功率和恢复速度。 

 

当操作系统要在硬盘上写入文件时,首先在DIR区中写入文件信息(包括文件名、后缀名、文件大小和修改日期),然后在DATA区找到闲置空间将文件保存,并将DATA区中存放文件的簇号写入DIR区,从而完成整个写入数据的工作。系统删除文件时的操作则简单许多,它只需将该文件在DIR区中的第一个字符改成E5,在文件分配表中把该文件占用的各簇表项清0,就表示将该文件删除,而它实际上并不对DATA区进行任何改写。通常的高级格式化程序,只是重写了FAT表而已,并未将DATA区的数据清除;而对硬盘进行分区时,也只是修改了MBR和OBR, 并没有改写DATA区中的数据。正因为DATA区中的数据不易被改写,从而也为恢复数据带来了机会。事实上各种数据恢复软件,也正是利用DATA区中残留的种种痕迹,来恢复数据,这就是整个数据恢复的基本原理。 

 

 

 

--- 版权最终归艾锑无限所有http://www.itbmw.com/ 如需转载,请标明出处。

相关文章

IT外包服务
二维码 关闭