4

I've used dd to clone hard drives before using 'dd' and a live cd, but have run into a problem.

The issue:

dd fails with an "Input/Output Error" on /dev/sda3 , even though windows "check disk" (chkdsk) says it's ok.

Context:

  • Trying to replace my laptop hard drive w/ a faster one of the same size
  • Laptop has NTFS on a 320gb hard drive
  • Booting into knoppix
  • Knoppix recognizes 'original' drive(/dev/sda)
  • I am using a usb connection for ‘new' drive (irrelevant, but just an fyi)
  • Knoppix recognizes the usb drive as /dev/sdb
  • Using dd, as follows:

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

  • `dd gives the I/O error above at 82Gb (out of 320Gb)

  • I then tried checking each partition as follows and found it failed on /dev/sda3:

    dd  if=/dev/sda1 of=/dev/null
    dd  if=/dev/sda2 of=/dev/null
    dd  if=/dev/sda3 of=/dev/null 
    
  • I have ran windows xp chkdsk on the offending drive in both "find only" and "find and fix" mode and it reports no errors

Question

How can I find and fix the error on my original hard drive partition (i.e. /dev/sda3) so that dd reads it successfully?

Thor
  • 4,043
user31575
  • 371

3 Answers3

3

Use ddrescue for that, it's able to read damaged disks.

And chkdsk probably won't find the issue because it only does basic checks of filesystem integrity; by default, it won't check all the partition space for read errors caused by damage.

2

I ran into the same problem and my OpenSUSE livecd didn't include ddrescue or Clonezilla. However, when I checked out the dd manual, I discovered that there was an option "conv=noerror" that allowed dd to continue past the I/O error.

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

To copy data to different HDD attempt use special tools. Norton Ghost (commercial) or Clonezilla (opensource) http://clonezilla.org/