SSD盘如何抢救被删除的文件

Q:

我一般系统盘用SSD,数据盘仍然老老实实用机械硬盘,无它,就是多一次救命的机会。昨天手贱删了一个文件,反应过来,立刻WinHex打开目标盘,蹭一下就复制、恢复到其他分区了。若是SSD,死了就凉透了。

A: tk 2022-03-16

执行

fsutil behavior set DisableDeleteNotify NTFS 1

这个你尝试过吗?如果特别希望SSD的文件删除后能恢复,可以打开这个,不过最好不打开。

D: scz

查了一下,tk说的这条命令会关闭SSD的TRIM特性,这样干之后WinHex能从SSD盘抢救被删除的文件,实测无误。

对于Win10 NTFS,DisableDeleteNotify缺省为0,表示启用SSD TRIM特性。

$ fsutil behavior query DisableDeleteNotify NTFS
NTFS DisableDeleteNotify = 0

假设此时删除某文件,立刻用WinHex抢救,能看到文件名残像,文件大小也对得上,但文件内容被抹成全零,恢复操作得到的是大小一样的全零内容的无效文件,这就是TRIM的物理意义。

现在禁用TRIM,该操作立即热生效,无需重启OS或其他服务。

$ fsutil behavior set DisableDeleteNotify NTFS 1
NTFS DisableDeleteNotify = 1

假设此时删除某文件,立刻用WinHex抢救,能看到文件名残像,文件大小也对得上,文件内容保持原样,恢复操作得到的有效原文件。

禁用TRIM有负作用,一是SSD性能下降,二是SSD寿命缩短,据说会增加额外的写操作。启用TRIM使SSD盘保持最佳性能、延长使用寿命,不值得为了”反删除”而禁用TRIM。

Win7最早识别SSD驱动并内在支持TRIM,但GUI上没有体现,Win10在GUI上有体现。

————————————————————————–
右键选中任一盘符
 Properties
  Tools
   Optimize
    dfrgui.exe (实际执行该程序,可以命令行直接启动)
————————————————————————–

dfrgui.exe会显示各盘符的”Media type”,常见两种是”Solid state drive”、”Hard disk drive”,前者是SSD,后者是机械硬盘。

在”Optimize Drivers”界面选中指定SSD盘,点击”Optimize”,相当于手工TRIM。

此外,在Win10上,不必也不要显式对SSD盘使用defrag.exe,OS会处理好的。

参看

fsutil behavior
https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/fsutil-behavior

Does Windows defragment your SSD – Scott Hanselman [2014-12-04]
http://www.hanselman.com/blog/the-real-and-complete-story-does-windows-defragment-your-ssd

版权声明
本站“技术博客”所有内容的版权持有者为绿盟科技集团股份有限公司(“绿盟科技”)。作为分享技术资讯的平台,绿盟科技期待与广大用户互动交流,并欢迎在标明出处(绿盟科技-技术博客)及网址的情形下,全文转发。
上述情形之外的任何使用形式,均需提前向绿盟科技(010-68438880-5462)申请版权授权。如擅自使用,绿盟科技保留追责权利。同时,如因擅自使用博客内容引发法律纠纷,由使用者自行承担全部法律责任,与绿盟科技无关。

Spread the word. Share this post!

Meet The Author

C/ASM程序员