My parents bought a new hard drive for a laptop that I've owned for several years. It's much larger than the current one, so I plan on splitting it up to dual boot it with Ubuntu.

I have no problem with partitioning a drive (I always keep a LiveCD handy), but my question is this: how can I go about moving the existing partition to the new drive? This is a laptop, so I can't simply plug the new drive into another slot.

Also, even if I manage to move it, will Windows still work on the new drive in a larger partition? I've had this laptop for quite a while, and I've lost the recovery discs that came with it a long time ago. I also have a lot of software without CDs to reinstall them with. This makes not reinstalling Windows a high priority.

In case it helps, both drives use 2.5" PATA, and I have a 1 TB external drive available if it's needed.

  • Too bad you can't just reinstall Windows - that would make things a lot simpler! – Jared Harley Mar 16 '10 at 5:04
  • It seems I've forgotten about this question. I ended up just going with a fresh install of Windows 7, because moving the partition became far more trouble than I thought it worth. Thanks for the advice anyways guys, because I may have to do this again someday. – Nick Meharry May 30 '10 at 0:57

Moving your Windows XP installation is actually quite simple. To move your Windows image, I would recommend checking out DriveImage XML.


DriveImage XML can make a live, working copy of your Windows drive from inside Windows, and then restore it to the new drive.

To make the new hard drive bootable, you'll need to follow these steps from DriveImage's FAQ:

Q. How do I restore an image back to a working state?

A. Note that you must put the image into an existing partition. If necessary create a new partition with Windows Disk Management first. You do not need to format the drive. The size of the partition you create will determine the size of the drive - for example if you create a 20GB partition and then restore a 10GB size image to it, the size of the drive will still be 20GB.

To start Windows Disk Management click:

Start>Control Panel>Administrative Tools>Computer Management>Disk Management

If Windows Disk Management does not start, you can use the following commands from the command prompt:

net start dmserver
net start dmadmin

To restore an image to an existing partition, click Restore in the main program window.

Note on boot drives: If you want your computer to boot from the new partition you must set it to "active" with Windows Disk Management.

Once you have your new drive with a working copy of Windows, you can resize the partition and add a new partition to it for Ubuntu.

If you're familiar with working with LiveCDs and Linux, you may want to take a look at my answer here involving Clonezilla.

  • The problem for me, then, is how to mount both drives simultaneously. As far as I can tell, my laptop only has room for one drive. Is the PATA port on a 2.5" HD different from a 3.5" HD? If so, I could probably plug them both in a desktop computer and boot a LiveCD there. – Nick Meharry Mar 16 '10 at 5:17
  • I'm almost positive they're different. I've moved laptops onto new drives using a 2.5" PATA to USB external enclosure (newegg.com has a lot of options). – Jared Harley Mar 16 '10 at 5:37
  • 1
    You also mentioned your 1TB external - you could always use the Clonezilla LiveCD, image the drive and put it onto your external, switch out the harddrives and reload the LiveCD and image it back to the new drive. You can also make a Windows "LiveCD" (known as WinPE) with DriveImage on it - same idea as before: use DriveImage, store the image on the 1TB external, boot off of the CD to WinPE, and restore to the new harddrive in the computer - the instructions for making a disc are here: runtime.org/peb.htm – Jared Harley Mar 16 '10 at 5:40
  • I'm going to go ahead and try using the external drive. I'm downloading the CloneZilla CD, and I'll update here with details whether or not it works. – Nick Meharry Mar 16 '10 at 5:50
  • I never got it to work, so I just did a fresh Windows 7 install (see my comment to the question above). Thanks for the help anyways. – Nick Meharry May 30 '10 at 0:58

use dump (linux) and windows boot tools


I used external SATA adapter which I bought before the second hard drive.

It has also turned my old SATA internal hard drive into an external USB drive.

If you don't have additinal adapter that you can connect to the laptop, you should use other computer and network or use that external HDD for temporary storage (remember about security in that case, ALL laptop data will appear there, you probably will want to shred it later)

Moved Windows should work fine (although unlike GNU/Linux I can't boot it from externalized HDD) if partition table/partitions order/type/identifier are the same. If may also work if you copy everything filewise instead of blockwise.

If partition order or some things has changed and Windows fails to boot, you need special recovery measures. In this case [after you fix boot.ini] it will boot to the Welcome screen, but log off any user just after logging them in. Here are recovery steps for WinXP:

  1. Point boot.ini to the correct partition.
  2. Using chntpw from Linux change the the path to "userinit.exe" in SOFTWARE registry hive (look for instructions somewhere or ask me if questions) to the relative one (without drive letter).
  3. Boot up windows and fix system drive letter (also using registry editor)
  4. [Change userinit.exe path back to absolute if you want]

If you dualboot with some Linux you may do the recovery in VirtualBox to avoid a lot of unnecessary reboots.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.