如何安全擦除 NVMe SSD

Has*_*ziz 11 security ssd hard-drive secure-erase nvme

人们普遍认为,由于磨损均衡和过度配置等功能,无法通过将模式写入驱动器来安全擦除 SSD,并且擦除现代 SSD 的最安全方法是使用 ATA 安全擦除固件命令。

但是,根据我的理解,这似乎不适用于 NVMe 驱动器,因为它们不是基于 ATA 的——而是通过 PCIe 总线连接并运行。查看Parted Magic 工具似乎证实了这一点,它具有专用于 NVMe 驱动器的安全擦除选项:

在此处输入图片说明

这似乎证实了 NVMe 驱动器有自己的等效于 SATA SSD 的 ATA 安全擦除命令,但我一直无法找到 NVMe 等效于hdparm.

如何安全地擦除 NVMe SSD?我正在运行 Windows,但也可以使用 Cygwin 访问类 Unix 环境。

Has*_*ziz 11

是的,这确实hdparm不适用于 NVMe 驱动器,因为它们不使用 SATA 驱动器用来向驱动器发送低级固件命令的传统 ATA 接口协议。

值得庆幸的是,有一个开源工具可以将等效命令发送到 NMVe 驱动器 - nvme-cli. 该工具已经作为许多发行版的包提供,并且可以为更多发行版进行编译。

一旦您安装了该工具,例如:

apt-get install nvme-cli
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用以下命令列出所有已识别的 NVMe 设备:

nvme list 
Run Code Online (Sandbox Code Playgroud)

安全擦除列出的 NVMe SSD,请运行:

nvme format -s1 /dev/nvme0n1
Run Code Online (Sandbox Code Playgroud)

.../dev/nvme0n1列出的设备的块名称在哪里。

  • 我喜欢“nvme format -s2 /dev/nvmeXnY”来擦除加密密钥。然后执行“blkdiscard /dev/nvmeXnY”以确保所有内容都已修剪并归零。 (2认同)