I purchased a larger hard drive (~750 GB)) for my laptop and want to clone my current laptop drive (~320 GB) to the new one. The new drive is connected to the laptop via usb - I can mount it and read/write to it. This is what I did, but it didn't seem to work out...

1. Boot laptop using latest Knoppix
2. umount both /dev/sda(old drive, internal to laptop) and /dev/sdb (new drive connected via usb)
3. I was going to use dd, but read that dd_rescue is a little better (read error handling, reporting progress), so I installed that and fired it iup

knoppix@Microknoppix:~$ sudo ddrescue -f -n /dev/sda /dev/sdb


Press Ctrl-C to interrupt
rescued:   320072 MB,  errsize:       0 B,  current rate:   29753 kB/s
   ipos:   320072 MB,   errors:       0,    average rate:   29513 kB/s
   opos:   320072 MB,     time from last successful read:       0 s
Finished                  

4. I thought, time to use gparted to expand the Linux partition for my new drive to the full size, and install the new drive.....but wait, there are problems!

knoppix@Microknoppix:~$ fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x81d6785f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1           5       40131   de  Dell Utility
/dev/sda2   *           6        1918    15360000    7  HPFS/NTFS
/dev/sda3            1918        7017    40963092+   7  HPFS/NTFS
/dev/sda4            7018       38913   256204620    5  Extended
/dev/sda5   *        7018       37615   245778403+  83  Linux
/dev/sda6           37616       38913    10426153+  82  Linux swap / Solaris
Note: sector size is 4096 (not 512)
Warning: ignoring extra data in partition table 5
Warning: ignoring extra data in partition table 5
Warning: ignoring extra data in partition table 5
Warning: invalid flag 0xbfbb of partition table 5 will be corrected by w(rite)

Disk /dev/sdb: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 11400 cylinders
Units = cylinders of 16065 * 4096 = 65802240 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x81d6785f

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1           5      321048   de  Dell Utility
Partition 1 does not start on physical sector boundary.
/dev/sdb2   *           6        1918   122880000    7  HPFS/NTFS
/dev/sdb3            1918        7017   327704740    7  HPFS/NTFS
/dev/sdb4            7018       38913  2049636960    5  Extended
Partition 4 does not start on physical sector boundary.
/dev/sdb5   ?       82628      130208  3057478824   48  Unknown
knoppix@Microknoppix:~$

It appears that dd-rescue did what I expected it to do....copied sda to sdb bit by bit. I am not sure what the warnings are for sda, but it looks like dd_rescue did what it was supposed to do. However, What do I do about the errors on sdb? GParted does not recognize the partition table for sdb, and reports 698 GB of unallocated space.

Thanks for any suggestions you may have to solve/explain what is going on!

Mark