我需要从 Ubuntu Linux 中擦除多个硬盘上的所有数据。我找到了三个命令行工具:shred
和。人们的推荐似乎有点随机。有时有人会推荐其中一个,但他们并没有具体说明原因wipe
。dd
比较这些工具,它们有哪些优点/缺点?
答案1
shred
可以随机擦除整个驱动器或分区,并且比使用 dd 要快得多。
shred -vn 1 /dev/sdxx
答案2
比较这些工具,它们有哪些优点/缺点?
这取决于你的目标:
- 您是否正在擦除任何人都不该看到的真正敏感数据(例如医疗信息)?
- 您是否只是遵循“我应该这样做,因为这是正确的”这一理念?
- 或者更弱的说法是“我必须擦拭以遵守规则”。
在最后一种情况下(3:规则),请将要求添加到您的帖子中,以便我们将其考虑在内。
情况 2:对于旋转硬盘,我倾向于先擦拭磁盘一次,然后用锤子敲打它们。最后这样做主要是为了防止人们从垃圾箱里捡到它们,然后回来寻求支持。
在情况 1 中(安全擦除),我将尝试两件事:
- 如果是 SSD,我会告诉驱动器自行安全擦除。这既快速又安全。(SSD 上的数据往往是加密的。丢掉加密密钥会使数据变得毫无价值)。
- 如果是旋转硬盘,我会尝试同样的方法(有些型号支持该命令,有些不支持)。如果不支持,我会使用手头上的任何工具。到目前为止,我主要使用的是 dd,因为我对它比较熟悉,而且它总是预装的,
撕碎似乎用于擦除文件。这意味着它可能会擦除文件,但不会擦除磁盘上之前删除的信息。在这种情况下,我不会用它来擦除整个磁盘。
免责声明:我还没有尝试过它可以粉碎/dev/sdb或其他块设备。在这种情况下,它可能会起作用。
同样的情况也发生在擦拭。
剩下的是 'dd',(或未提及的坏块) 并由驱动器本身进行安全擦除。
最后一项可以通过向驱动器发出一条命令来完成hdparm或者通过从这张 LiveCD。在最后一种情况下,请确保擦除正确的磁盘(例如,仅将要擦除的磁盘放入计算机,然后从 CD 启动)。
答案3
我发现擦洗也可以完成此任务,无论是文件还是物理磁盘/分区。
您可以使用:
scrub /path/to/my/file
scrub /dev/sda1
scrub /dev/sda
分别清理一个文件、一个分区和一个整个物理磁盘。希望这对你有帮助!