Clone a Windows Installation to a 3TB Hard Drive; MBR to GPT
I have Windows 7 Professional 64-bit installed on my desktop. Unfortunately for me and my wallet my hard drive is failing. I have purchased a 3TB hard drive as a replacement for my current 2TB drive. I would like to avoid as much hassle as possible in moving to this new drive so I would like to copy my current partition to the new drive using Gparted. The problem is that I suspect that my current partition is MBR, and I need GPT on my new drive since it is 3TB.
Can I simply copy the MBR partition onto the new disk and then convert it to GPT after the fact (can you even convert the type of a partition)?
Or would I need to somehow copy the contents of the partition into a GPT partition on the new drive?
How do I go about making this transistion?
Also, are there any issues I should be wary of booting to a GPT partition? If it matters, my motherboard is 1 year old as of May, 2012.
Edit: My motherboard is 1 day old. My old one does not have UEFI compatibility, so I decided to make an upgrade to Intel today given that I would need a UEFI motherboard to use my new HDD.
How much can I use a dying hard drive (bad sectors according to Hitachi Drive Fitness Test)?
I have assumed not at all, to be safe.
Edit 2: After two cloning attempts, nothing worked (direct cloning or cloning to an image). I just installed Windows fresh and then and copied everything I could. Honestly, after several days of stress with the cloning software, I would recommend this to anyone who has this problem in the future.
Solution 1:
Use clonezilla to make an image of your hdd then restore that image to your new drive and it would be as if nothing happened. http://clonezilla.org/
You'll have to boot clonezilla from a USB or CD in order to do this.
Alright given the new information I recommend you do the following:
- Partition your 3TB drive in half.
- Create the image using the software above while saving the image to the second half of the partition you just made. (Clonezilla will let you specify where you want to put the image)
- Restore the image to the first half.
- Once it seems everything is good, format the second partition then delete the second partition
- Extend the first partition to cover the entire drive.
Note: If you don't have enough space then you might have to remove some of your games then just install them after the image goes down.
I recommend just messing around with it till you get what you want, because as long as you have the original you'll be fine.
Solution 2:
None of the answers so far gave me all the info I needed to solve this problem. I solved it and I'm successfully running my old Windows MBR install on UEFI and GPT now.
- Connect only your target drive and run Windows 7 Setup in UEFI mode. You can do this by enabling UEFI in the BIOS and by using the DVD. It is possible to make a USB stick that UEFI boots, but the Microsoft tool will not make them so. Watch out for this.
- Install Windows 7 clean to your target drive. You can confirm you're in UEFI mode as 3 partitions (EFI, MSR, and Main) will be created.
- Connect your source drive and boot up an Ubuntu (or other linux) live CD/DVD/USB and use NTFSCLONE (from terminal with super user priv: 'sudo ntfsclone', syntax is easy to use from the help page) to copy your NTFS partition from your source drive and overwrite the main windows partition on your target drive. Watch out for the syntax of NTFSCLONE, it can have the target and source on the command line the other way round.
- Disconnect source drive and enjoy your old install on the new drive.
From what I can see, instead of running boot code in the disk start, EFI simply runs boot code on the EFI FAT32 partition in a predetermined location, this boot code then starts the Windows installation. As we overwrite one that was set up correctly, it starts our old one up instead.
It has taken me literally days of fiddling to figure this all out and now hopefully others wont have to.
(Other notes: on my Intel DP43TF I had to update the BIOS and set the BIOS to IDE instead of AHCI for the Windows setup. I switched it back to AHCI after putting my old install onto the GPT drive and all was well)
Tested and working!
Solution 3:
First you have to make sure that your mainboard supports UEFI boot. It may have to enabled in the BIOS.
The content of the partition itself is NTFS and has no difference between MBR and GPT. But the boot code needed for booting via UEFI in the partition may be different.
Furthermore the biggest difference is the ~100MB boot partition which is usually located right before the system partition. UEFI needs an additional partition.
You can try to create two 100MB partitions manually, then copy the system partition after it. Then boot the Win7 install CD and let it repair the boot process. This may work however I don't know (never tried it).
But I think it would be easier to start a new Windows 7 installation and let it partition the disk automatically. While installation you can reset the computer and afterwards overwrite the incomplete installation with your old one.
Recommended UEFI-Based Disk-Partition Configurations
Solution 4:
Another possibility is to use robocopy. Since UEFI is only needed to use the drive as a boot drive, you can mount it with any 64-bit Windows 7. This method copies the files from the old disk to the new after the new drive has been partitioned.
- Partition the 3TB disk with Windows
- Insert both the original and new drives into another computer running 64-bit Windows 7
- In an (elevated?) command prompt, run the command
robocopy F: G: /mir /zb /copyall /dcopy:t /sl /xd "System Volume Information" /xf hiberfil.sys pagefile.sys /xj /r:0 /w:0 /mt:2 /log:robocopylog.txt
where F: is the source drive and G: is the destination drive. Refer to the documentation of robocopy for the flag definitions. - Done.
I have not tested this yet, and I may end up going with Peter Maxwell's answer, but I don't want to be the forum post in 2 years that someone finds and is dissatisfied with the lack of answers.
This answer is based on the SevenForums.com thread that I started.
Solution 5:
I upgraded from a 2T MBR drive to a 3T GPT one (each with a Win 7 OS partition & a data partition). The comments here gave me really great help in transferring the old Win 7 MBR partitions to the new GPT ones, especially the boot partition. Just to share here what I did so that it would take less time for others with the same need:
I had both drives connected throughout, plus a USB thumb drive and a DVD drive
- Make the USB thumb drive bootable with Parted Magic (reference: http://www.makeuseof.com/tag/how-to-clone-your-hard-drive/)
- Take the Win 7 64-bit setup DVD (or burn one from iso image available on the net), set the PC's BIOS option (in my case, press F12 at start up) to boot the Win 7 setup DVD in UEFI mode
- Do a clean installation of Win 7 on to the new 3T disk (no need to worry about the settings as they'll be overwritten later) - Win 7 will create 3 partitions automatically under GPT
- Restart and set the BIOS option to boot the USB drive into Parted Magic (use x386_64 platform)
- Using Partition Editor, reduce the Win 7 partition to the size needed and create a new data partition with the vacated space
- Using Clonezilla, clone the old MBR Win 7 boot partition into the new GPT Win 7 boot partition
- Do the same with the data partition
- Disconnect the old 2T drive (optional: to avoid drive letter confusions), set the BIOS option to boot the new 3T drive in UEFI mode
- When Win 7 reports error with the drive, follow instructions on screen to go along with "System Recovery" > "Startup Repair" using the Win 7 DVD - the problems will be fixed automatically by Win 7
- Reboot and allow the system to go through chkdsk - the new drive is ready with exactly the same two partitions and everything transferred from the old drive
Hope this helps - it worked for me!