一、数据恢复的概述 数据恢复是指由于各种原因导致数据损失时把保留在存储介质上的数据重新恢复的过程。从数据恢复的目的来看,它属于计算机安全领域,而恢复的手段又与计算机的维护有着紧密的联系,因此可以说数据恢复是从计算机安全与计算机维护两方面发展起来的新领域。近年来随着信息化的飞速发展,办公电子化已经是大势所趋,不仅仅是IT相关领域的企业,传统企业以及学校、政府机关也开始全方位启用信息化存储模式,从而大大提高了相应部门的办公效率,但是随之而来的便是由于数据文件受病毒入侵或者因数据存储介质发生故障等情况而导致数据损坏、丢失的问题,面对这一情况我们有必要对数据丢失的原因进行进一步的分析。 二、数据丢失的原因 造成数据丢失的原因大致可以分为两类:即逻辑方面的问题和硬件方面的问题,或者称为软故障和硬故障。 1.软故障 1)磁道伺服信息出错:是指因为某个物理磁道的伺服信息受损或失效,导致该物理磁道无法被访问。 2)系统信息区出错:是指硬盘的系统信息区(硬盘内部的一个系统保留区,里面又分成若干模块,保存了许多硬盘出厂的参数、设置信息和内部控制程序)在通电自检时读不出某些模块的信息或者校验不正常,导致硬盘无法进入准备状态。 3)扇区逻辑错误:是指因为校验错误、扇区标志错误、地址信息错误、坏块标记错误等原因导致该扇区失效。 4)恶意程序的破坏:大家最熟悉的恶意程序就是病毒,病毒的感染就是一种破坏。一个病毒无论修改硬盘的引导区、可执行程序,都能改变正常的数据。恶意程序还包括特洛伊木马等,它们造成的破坏可能是最难恢复的。 5)误操作:很多数据丢失源于使用者的操作失误,比如误删除、误格式化等等。 6)操作系统或应用软件的错误引起数据丢失:随着操作系统和应用程序代码量的成倍增加,BUG也在不断增加。 7)突然掉电引起的数据丢失:可能不仅仅是内存数据的丢失,有时也可能造成磁盘数据的丢失,或导致系统无法正常启动。 8)内存溢出:导致内存溢出或者进程非法终止等低层错误的原因很多,它与掉电一样,会使你损失当前的工作数据。 2.硬故障 1)磁头组件损坏或有误差:主要指硬盘中磁头组件的某部分被损坏,造成磁头无法正常读写的情况。磁头组件损坏的方式和可能性非常多,主要包括磁头粉尘、磁头磨损、磁头悬臂变形、磁线圈受损、移位等。 2)控制电路损坏:是指硬盘的电子线路板中的某一部分线路断路或短路,或者某些电气元件或IC芯片损坏等等,导致硬盘在通电后盘片不能正常起转,或者起转后磁头不能正确寻道等。 3)综合性损坏:主要是指因为一些微小的变化使硬盘产生的种种问题。有些是硬盘在使用过程中因为发热或者其他原因导致部分芯片老化;有些是硬盘在受到震动后,外壳或盘面或马达主轴产生了微小的变化或位移;有些是硬盘本身在设计方面就存在散热、摩擦或结构上的缺陷。种种原因导致硬盘不稳定,经常丢失数据或者出现逻辑错误,工作噪音大,读写速度慢,甚至有时不能正常工作等。 4)扇区物理性损坏:是指因为碰撞、磁头摩擦或其他原因导致磁盘盘面出现的物理性损坏,比如盘片划伤、掉磁等。 针对以上的种种问题,我们该如何具体进行数据恢复,还需要对其原理进行进一步的研究。 三、数据恢复的原理 通常我们使用计算机所要应用到的数据均存储于计算机硬盘之中,当发生数据损坏或丢失的状况需要从相应的存储介质上恢复数据时,我们首先要了解存储介质的具体结构,即硬盘存储结构以及相应操作的基本原理。 1.硬盘存储结构 硬盘分成主引导区(MBR—MasterBootRecord)、操作系统引导区(DBR—DosBootRecord)、文件分配表(FAT—FileAllocationTable)、目录区(DIR)和数据区(DATA)五部分。MBR记录中包含了硬盘的一系列参数和一段引导程序;其中的硬盘引导程序的主要作用是检查分区表是否正确并在系统硬件完成自检后引导具有激活标志的分区上的操作系统,并将控制权交给启动程序。MBR是由分区程序所产生的,它不依赖任何操作系统,而且硬盘引导程序也是可以改变的,从而实现多系统共存。DBR是操作系统可以直接访问的第一个扇区,它包括一个引导程序和一个被称为BPB(BIOSParameterBlock)的分区参数记录表。引导程序的主要任务是当MBR将系统控制权交给它时,判断本分区根目录前两个文件是不是操作系统的引导文件。如果确定存在,就把它读入内存,并把控制权交给该文件。BPB参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数,分配单元的大小等重要参数。DBR是由高级格式化程序所产生。FAT的主要功能是管理硬盘分区,为了防止意外损坏,FAT一般做两个(也可以设置为一个),第二FAT为第一FAT的备份。同一个文件的数据并不一定完整地存放在磁盘的一个连续的区域内,而往往会分成若干段,像一条链子一样存放。由于硬盘上保存着段与段之间的连接信息,操作系统在读取文件时,总是能够准确的找到各段的位置并正确读出。在FAT之后便是目录区与数据区,其中目录区起到定位的作用。DIR记录每个文件的起始单元和属性,定位文件时,操作系统根据DIR的起始单元再结合FAT表,就可以知道文件在磁盘中的具体位置。而数据区则是真正存储数据的地方,但若没有前几个部分,存储的数据就会是一些无用的二进制代码。 2.具体操作原理 在系统中的相应误操作,并没有将数据从硬盘的物理扇区中彻底删除,只是对硬盘中的一部分信息做了修改。在执行“删除文件”时,系统将文件所占的文件簇在FAT中的对应表项值全部置0,当系统在FAT中检测到0时,就认为该文件簇处于空闲状态,可以写入其它文件。但在新数据写入前,老数据并没有在硬盘中被删除,直到新数据写入其扇区,老数据才被真正覆盖删除。同样的,在高级格式化时,系统并没有把DATA的数据全部清除,只是对相应的FAT表做了重写。对硬盘重新分区的操作,系统也并没有修改DATA的数据,只是修改了MBR和DBR,但由于MBR和DBR的改变导致文件数据的路径被破坏,这样系统就不能找到和利用这些数据了。 |
|