重置 PC 后,TRIM 多久会使数据无法恢复?

重置 PC 后,TRIM 多久会使数据无法恢复?

如果您使用 TRIM 重置带有 SSD 的 PC,那么所有数据需要多长时间才能恢复?这里说的是简单的“重置此 PC”,而不是安全擦除。

答案1

修剪应该使数据无法通过用户可用的常规工具立即恢复。当 TRIM 通知控制器块不再使用时,SSD 控制器可以删除内部表上的各种链接,这些链接告诉它哪些数据链接到驱动器上的哪个位置。如果没有这些链接,控制器读取的数据基本上是未知的。

在许多情况下,控制器会返回一些固定数据,这些数据仅表示未分配的块,要么是零,要么是一,要么是其他固定数据。行为取决于您的特定 SSD,唯一可以确定的方法是自己测试,方法是将一些数据写入磁盘上的特定块,运行 TRIM,然后读取该块。

作者:Chris Siebenmann仅仅丢弃(TRIMing)SSD 的所有块有多安全?

如今,任何您想要使用的 SSD 都将支持所谓的“TRIM 后确定性读取 (DRAT)”(类似 cf),即在 TRIM 操作后读取数据时,SSD 将始终返回固定结果。一些 SSD 还承诺在这种情况下始终返回零;这就是“TRIM 后确定性读取零”,缩写为“DZAT”、“RZAT”或“DRZAT”。这些是 (S)ATA 版本,但 NVMe 具有类似的系统。所有这些都意味着,一旦您 TRIM 整个驱动器,驱动器上的先前数据就无法通过正常方式读取,因此,如果有人拿到您的驱动器并将其放入计算机中,就会得到垃圾

这一页2014 年从 SSD 驱动器恢复证据:了解 TRIM、垃圾收集和排除更详细地介绍了恢复数据的陷阱和问题,甚至列出了命令

sudo hdparm -I /dev/sda | grep -i trim

作为一种(在 Linux 上)判断驱动器在执行 TRIM 命令后是否会返回某个固定的数据块的方法。它应该返回类似于以下内容的内容,Deterministic read data after TRIM这意味着即使读取了 TRIMed 块,控制器也会返回特定数据。

不过,这仅适用于用户工具,数据仍会写入闪存单元,直到某个不确定的时间,闪存单元被控制器擦除。您可以从驱动器中移除 NAND 闪存设备并对其进行原始读取以恢复数据。

制造商还可以将驱动器置于一种模式,即控制器将读写操作直接传递到闪存单元,从而可以恢复原始数据,但这很可能特定于特定的驱动器控制器和制造商。

数据从 SSD 闪存中消失需要多长时间很难说。垃圾收集通常在驱动器空闲时进行,因此只需让驱动器通电但不使用,控制器就可以工作并擦除每个闪存单元,但可能需要数小时、数天或数周的时间全部数据无论如何都无法恢复。

SuperUser 的另一个问题是如何判断零是源自修剪还是来自 SSD 上实际写入零

相关内容