为什么这些数据好像消失了?

为什么这些数据好像消失了?

这个问题有点长,但人们通常更喜欢了解所有细节,而不是被要求询问,所以我提供了尽可能多的细节。

我接到一个朋友打来的电话,他刚刚不小心使用+删除了DesktopWindows 中的文件夹。shiftdelete

显然,他们每周只进行一次备份(在我看来,还不够频繁),并且将整整一周的工作内容存储在 SSD 上的文件夹中。

他们的Desktop文件夹位于仅包含数据的 NTFS 分区上,当时除了文件管理器外没有打开任何应用程序。他们的计算机使用 Windows 7。

他们已经将Recuva其安装Wise Data Recovery在不同的分区上,并且还有额外的第三个 NTFS 格式的分区,其中有许多 GB 的空白空间。

他们没有其他可用的驱动器。

我建议他们什么也不做,只是Recuva立即恢复包含该Desktop文件夹的分区中的所有文件夹和文件,并将输出发送到第三个(大部分为空)分区。事实证明,该分区Recuva存在一个严重的错误,在文件夹被删除后无法恢复Desktop,因此他们无法尝试立即恢复。

从他们删除文件夹到现在已经过去了大约 15 分钟Desktop。在此期间,他们的电脑一直处于开机状态。

由于无法成功恢复Recuva,我建议他们什么也不要做,只是现在尝试Wise Data Recovery从包含该文件夹的分区恢复所有可能的文件夹和文件Desktop,并将它们还原到第三个(大部分为空的)分区。

好吧,事实证明,删除文件夹Wise Data Recovery后也会出现一些问题Desktop。我花了大约 5 分钟通过电话找到了解决方法,他们能够使用该工具执行看似完全的恢复。

不幸的是,99% 的恢复文件只包含空值。

然后我建议他们用 进行“深度扫描” Wise Data Recovery。大约半小时后,Wise Data Recovery深度扫描完成。我的朋友又进行了一次恢复,但结果并没有好转。

电话那头传来一阵阵咒骂声,我朋友的压力显而易见。

我让他们再试Recuva一次,但之前提到的错误Recuva非常严重。我花了大约 15 分钟才找到解决该错误的办法,然后我的朋友就可以使用该工具Recuva恢复该Desktop文件夹及其所有子文件夹和文件(到第三个分区)。

不幸的是,几乎每个恢复的文件都只包含空值。

让我有点惊讶的是,这两种工具都无法成功恢复数据。我感到惊讶是因为:

  1. 自删除以来只过了很短的时间(因此,如果启用了 TRIM,可能没有太多的内容需要重新分配)。
  2. 计算机不是关闭、休眠、待机,或者用户从未注销。
  3. 我的朋友形容那台机器“精简而高效”,所有无关的 Windows 服务均被禁用。
  4. 数据分区和第三个分区上的影子服务已被禁用。
  5. 任何应用程序都不应将任何数据写入包含该Desktop文件夹的分区。
  6. 除文件管理器外,没有任何应用程序正在运行。
  7. 所有分区均未由操作系统或任何第三方软件工具加密(尽管确实如此,但 Journeyman Geek 指出以下内容可能相关):为什么我的 SSD 会在内部加密数据,即使没有设置密码?)。
  8. 所有恢复的数据都被写入到单独的分区(尽管在 SSD 上,我不确定这有多大帮助)。

对于超过 1.25GB 的已删除工作,只有大约 80KB 被恢复。

问:鉴于删除后的时间如此短,并且计算机上没有活动,为什么那些恢复工具大多只能找到填充为空的数据块?

顺便说一句,这个问题很长,感谢您阅读。截至撰写本文时,我朋友的电脑仍处于开机状态,没有使用。欢迎提出恢复想法;如果新问题适合,请直接提问,我可以发布此问题的编辑副本,重点关注该主题。

答案1

自删除以来只过了很短的时间(因此,如果启用了 TRIM,可能没有太多的内容需要重新分配)。

时间的流逝并不重要,原因有二:

  1. 默认情况下,一旦文件被删除或截断,NTFS 就会同步发出丢弃(TRIM 命令)——您不必等待每周的“优化”任务来实现它。

    (当删除数千个文件并看到 SSD 达到 100% 时,您可以感觉到这一点 - 可能其中 99% 的时间都花在处理 TRIM 命令上,而通过 fsutil 禁用同步丢弃可以使文件删除速度非常快。)

  2. 可能大多数 SSD 都实现了“TRIM 后读零”行为,它们不仅仅将修剪后的扇区标记为“可用”,而且立即地在 TRIM 命令期间取消它们的映射(并且可能物理擦除闪存)。

    丢弃后,这些扇区不再对应任何物理闪存(直到再次写入),并且从它们读取将导致 SSD 的固件立即返回零。

老实说,损失一周的工作成果比损失十年的工作成果还是有进步的。

所有恢复的数据都被写入到单独的分区(尽管在 SSD 上,我不确定这有多大帮助)。

只有当有数据没有已被使用 TRIM 丢弃(或者至少如果“TRIM 后读取零”不是标准行为)。

SSD 的工作仍然是保持对写入哪些扇区的数据的一致性视图,就像任何其他存储介质一样。因此,如果分区 1 中的某些扇区包含一些数据(例如,您已删除的文件),则这些扇区将始终保留这些数据,直到操作系统写入其他内容;写入分区 2 永远不会破坏仍由分区 1 保存的数据。

TRIM 则有所不同——SSD 在扇区修剪后认为相应的闪存区域“可重复使用”,并且技术上确实,恢复到分区 2 仍可能会覆盖先前属于分区 1 的闪存区域。但是,只有当专家尝试直接从闪存存储中恢复数据时,这才会有所不同 - 一旦向这些扇区发出丢弃指令,这些扇区就已经变得无法被操作系统访问(因此,基于软件的恢复工具也无法访问),并且没有 SSD 命令来将这些扇区映射回去,因此就软件工具而言,数据在发出 TRIM 的那一刻就已经消失了。

所有分区均未通过操作系统或任何第三方软件工具进行加密(虽然确实如此,但 Journeyman Geek 指出以下内容可能相关:为什么我的 SSD 会在内部加密数据,即使没有设置密码?)。

SSD 内部进行的加密仅当您(或恢复专家)打算物理打开 SSD 并绕过 SSD 的控制器从闪存芯片中读取数据时才有意义。

否则,只要通过 SSD 的正常接口读取数据(即使用标准 NVMe 或 SATA 命令),SSD 就会透明地解密正在读取的任何数据——毕竟,整个想法是操作系统没有需要意识到正在发生的加密 - 并且您的基于软件的恢复工具将看到与操作系统完全相同的数据。

相关内容