使用 ddrescue 仅粉碎磁盘的已救援部分

使用 ddrescue 仅粉碎磁盘的已救援部分
  1. 磁力驱动器出现故障。
  2. 我使用 ddrescue 通过地图文件恢复了大约 85%,但其余部分已被破坏,继续清理需要数年时间。
  3. 我可以退货换货。
  4. 我想先粉碎我的数据。
  5. 当我尝试写入它时,它可以在前几百 MB 内工作,但随后开始出现输入/输出错误,并且驱动器变得完全不可用(/dev/sdd 不再存在)。

那么是否可以使用第 2 项中的映射文件将随机数据仅写入驱动器的可恢复部分,而不尝试写入坏块?

答案1

手动的给你一个几乎正是你想要的例子:

ddrescue使用选项调用时--fill-mode,它在“填充模式”下运行,这与默认的“救援模式”不同。也就是说,在“填充模式”下ddrescue不会拯救任何东西。它仅填充从状态字符 from与 参数中指定的类型字符之一一致的infile块中读取的数据。outfilemapfile--fill-mode

[…]

填充模式mapfile已更新,以允许在中断或崩溃时恢复,但由于没有任何内容正在被救援,因此mapfile不会被破坏。状态行是唯一mapfile被修改的部分。

[…]

示例 2:仅擦除好扇区,保留坏扇区。这样,驱动器仍然会被测试为坏(即,具有不可读的扇区)。这是擦除故障驱动器的最快方法,并且将驱动器寄回制造商进行保修更换时特别有用

ddrescue --fill-mode=+ --force /dev/zero bad_drive mapfile

[强调我的]

唯一的区别是您想要写入随机数据,因此/dev/urandom而不是/dev/zero.

相关内容