现代硬盘在存储信息时使用 4,096 字节的扇区大小。假设我们试图在硬盘上存储 40,960 字节(10 个扇区)的数据。这 40,960 字节代表我们试图存储的单个文件。现在让我们假设硬盘上的其中一个扇区发生故障。在情况 A 中,我们只是按原样存储文件(例如 really-huge-document.pdf),而在情况 B 中,我们将文件拆分为十个子部分(例如 really-huge-document-pt-1.pdf 到 really-huge-document-pt-10.pdf)。不考虑尝试将数据有效地恢复到原始格式,情况 A 是否代表数据完全丢失,而情况 B 是否代表仅丢失 10% 的数据?或者数据恢复是否取决于存储的数据类型和/或硬盘上实施的错误更正方法?
答案1
您的问题没有唯一的答案。这完全取决于受损文件的结构和损坏程度。
在你举的例子中,PDF 很容易受到部分破坏,因为它的内部结构是分层的。如果上层数据丢失,则文件无法修复。
在另一个极端,你会发现简单的文本文件,将其分成几部分只意味着丢失一部分,而其他部分将保持独立。
我建议你不要尝试将文件分割成碎片,因为这不是一种万无一失的保护措施。你仍然可能因为丢失了其中的一个碎片而丢失整个文件。
我反而建议将文件保存为最易于使用的形式,并集中精力进行备份。
答案2
我认为答案取决于您使用的硬盘恢复软件。吉布森研究中心的史蒂夫·吉布森是数据恢复领域的先驱。如果您浏览他的网站中有关其 SpinRite 产品的内容,您会发现他深入讨论了他的软件如何能够部分恢复文件,而其他产品如果某个扇区损坏则无法恢复文件。
以下是他谈论部分文件恢复的示例摘录:
接受部分数据:如果 Dynastat 分析无法完美重建扇区的数据,它至少能够识别每次读数之间不同的数据位。这使其能够大大减少扇区受损区域内的不确定性,并恢复扇区的 4096 个单独数据位中的大部分。
SpinRite 将记录扇区未完全恢复的文件的名称,并用这个“大部分正确”的现在可读的扇区替换文件完全无法读取的扇区(任何其他软件都会简单地丢弃该扇区),以便除了文件中的少数数据位之外,其余所有数据位仍可读取和使用。
与因某个扇区完全无法读取而丢失整个文件相比,这显然是一个巨大的进步。
我认为他在这里通过描述所使用的方法来阐明你的问题:
DynaStat 系统不会在无法读取某个扇区时放弃,也不会接受驱动器可能勉强接受的任何数据,而是通过积累和分类多达 2,000 个单独的扇区重读,积累有关任何有问题的扇区数据行为的综合统计数据库。通过了解驱动器的数据到磁通反转编码器解码器的解锁/重新锁定行为,以及通过在遇到任何类型的缺陷后处理扇区的数据“尾部”,Dynastat 技术可以根据无法读取的扇区的磁通反转的统计性能概况“逆向工程”扇区的原始数据。因此,SpinRite 通常可以完全恢复本来会完全丢失的数据。不用说,没有其他实用程序曾经采用过这样的技术。
你可以在这里阅读更多: