那么,什么更安全,为什么?
hdparm --security-erase-enhanced NULL /dev/sdX
要么
dd if=/dev/zero of=/dev/sdx
那么,什么更安全,为什么?
hdparm --security-erase-enhanced NULL /dev/sdX
要么
dd if=/dev/zero of=/dev/sdx
Answers:
他们使用不同的方法,效果可能取决于驱动器。前者使用'较新'的ATA安全擦除命令,后者只用零覆盖它。
对于没有支持安全擦除的真正旧驱动器,后者是唯一的方法 - 它只是用零覆盖驱动器,并且在很多情况下足够多(尽管使用类似shred命令的东西更好 - 因为它的专门设计用于消除数据,与DD不同)。擦拭后,大多数驱动器都无法访问。
然而,对于SSD,数据被有意地内部加扰并存储以用于磨损均衡目的。用零覆盖它应该有效,但不确定 - 在这种情况下,做一个sata安全擦除是一个更好的解决方案。它还可以在遭受写入放大的驱动器上提供hort术语性能提升。Sata安全擦除将触发内部擦除方法,并且是确保擦除的最佳方式。
在大多数现代驱动器中,hdparm方法应该足够且可靠,足以使用。如果您因任何原因需要将驱动器归零,请使用dd方法。
hdparm -I
输出的安全部分中。)如果驱动器未提供该信息,则hdparm假定硬编码限制为3小时。有一些(较旧的)驱动器不报告擦除需要多长时间,但需要超过3小时,因此hdparm将在擦除完成之前停止等待并重置驱动器。如果在hdparm -I
输出中没有看到“322min for SECURITY ERASE UNIT”这样的行,请注意这一点。
/dev/zero
似乎不够,可以另外进行第二次运行/dev/random
作为源。顺便说一句:SSD使用NAND-Flash,不是吗?因此,如果您将其/dev/random
用作源,则在大多数情况下应该触发内部块擦除。如果你想增加这些设备的使用寿命,那么对NAND闪存设备的写入应该尽可能地减少 - 它们具有有限的“写入次数”。