

到目前为止,我们这个指南中谈到的数据恢复技术都有一个共性:这些技术都依靠能够读出至少一个磁盘的文件分配表(file allocation table),这些文件分配表如此重要,如果你的文件分配表完全损坏了,你的所有数据丢失了。
现在我想介绍给大家的是最后一种恢复技术,这种技术你可以用来应对文件分配表被损坏或者丢失的情况,或者如果你其它数据恢复手段都失败了。
注意:这是我为什么涉及到最终恢复技术的原因,但是记住一点这个过程很冗长并且有造成更多损失的可能性。只有在你没有选择的情况下才使用这个方法。
Windows使用文件的扩展名来确认这个文件与什么相关联。例如,如果你双击一个扩展名为.doc的文件,Windows将试图用微软的Word程序来打开这个文件。
但是除了这种扩展名以外还有很多文件类型。假如你重命名一个.pdf的文件,以使其有一个.doc的后缀名,如果你双击这个文件,Windows会试图以微软Word程序打开这个文件,但是可能告诉你这个文件不是一个有效的Word文件,无论这个文件被命名成什么,微软Word能够告诉你Word文档和其它类型文件之间的不同,其它应用程序也能这么做。这是因为多数文件都有用来鉴别这个文件属于什么应用程序的文件头(header)。
从数据恢复的观点上看来,这意味着很多数据类型有一个唯一的标志,这个文件头是在文件开始的一串字节,用来唯一鉴别文件的类型。一些类型的数据文件在文件的末尾同样使用一串字节。因此,如果你想要在一个损坏的硬盘内恢复整个微软的Word文件,你可以使用Norton磁盘编辑器去搜索和Word文件相关联的标志。一旦你定位了这个文件,你可以把其复制到另外一个硬盘。说起来容易做起来难,在你能够想象去做一个基于签名的备份之前,你需要了解什么是文件签名(signatures)。
确定文件签名
指出什么是文件签名是这个数据恢复进程中最困难的事情,这是因为每个文件类型都使用一个不同的签名技术。一些文件类型把这个签名放在文件开始的部分,一些文件类型把它放在文件的尾部,有些文件类型在首尾都放。
在签名前面或者后面一般都有几个字节,换句话说,这个签名并不是在一个文件的开始或者结尾都是必要的。此外,一些文件有几种可能的签名(RTF文件至少有三种可能的签名)。幸运的是,你不需要了解多数的文件类型。
这里有一个技巧可以确定一个文件的签名:使用已知文件去确定一个文件的签名。要做这个,你必须在你用来执行恢复的机器内安装一个备用的硬盘。使用你要恢复的磁盘一样的文件格式来格式化这个硬盘。同时,使用一个完全格式化(而不是快速格式化)这样这个磁盘内任何存在的数据都被删除。你不想让那些留下的数据使事情变得复杂。
一旦你准备好这个硬盘,你要复制一些文件到其中,例如,如果你需要恢复一些在Word 2003内创建的文件,在你的备用硬盘上使用Word 2003去创建一些示例文件。(注意:避免创建大的文件,小文件容易进行分析)。
现在看一下每个示例文件的最初或者最末尾的大约50的字节,找出那些可能是这个文件共同拥有的。(注意:使用多一点的文件,避免偶然导致的可能有一些字节相似)
要展示这个过程如何工作的,我从我的数码相机里面复制了一些.jpg文件到一块硬盘内,以确定一个.jpg文件的签名。这个比较像下面的:
|
文件名 |
字节 |
| DSC01709.JPG | FF D8 FF E1 28 24 45 78 69 66 00 00 49 49 2A 00 |
| DSC01710.JPG | FF D8 DD E1 28 C7 45 78 69 66 00 00 49 49 2A 00 |
| DSC01711.JPG | FF D8 FF E1 29 FD 45 78 69 66 00 00 49 49 2A 00 |
| DSC01712.JPG | FF D8 FF E1 21 F7 45 78 69 66 00 00 49 49 2A 00 |
| DSC01713.JPG | FF D8 FF E1 22 E7 45 78 69 66 00 00 49 49 2A 00 |
| DSC01714.JPG | FF D8 FF E1 29 76 45 78 69 66 00 00 49 49 2A 00 |
你能看到在这个文件的最初几个字节完全一致,事实上,用5 78 69 66 00 00 49 49 2A 00做为签名来说足够精确了。尽管最初的几个字节匹配的很少,但是还是有一对字没有匹配,所以你要基于最大可能来确定签名来达到最好的精确度。
注意:这个签名是基于Sony数据相机创建的/jpg文件,可能与其它类型的.jpg文件不同。事实上,没有修改过的.jpg文件的签名是4A 46 49 46。在旧的.jpg中,这个签名可以在文件开始时候找到。我的数码相机创建的文件也包括这些字符,但是这些字符在比较深的位置。因此,在报头寻找起来比较容易。
进行恢复任务
假如你已经确定了上述签名对于你要恢复的.jpg文件是有效的,实际恢复过程是很简单的。注意:我与大家共享的这个技术假定文件本身不是破碎的。如果你的这个文件是有碎片的,并且试图要恢复,你最好使用一个商业备份方案。
你自己要恢复数据,重启你的机器使用这个指南之前提到的软盘,现在进入Norton磁盘管理器并且从对象菜单选择簇命令。输入这个磁盘全体簇范围。然后点击确定。一旦磁盘编辑器读取这个磁盘的内容,从工具菜单选择寻找命令。在16进制部分点击文本框并且以16进制的方式输入这个文件的签名。点击寻找按纽,磁盘编辑器将查找你输入的签名的第一个事件。
现在使用这个搜索让你的任务更容易,确定这个文件在哪儿开始。点击这个文件开始的,从编辑菜单上选择标记命名。现在到文件的末尾,这里经常被指定为一些空白或者一串日期。(注意:如果是大文件,你可能要很久才能找到末尾)。
当你找到这个文件的尾部,在工具菜单上选择写入对象命令。当你写入对话框出现,选择文件选项并且点击“确定”。你将被提示输入一个文件名和你要把这个恢复的文件写到何处的路径。
神秘的文件
如你所见,这种基于签名的恢复方法相当简单的,有一个问题是它不允许你恢复文件名,直到你打开这些文件,你才知道这些文件是哪个。
不知道你恢复的文件是哪个往往有大问题,如果你恢复了一堆微软的Word文档,你将把这些命名成File1.doc、File2.doc、File3.doc等等。你只能分别打开每一个文档并且重命名这些恢复的文档,来使这些文档有更合适的文件名。
但是当你并不确切知道你已经恢复的是什么,这可能有严重的问题,例如,一些版本的微软Office在一套程序(Word, Excel, PowerPoint等)中的每个应用程序使用相同的文件头,所以可能你恢复的文件,如你所知是一个微软Office文件,但是你并没有线索命名这个文件,因为你不知道他是微软Office中的哪种类型。如果这样还不够混乱的话,有些版本的Quattro Pro同时也使用一些微软Office文件同样的文件头。
你可以在开始时用.doc后缀来命名这些恢复的文件。如果一些文件不能用Word打开,你可以使用其它类型来打开直到所有文件都能被打开。但是这样要花费很长时间,而且要让你冒一定的风险。例如你如果你在别人的机器上执行一个恢复,你并不知道他们的微软Office文件是不是安全的,如果他们被宏病毒感染,盲目打开不可知文件是危险的。
在使用签名方式备份时候,你经常在硬盘内发现不知道何种类型的签名的文件。你要恢复的文件很重要,但是你不知道自己恢复的是什么文件。
解决方案是什么?使用一个文件浏览器来检查你恢复的文件,有一个签名相关的工具叫做Quick View Plus,这个工具能够通过查看文件的目录来确定文件的类型,而不是文件的扩展名,这意味着它即使你不能确定文件类型,它也能帮助你指出来。此外,因为Quick View Plus是通过浏览器而不是实际创建这个文件的的应用程序,所以你不必担心感染宏病毒。
如你所见,这是一个恢复文件的办法,即使你得系统文件分配表被损坏而不能补救。虽然这个基于签名的恢复即使可以使用,但是基于以上的各种原因,它只能做为数据恢复的最后尝试。