![如何快速、安全地擦除磁盘上的数据?](https://linux22.com/image/219922/%E5%A6%82%E4%BD%95%E5%BF%AB%E9%80%9F%E3%80%81%E5%AE%89%E5%85%A8%E5%9C%B0%E6%93%A6%E9%99%A4%E7%A3%81%E7%9B%98%E4%B8%8A%E7%9A%84%E6%95%B0%E6%8D%AE%EF%BC%9F.png)
我将安全地删除硬盘上的数据,以便我可以捐赠它。
我使用 shred,它是专门用于此 puprose 的工具。所以我运行shred -vfz /dev/sdd1
并且它完成了它的工作:
shred: /dev/sdd1: pass 1/4 (random)...
shred: /dev/sdd1: pass 1/4 (random)...652MiB/932GiB 0%
shred: /dev/sdd1: pass 1/4 (random)...1,2GiB/932GiB 0%
shred: /dev/sdd1: pass 1/4 (random)...1,8GiB/932GiB 0%
shred: /dev/sdd1: pass 1/4 (random)...2,5GiB/932GiB 0%
然而,它的速度却慢得令人痛苦。大约一个小时后,它仍然无法完成 1TB HDD 上的第一遍。所以我想知道在不影响数据删除安全性的情况下,有什么更快的方法?
PS我知道也可以使用以下方法来完成:
dd if=/dev/urandom of=/dev/sdd1 bs=4k
但我想知道在安全性和速度方面会有什么区别。
答案1
您的/dev/sdd1
磁盘上只有一个分区。您应该将其/dev/sdd
视为整个磁盘。
但是,为了满足您的要求,只需将零写入磁盘即可。对于现代高密度录音来说已经足够了:
pv /dev/zero >/dev/sdd
cat
如果没有就使用pv
。 (dd
如果块大小只有 4KB,则效率太低 - 您应该考虑使用 32MB 左右的块,甚至更多。)