dd 克隆硬盘:“chkdsk”显示正常,但出现输入/输出错误

dd 克隆硬盘:“chkdsk”显示正常,但出现输入/输出错误

在使用“dd”和实时 cd 之前,我曾使用 dd 来克隆硬盘,但遇到了问题。

问题:

dd 在 /dev/sda3 上失败并出现“输入/输出错误”,即使 Windows“检查磁盘”(chkdsk)说一切正常。

语境:

  • 尝试用相同大小的更快硬盘替换我的笔记本电脑硬盘
  • 笔记本电脑有 320GB 硬盘,采用 NTFS 文件系统
  • 启动进入 knoppix
  • Knoppix 识别“原始”驱动器( /dev/sda)
  • 我正在使用 USB 连接“新”驱动器(无关紧要,仅供参考)
  • Knoppix 将 USB 驱动器识别为/dev/sdb
  • 使用dd,如下所示:

    dd if=/dev/sda of=/dev/sdb

  • `dd 在 82Gb 处给出上述 I/O 错误(总共 320Gb)

  • 然后我尝试按如下方式检查每个分区,发现失败/dev/sda3

    dd  if=/dev/sda1 of=/dev/null
    dd  if=/dev/sda2 of=/dev/null
    dd  if=/dev/sda3 of=/dev/null 
    
  • 我已在“仅查找”和“查找并修复”模式下对有问题的驱动器运行了 windows xp chkdsk,并且它未报告任何错误

问题

我如何才能找到并修复原始硬盘分区(即 /dev/sda3)上的错误,以便 dd 成功读取它?

答案1

使用救援为此,它能够读取损坏的磁盘。

而且 chkdsk 可能无法发现问题,因为它只对文件系统完整性进行基本检查;默认情况下,它不会检查所有分区空间是否存在因损坏而导致的读取错误。

答案2

我遇到了同样的问题,我的 OpenSUSE livecd 没有包含 ddrescue 或 Clonezilla。但是,当我查看 dd 手册时,我发现有一个选项“conv=noerror”,它允许 dd 在出现 I/O 错误后继续运行。

dd conv=noerror if=/dev/sda of=/dev/sdc

答案3

要将数据复制到不同的硬盘,请尝试使用特殊工具。Norton Ghost(商业)或 Clonezilla(开源)http://clonezilla.org/

相关内容