
大家好!
这是关于已执行 TRIM 操作的 SSD 固态硬盘系列文章的第二部分。
本文将探讨部分数据删除时,TRIM在SSD上的工作原理。我们将以M.2 SATA驱动器为例,介绍数据恢复过程。
PCIe NVMe SSD 的流程也是相同的。
快速格式化和删除一定数量文件的区别在于有多少逻辑块被标记为未使用,以及文件系统如何向SSD报告这些信息。
1. 删除数据时TRIM命令的具体功能
当你删除单个文件时:
1. 文件系统将其块标记为空闲
2. 操作系统(例如Windows或Linux)向SSD发送TRIM命令
3. TRIM 命令包含文件所在的 LBA 范围列表
4. SSD控制器将相应的NAND页面标记为无效
特色:
§ TRIM仅适用于文件所在的块
§ 驱动器上的其余数据保持不变
§ 后期,垃圾回收还会清除特定的方块
换句话说,删除=特定区域的TRIM。
2. TRIM命令在格式化时的特定功能(快速格式化)
快速格式如下:
1. 文件系统被重新创建
2. 文件分配表被清除
3. 操作系统会向整个分区发送TRIM命令
对于SSD来说,这意味着:
§ 几乎所有分区的LBA都被标记为无效
§ 控制器对硬盘显示完全为空
因此,我们看到TRIM工作方式有两个主要区别:
§ 删除文件→只对这些文件块进行TRIM
快速格式化 → 实际上会对整个分区执行 TRIM 操作。
让我们看看基于SM2259XT控制器的Apacer AP120GAST280 SATA M.2驱动器

该解决方案在 PC-3000 7.7.21 版本中演示
用户从SSD中删除了部分文件。主要目标是恢复丢失的数据。
让我们连接驱动器并按照数据提取器进行操作。我们看到最新版本的文件系统,其中隐藏了删除的数据。

首先,我们需要确定哪些数据被删除。为此,我们将对NTFS分区进行MFT扫描,并启用“显示已删除”选项。


现在我们可以看到哪些文件和文件夹被删除了。此时,你可以观察到空扇区和所需文件的缺失。文件系统仍然存储文件位置信息,但这些文件扇区的内容被填入零。
恢复丢失数据访问的程序始于类似于从其他支持且内部固件损坏的SSD恢复数据的步骤。
要访问这些数据,我们需要做以下操作:
1. 打开实用程序列表,选择支持SM2259XT控制器的任何实用程序。

2.载入适当的引导程序。在大多数情况下,该实用程序已经建议使用与当前芯片修改兼容的加载器。

3.在此任务中,内部固件不同于现有的加载器。在这种情况下,我们可以手动尝试应用标记为与内部固件类似的加载程序。

4.成功运行加载器并构建翻译器后,在DE中基于活动实用程序创建任务。

5.在数据提取器中,扫描MFT后,我们遇到了一个熟悉的情况:显示已删除的文件,但是,文件的“正文”部分仍然被零填充。

6.下一步是基于驱动器扇区的物理位置创建虚拟磁盘。目前,我们已经可以运行RAW恢复,尝试定位必要的已删除数据。

7. 但在大多数情况下,这还不够——用户需要一个带有文件和文件夹名称的文件系统。所以创建一个包含所有版本翻译器的虚拟驱动器。
8.接下来,进入编辑菜单,运行“选择元数据版本”的过程,自动选择具有非零检查大小的文件版本


9.流程完成后,运行MFT扫描,并使用“显示已删除”选项显示已删除的文件


10. 在自动模式下输入版本后,已删除文件的扇区将被填充数据。
11.为了方便起见,我们还可以启用“Headers control”选项,检查哪些文件仍可访问,哪些文件被部分覆盖为零,及校验和不匹配。
红色标记也可能表示文件版本选择不正确,你需要手动检查虚拟分区中其他版本的可用性。
| 欢迎光临 PC3000 军达成数据恢复论坛 (http://www.jundacheng.com/bbs/) | Powered by Discuz! X2 |