As you probably know (because you’re reading this post) Windows doesn’t really destroy a file when it is deleted. It merely removes the references in the file table so you don’t see it in on the file system anymore. But the file is still intact sitting there on your hard drive until some other file is written over it.
If you want to truly erase those files on a HDD drive you can use a number of tools to erase the free space on the drive. What these tools do is simply overwrite all free space with random data and thus effectively overwriting and destroying those deleted files still sitting intact in your free disk space.
Free tools that can do this are the command line Secure Delete tool from System Internals and the handy CCleaner (see the tools menu).
For an SSD drive however overwriting the free space with random data is bad for your drive. SSD’s have a limited number of times you can write data to their blocks. Using a random data overwrite tool, which can even end up do this multiple times, is just a bad idea.
Luckily everything is built into your SSD drive to do this automatically. It’s called the TRIM function and from Windows 7 on this is activated by default so normally you don’t have to do a thing to take advantage of this secure-delete feature.
However if you are like me then you want to be sure if this feature is activated.
On Windows, you can do this by opening a command prompt and entering the following command:
fsutil behavior query disabledeletenotify
If you get the following, your TRIM command is already active on Windows:
NTFS DisableDeleteNotify = 0
If this would return a value of 1, you can activate the TRIM function with this command:
fsutil behavior set DisableDeleteNotify 0
You can find more detailed instructions and information about activating the TRIM function here:
– How to check if TRIM is enabled on your SSD and how to enable it
– Why SSD TRIM support is so important and how to enable it
And then there’s always Google of course.
Photo by Delete, cc-licensed.