![如何擦除具有不可写扇区的硬盘?](https://linux22.com/image/1259253/%E5%A6%82%E4%BD%95%E6%93%A6%E9%99%A4%E5%85%B7%E6%9C%89%E4%B8%8D%E5%8F%AF%E5%86%99%E6%89%87%E5%8C%BA%E7%9A%84%E7%A1%AC%E7%9B%98%EF%BC%9F.png)
所以我有一个硬盘出现故障。我想在将其送去更换之前删除其中的数据。我试图使用dd if=/dev/zero of=/dev/sdXX
,但它在第一次写入错误时停止。我怎样才能用零覆盖驱动器,而忽略写入错误?conv=noerror
似乎只会影响输入文件。
答案1
尝试 ddrescue 而不是 dd - 它会更努力地处理错误
答案2
我使用 ddrescue 的参数来擦除驱动器/dev/sdb
(用 中的零填充/dev/zero
)并将输出记录到文件中log.txt
(替换sdX
为sdb
):
ddrescue --force /dev/zero /dev/sdX log.txt
答案3
如果你只是想擦除驱动器,请尝试德班
来自网站:
Darik 的 Boot and Nuke(“DBAN”)是一个独立的启动盘,可以安全地擦除大多数计算机的硬盘。DBAN 会自动彻底删除它能检测到的任何硬盘的内容,这使其成为批量或紧急数据销毁的合适实用程序。
答案4
绝对不是一个高级用户解决方案,但如果写入错误很少见,您可能只想在发生错误后手动继续。
理论上,你可以编写一些脚本来自动执行该操作,但这并不是那么简单,我宁愿编写一个工具来完成该操作,也不愿费心编写 dd 脚本。
seek=BLOCKS
skip BLOCKS obs-sized blocks at start of output