Assuming that the system still works fine when the original drive is reinstalled (does it?), then you can clone it to a new drive of the same or larger size easily with Linux.

Get a Linux LiveCD -- Eg. a Ubuntu Live/Install disc -- and boot from that with both hard drives cabled in.

Open a terminal window, and use sudo bash to gain full admin privileges within that window.

Now, figure out which drive is which: hdparm -I /dev/sd[ab]
The output from that ought to show tons of data for both the old and new drives, one of which will be /dev/sda, and the other /dev/sdb.

Make certain you know which is which, and ask again here if in any doubt.

Then, clone the drive: cat olddrive > newdrive
replacing olddrive in the command with /dev/sda or /dev/sdb as appropriate, and replacing newdrive with the other one.

This will take a while, so wait for it to finish.
Then do this to shutdown the system afterward: sync ; halt -p

If the new disk is larger than the old one, you'll want to resize the Windows partition (expanding it) after first proving that it boots and runs fine in the original amount of space.

That same Ubuntu LiveCD can be used to do the resize, as can other programs available.

Cheers


Edited by mlord (09/09/2008 17:41)