我使用dd“零填充”(完全擦除)了一个外部硬盘,据我所知:人们说你应该至少“零填充”3次以确保数据真的被擦除并且没有人可以恢复任何事物。
所以我决定在磁盘填充为零后再次扫描磁盘。我期待磁盘仍然有一些随机二进制文件。事实证明,一开始它只有几个连续的字节。这可能是文件结构类型和其他头文件。除此之外,它都是零,没有别的。
因此,如果我们必须从零填充磁盘中恢复任何文件,...如何?据我所知,即使您将磁盘填充为零,您仍然应该留下一些数据。...或者 dd 真的可以完全消灭所有数据吗?
我使用dd“零填充”(完全擦除)了一个外部硬盘,据我所知:人们说你应该至少“零填充”3次以确保数据真的被擦除并且没有人可以恢复任何事物。
所以我决定在磁盘填充为零后再次扫描磁盘。我期待磁盘仍然有一些随机二进制文件。事实证明,一开始它只有几个连续的字节。这可能是文件结构类型和其他头文件。除此之外,它都是零,没有别的。
因此,如果我们必须从零填充磁盘中恢复任何文件,...如何?据我所知,即使您将磁盘填充为零,您仍然应该留下一些数据。...或者 dd 真的可以完全消灭所有数据吗?
正如您在此处所读到的,在“零填充”数据后无法恢复数据。
可能有 56% 的机会正确恢复单个位,但由于您必须恢复 8 位才能仅获得一个字节,因此恢复任何数据的可能性很小。
对这些信息要非常小心。我在 HDD 行业工作,我可以确认偏离轨道读取可以恢复被覆盖的数据。
一些恢复方法使用此技巧将磁头设置为 +/-10% 偏离轨道,然后读取,将其移出轨道一点,然后读取。在某些时候,您将能够恢复在零填充之前放置的内容。
尽可能使用随机。零对于元数据和 MBR 擦除是可以的。我推荐几个随机传递来消除原始数据。
此外,零并不意味着清除 HDD 上的记录位。零与任何其他数字一样具有位模式。
是的......但这取决于你有多偏执。
专业人士可能仍然可以读取一些数据。“完全擦除”的政府/军事标准需要多次通过,包括在整个驱动器上多次写入随机数据,其中穿插着 0 填充和 1 填充。这是因为复杂的硬件可以分析和提取磁重影。这是大多数人无法使用的昂贵套件,因此仅雇用某人进行提取对于大多数人来说也非常昂贵。
但是没有理由
dd
单独无法完成这些多次传球。你可以告诉它从哪里获取它写入的原始数据,这样在/dev/random
零和一次之间交替,我认为,它有资格对数据造成相当大的损害。更新
根据 david 链接的论文,使用软盘可以恢复被覆盖的数据,但使用现代硬盘驱动器几乎不可能,因此最好将恢复想法视为一个神话。
我将原始答案保留为代表神话。
注意:“神话”是关于恢复被物理覆盖的数据。恢复仅被删除(未覆盖)的数据是完全不同的讨论。
尽我所知:
当您覆盖磁盘上的数据时,旧数据会丢失到正常的系统工具中。(如果不是,读取将返回属于旧数据和新数据的位的混合,因此您的数据将损坏,您将需要一个新磁盘。)
但是有可能使用特殊设备恢复被覆盖的数据。原因是磁盘上记录位的方式:“位”是磁盘上的磁化区域。代表单个位的区域包含数百个磁性“颗粒”,如果足够多的这些单个颗粒具有正确的方向,读取一个位将返回 1。
诀窍是写入永远不会 100% - 覆盖可能会改变大约 90% 的这些晶粒的磁取向,这对于可靠地读取新数据来说已经足够了。但是在晶粒中留下了一些没有改变取向的剩磁。如果您有适当的设备,则可以读取此残留物,因此您可以获得旧的覆盖数据的(有些嘈杂的)表示。结合统计分析,通常可以重建相当数量的原始材料。
但是这种恢复需要专门的硬件,而且正如 Oli 所说,对于大多数人来说,成本高得令人望而却步。