I purchased a Crucial NVMe PCIe m.2 SSD and cloned my old hard drive to it. All of the data is accessible in file explorer, but the SSD has issues (overheats and won't boot) and I need to return it.

I'd like to securely erase my data from it before returning, but I am uncertain how, given that I can only access the SSD via a USB enclosure, and can't actually boot to the device. Here are the approaches I know, and why they won't work:

  1. Use the manufactuer's tool to secure erase or sanitize. Crucial does have software to perform these tasks, but the SSD needs to be installed on the computer (it won't recognize it over USB). Since I can't boot to the SSD, I can't run this tool. I do not think there is a bootable version of Crucial's storage executive software.

  2. Use nvme-cli command line utility and send sanitize commands. Since it's only connected via a USB enclosure, nvme-cli doesn't see it as an nvme device - Q: can I still get this to work somehow?

Any advice is appreciated. I don't care if what I do shortens the life of the device btw - it won't be being resold anyway. I just want all my data gone (and I need it in tact to return, so I can't take a hammer to it...)

2 Answers 2

  • Install the SSD, then boot Linux with nvme-cli from USB.

  • Since all NVMe SSDs are really PCI Express devices, desktop PCs can have multiple SSDs installed by using simple M.2-to-PCIe adapters, so you can access one SSD while booting from another.

  • With a USB enclosure, using sg3-utils' "sanitize" tool may or may not work, but probably not. (USB storage devices speak SCSI, with the enclosure doing all translation from SCSI to ATA or NVMe, so it depends on whether the enclosure's smart enough to translate the less used commands.) In theory there could be "raw NVMe command passthrough" which nvme-cli could use over USB (like there is for ATA commands over USB), but I haven't heard of such a thing yet.

Boot almost literally any linux live distro and pipe /dev/urandom to the device. dd would be traditional, but pv or cat will work.

How do you know it "overheats"? How did you go about this "cloning"? And there's probably a few more steps involved if you want it to boot, especially a recent flavour of Windows.

  • I cloned using Macrium Reflect, and later with Clonezilla. I have done this before successfully on another laptop, and repeated the same process I used previously. Sorry, I was trying to make the post short - the SSD just gets very hot after having installed it in the computer and having it in there for a bit. My old SSD did not. Do you mind elaborating on why to pipe /dev/urandom to the device? I kept reading that approaches like zeroing the device or writing random sequences don't work as well on SSDs as they did on HDDs, but I don't understand enough about them to understand why.
    – Bik
    Jul 7, 2022 at 20:25
  • (WAG:) The percieved issue with /dev/{zero, urandom} is the write-life of SSDs, you can literally only write them so many times before sectors start shitting and eventually the whole drive is rubbish. There's also drive-level firmware which will prevent writing to certain sectors, so it wont be as "complete" as writing to a mech drive. I suppose this opens the door for someone to re-code the firmware and lift data from sectors not accessible in userspace but this is speculation. The point in writing random would be to "blank" the drive and frustrate any general attempt at data recovery.
    – mitts
    Jul 8, 2022 at 21:54
  • Thanks a lot, mitts. This echos what I had read earlier (that it wouldn't be as 'complete'), but this puts it in better context for me. Appreciate the explanation.
    – Bik
    Jul 8, 2022 at 22:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.