恢复导致空值的已删除文件

Tie*_*rcq 2 data-recovery filesystems onedrive

我们的一位开发人员在使用 OneDrive 时遇到了问题。考虑到他的数据仍然同步,我移删除了同步文件夹,允许它重新同步。重新同步后,很明显他的数据自 1 月(超过 4 个月!)以来根本没有同步。

不用担心..让我们使用一些恢复工具来恢复删除的数据..

我尝试过 Recuva、GetDataBack 和 Puran,但它们的结果完全相同。每个文件都在正确的文件夹结构中可见,但仅包含 NULL 值。不仅仅是 1 或 2 个文件,而是那些 onedrive 文件夹中的每个文件。

我怀疑这可能是因为 Onedrive 用空值覆盖了原始文件,因为它只同步它需要的数据。但这没有意义,因为有 2 个 onedrive 文件夹:

  • C:\Users\%user%\Onedrive - %Companyname%
  • C:\Users\%user%\Onedrive - %Companyname% 1

我们需要的数据在最后一个(以“1”结尾)文件夹中可见,而新同步在第一个文件夹中恢复。在此删除之前,每个文件都保存在本地。

该设备是带有运行 Windows 10 Enterprise (10.0.16299) 的东芝 256GB SSD (THNSN5256GPU7) 的 HP Zbook。Windows 和 Data 都在同一个 NTFS 卷上,因为它从未打算存储任何数据。

还有什么我可以尝试的吗?我们刚刚完成了一些紧急项目。几个月的工作就这么过去了.. 一些项目可以使用反编译工具恢复,其他项目有一些 GIT 版本,但也有一堆关键的管理。

qas*_*saq 6

现代 SSD 都在 NVMe(或更一般地,垃圾收集)上使用称为TrimDeallocate的功能,其中操作系统指示它在删除文件时擦除已释放的块。

这意味着当您 Shift+Delete 时,包含您数据的驱动器上的所有扇区都被标记为未使用,并且 SSD 在接下来的几秒钟或几分钟内在后台用 NULL 覆盖它们(严格来说,它会在垃圾收集期间擦除页面并且可能会将部分使用的页面中的数据转移到其他地方)。

(S)ATA 驱动器上有一个称为“修剪后确定性读取零”或 NVMe 上的“写入零”命令的附加功能,这会导致驱动器为标记为已删除的扇区显式返回零,即使它实际上尚未完成擦除他们呢。

Tl; dr:已删除的数据在现代 SSD 上无法恢复,因为它在删除时会被有意地覆盖为零或空值。

无所谓。始终维护和测试您的备份