如何提高数据恢复和扫描文件的完整性?

如何提高数据恢复和扫描文件的完整性?

我正在使用 R-studio 在我的一个 ntfs 分区上进行数据恢复。有一个大约 16MB 的 pdf 文件,但该软件只能恢复其中的 15MB。所以我在想可以用什么方法来提高软件扫描和恢复的质量?

我正在查看它的偏好设置。我不太确定是否有一些可调节的扫描和恢复参数可以进行微调以提高质量?

R-studio 有一个免费试用版,扫描免费,但恢复不免费。可从以下网址下载http://www.data-recovery-software.net/Data_Recovery_Download.shtml 它的手册在这里http://www.r-tt.com/downloads/Recovery_Manual.pdf。我尽力在手册中寻找答案,但未能找到。他们的技术支持不如他们的软件好,而且在我看来通常是无助的。

答案1

除非在文件删除后您对相关设备完全没有写入任何内容,否则总是有一个或多个文件可能部分或全部无法恢复。

如果您从此驱动器运行 Windows,由于它会将各种内容写入磁盘(注册表更新、日志),因此时间越长,已删除文件被覆盖并无法恢复的可能性就越大。恢复的第一条规则是移除相关设备并使用从单独磁盘(或恢复 CD/闪存驱动器)运行的操作系统来检查和执行恢复操作。

您可以尝试其他恢复工具,例如 Piriform 的 Recuva,但无法恢复的文件部分很可能被后来写入磁盘的文件覆盖。

借此机会制定更好的备份计划,以避免首先需要执行恢复。

答案2

我实际上使用了我在回答您之前的问题时提到的所有 3 种工具。我最终得到了一大堆部分文件(遗憾的是无法避免),而且由于我对任何给定恢复文件的完整性都很挑剔,所以我最终用不同的程序恢复了每个文件的多个副本。当然,有些文件被一个程序找到而另一个程序找不到,但总的来说,我花了两个多星期的时间整理碎片、比较副本、保留(大部分)多个版本中最大的文件等等。对于一些部分恢复的文件,我能够追踪来源并在哈希校验或类似操作后下载剩余部分。总而言之,我能够恢复大约 80-85% 的文件,不是全部文件,而是我恢复的文件真的想要。我觉得那是一个非常成功率还不错,因为我的情况是驱动器出现物理故障(我最后甚至使用了冷冻技巧!)还有一次,我为一个朋友做了这件事,他不小心格式化了错误的驱动器,然后使用系统几个小时,我能够恢复他大约 90% 的文件。

流程这将花费时间和精力,如果可以的话,你绝对应该尝试多个程序,因为它们的工作方式并不完全相同,而且它们的恢复算法也不同。具体说到 R-Studio,虽然已经有一段时间了,但我记得我打开了搜索已知文件类型,尽管这会增加几个小时的扫描时间。在此模式下,程序利用对常见文件类型的内部格式/结构的知识来识别和恢复尽可能多的文件内容。不过,我通过转到文件类型对话框(手册 - 第 32 页)并取消选中所有我知道我的驱动器上从未有过的类型,确实节省了大量扫描时间。这使程序免于浪费时间搜索不存在的文件类型。我还确保保存了扫描信息,以便在后续运行中我只需加载它并节省数小时的重新扫描时间。我调整的其他设置与跳过驱动器的坏块/不可读区域有关,我认为这对您来说不是问题,因为您的驱动器其他方面都很好。

我想不出我专门为 R-Studio 做了什么。我还检查了其他两个程序的所有设置,基本上启用了任何我认为可以提高扫描质量的选项,而不管需要多长时间。我没有寻求技术支持,我知道他们是什么样的。无论如何,一旦程序完成,就需要手动筛选并从返回的结果中尽可能地挽救。

答案3

您遇到的问题是由于碎片化。将文件写入磁盘时,其所有内容并不总是连续存储。每当您删除文件时,都会释放磁盘上的一些块,但其后可能还有另一个文件。这会留下一块与已删除文件一样大的可用空间(四舍五入为最接近的簇大小)。如果您随后写入一个大于已删除文件的文件,则它可能会被写入该块,但只能写入适合的部分,其余部分将写入下一个可用的空闲块。此文件现在已碎片化。

大多数人认为磁盘碎片会影响性能,但事实是,远的对于数据恢复来说,这更加成问题和麻烦。当你丢失一个文件并需要恢复它时,如果文件没有碎片,那么你需要做的就是找到文件的开头并知道它的大小。然后你只需复制适当数量的簇即可。使用文件签名这些文件通常存储在文件头中(即文件开头)。因此,您所要做的就是扫描磁盘,查找指示文件开头的模式,然后复制一定数量的块来恢复文件(通常会导致文件末尾出现一些无关的垃圾;但这总比没有好)。

但是,如果文件碎片化,恢复文件就会变得更加困难,因为没有文件系统信息告诉您文件的每个块存储在何处,就无法知道哪些簇属于哪些文件。您可能能够找到一个文件并获取其中的一部分,例如碰巧连续存储的前 15MB,但最后 1MB 可能存储在其他地方,而您无法知道这一点。

如果您尝试恢复文本文件,您可能能够手动找到分散在磁盘上的单独部分并将它们重新拼接在一起,但如果您碰巧编辑了该文件并保存了几次,每次都进行了更改,那么即使这样做也很困难。您如何知道下一个部分是来自文件的最新版本还是来自较早的部分?它可能,但相当耗时。另一方面,大多数二进制文件如果碎片化,则完全不可能恢复(我想你可以查找某些类型的二进制文件(如 MP3 等,其中甚至片段都可以“查看”)。

保持磁盘碎片整理可以让数据恢复变得更加容易。不幸的是,由于 SSD 驱动器的写入能力有限,许多人实际上正在对磁盘进行碎片整理较少的,这使得数据面临更大的永久丢失的风险。


假设您的文件存储在磁盘上,如下所示。紫色簇是文件存储的位置。文件的前 15MB 存储成一行,但最后 1MB 单独存储在磁盘上较早的位置。黄线显示文件的开头,其中找到了 PDF 签名。程序找到了签名并识别出一个 PDF 文件,但只能复制前 15MB,然后才找到另一个文件。它无法知道最后 1MB 的位置,因为簇链,或者更确切地说曾是存储在文件系统中。

在此处输入图片描述

相关内容