Принято считать, что твердотельные накопители нельзя надежно стереть путем записи шаблонов на диск из-за таких функций, как выравнивание износа и избыточное выделение ресурсов, и что наиболее безопасный способ очистки современного твердотельного накопителя - это использование команд микропрограммного обеспечения ATA Secure Erase.

Однако, насколько я понимаю, это не относится к дискам NVMe, потому что они не основаны на ATA - вместо этого они подключаются к шине PCIe и работают через нее. Взгляд на инструмент Parted Magic, кажется, подтверждает это, у которого есть опция безопасного стирания, предназначенная для накопителей NVMe:

введите описание изображения здесь

Похоже, это подтверждает, что у накопителей NVMe есть собственный эквивалент команды ATA Secure Erase для твердотельных накопителей SATA, но мне не удалось найти эквивалент NVMe для hdparm.

Как я могу безопасно стереть данные с твердотельного накопителя NVMe? Я использую Windows, но также имею доступ к Unix-подобной среде с помощью Cygwin.

answer

Да, это правда, hdparmэто не будет работать для накопителей NVMe, потому что они не используют традиционный протокол интерфейса ATA, который диски SATA используют для отправки низкоуровневых команд микропрограммы на накопитель.

К счастью, есть инструмент с открытым исходным кодом, который позволяет отправлять эквивалентные команды на накопители NMVe - nvme-cli. Инструмент уже доступен в виде пакета для многих дистрибутивов, и его можно скомпилировать для многих других.

После того, как вы установили инструмент с чем-то вроде:

apt-get install nvme-cli

Затем вы можете перечислить все распознанные устройства NVMe с помощью:

nvme list 

Чтобы безопасно стереть указанный в списке твердотельный накопитель NVMe, запустите:

nvme format -s1 /dev/nvme0n1

... где /dev/nvme0n1имя блока указанного устройства.