![半安全擦除硬盘的最快方法是什么?](https://linux22.com/image/1296221/%E5%8D%8A%E5%AE%89%E5%85%A8%E6%93%A6%E9%99%A4%E7%A1%AC%E7%9B%98%E7%9A%84%E6%9C%80%E5%BF%AB%E6%96%B9%E6%B3%95%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
鉴于
dd if=/dev/zero of=/dev/sda
为我们的目的提供了足够的擦除,那么将驱动器“清零”的最快方法是什么?我听说过这个“安全擦除”功能,它内置于硬盘驱动器中,但被 BIOS 禁用。这是最快的方法吗?还是还有其他方法?
答案1
我认为hdparm的功能就是你所说的“安全擦除”:
hdparm --security-erase NULL /dev/sdX
从来没有真正尝试过(所以不知道它如何扩展),但现在很想尝试一下。希望有更多知情人士发表评论。
答案2
安全擦除功能主要出现在 SSD 上,该功能可能内置在控制器中。
在磁盘上,许多人声称,如果您只是将驱动器清零(例如使用 dd 之类的工具),则可以通过先前的零和覆盖的零之间的微小磁性差异来恢复数据。
但是,如果您用随机数据覆盖,那么我认为一次通过就足以阻止任何像样的数据恢复。
话虽如此,我发现将随机数据写入磁盘的最快方法如下:
DEVICE=/dev/sdb
cryptsetup create cryptedDEV $DEVICE
# enter any passphrase, no need to remember it
DEVSIZE=$(cryptsetup status cryptedDEV | grep "size:.*sectors" | awk '{print $2*512}')
pv -s $DEVSIZE /dev/zero > /dev/mapper/cryptedDEV
cryptsetup remove cryptedDEV
该方案基于 Eric Wheeler 的想法,并由 linuxglobal.com 上的 Kruzi Krypr 修改
。cryptsetup 可以非常快速地从 /dev/zero 创建随机数据。pv
将数据复制到整个磁盘,显示传输速率。
我发现擦除驱动器的速度与驱动器速度一样快。
就我而言,我可以用约 60MB/秒的速度擦除 USB3 磁盘。