在 /dev/zero 完成之前取消它吗?

在 /dev/zero 完成之前取消它吗?

为了清理我使用的大型硬盘dd if=/dev/zero of=/dev/sda。后来我通过阅读更多资料才意识到默认块大小是 512,如果我希望这个过程更快,我应该将块大小增加到至少 4M。

我的问题是,如果我在它完成之前取消会发生什么(ctrl + c 或退出终端有望取消它?)。我是否可以重做命令并设置更高的 bs?或者此时系统基本上已经损坏,我甚至无法重新登录?如果我现在仍然可以重做,那么对于 1TB 驱动器(如果重要的话,软件 raid 1),我可以使用的最高 bs 值是多少?

答案1

当您覆盖硬盘时,损坏是一件很有趣的事情。您应该假设您的磁盘在前几个块被写入后(即不到 1 秒)就损坏了。您的最终目标是用 0x00 完全重写磁盘上的每个字节,对吗?无论特定字节被写入一次、两次还是 30 次,到最后它仍然是 0x00,您的数据实际上无法恢复。

答案2

如果您的操作系统不在 /dev/sda 上,那么您当然可以取消它。

如果你的操作系统位于你正在擦除的 dfisk 上,那么这取决于情况。例如

  • 该命令运行了多长时间dd
  • 您使用了哪个操作系统/发行版?即使磁盘上的底层信息已被破坏,内容是否仍被缓存并且看似可用?

最后,为什么要尝试从操作系统内部运行它?通常我会从另一个磁盘启动(例如 liveCD 或 pendrive 上的 liveOS),或者我会向磁盘发送命令以擦除自身,而无需任何操作系统干预。这是通过安全擦除命令。您可以使用 hdparm 工具发出此命令。

首先用来hdparm -I /dev/sda检查驱动器是否被冻结。

然后设置密码:
hdparm --user-master u --security-set-pass Mypasswordhere /dev/sda

最后发出安全擦除命令:
hdparm --user-master u --security-erase Mypasswordhere /dev/sda

如果你需要对多台计算机执行此操作,请尝试达里克的靴子和核弹磁盘。

相关内容