22

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.

2

7 Answers 7

6

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:

  1. Partition your 3TB drive in half.
  2. 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)
  3. Restore the image to the first half.
  4. Once it seems everything is good, format the second partition then delete the second partition
  5. 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.

7
  • Since I don't have 2TB of spare space, I would need to do disk-to-disk and I'm not sure that it is possible to clone an MBR partition to a GPT partition directly. @Robert 's idea of partitioning first and then copying the installation seems like what I should do. Jul 4, 2012 at 21:17
  • How much space are you using on the 2TB drive?
    – imtheman
    Jul 4, 2012 at 21:22
  • Around 1.2TB. Mostly Steam games so I can redownload if necessary, but there are also tons of photographs (RAW format, so fairly large) which are not currently backed up anywhere (my pc is kind of a backup for my laptop since it has a larger drive). Jul 4, 2012 at 23:38
  • I made some edits to my answer. I hope that helps you.
    – imtheman
    Jul 5, 2012 at 5:57
  • 1
    If I had the rep, I'd upvote this answer because it really is good. I also got on SevenForums.com and asked a more refined version of my question. After looking around I kinda found my own answer and got some input on it. I'm gonna add that as an answer too for future internet people to find when they search for this. Jul 5, 2012 at 6:41
17

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.

  1. 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.
  2. 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.
  3. 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.
  4. 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!

3
  • At step 4, Windows 7 got confused with drive letters and thought my install was not genuine as a result. Fortunately, from the resulting black screen, one can simply CTL-ALT-DEL, start the task manager and from there execute regedit and do the required modifications on HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices. Reboot and voila!
    – zarkdav
    Mar 11, 2013 at 7:15
  • Great answer, I just got this working under Windows 10.
    – chue x
    Aug 8, 2015 at 19:02
  • Just finished moving my Windows 10, thanks for the detailed answer. I used two alterations - Step 1: I couldn't get my UEFI to boot the pendrive so I created a 8GB FAT32 partition on the target drive, copied the files from the Win10 installer DVD to it and booted that. Step 3: used GParted live CD to avoid command-line target/source madness.
    – Csq
    Nov 23, 2016 at 22:49
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.

  1. Partition the 3TB disk with Windows
  2. Insert both the original and new drives into another computer running 64-bit Windows 7
  3. 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.
  4. 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.

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

4
  • The last time I did something like this, I used Gparted to clone the entire drive. What is the best way to copy just the file contents in their entirety? Live linux? Boot off of the dying drive with the other mounted? Jul 2, 2012 at 0:34
  • 1
    Never try to copy a Windows 7 installation file by file. This will break all symbolic links. An imaging/cloning tool that can handle all NTFS specifics would be best. If you don't know which on to take you can try the one integrated in Win7.
    – Robert
    Jul 4, 2012 at 11:49
  • I know I can clone the partition with clonezilla, but that, I suspect, would make an MBR partition on the new disk, which would be impossible to convert to a GPT, as far as I know. Windows haa a tool for cloning to a new disk? Jul 4, 2012 at 21:20
  • Partition the disk via Win7 as GPT and then clone only the partition.
    – Robert
    Jul 5, 2012 at 7:28
3

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

  1. Make the USB thumb drive bootable with Parted Magic (reference: http://www.makeuseof.com/tag/how-to-clone-your-hard-drive/)
  2. 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
  3. 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
  4. Restart and set the BIOS option to boot the USB drive into Parted Magic (use x386_64 platform)
  5. Using Partition Editor, reduce the Win 7 partition to the size needed and create a new data partition with the vacated space
  6. Using Clonezilla, clone the old MBR Win 7 boot partition into the new GPT Win 7 boot partition
  7. Do the same with the data partition
  8. Disconnect the old 2T drive (optional: to avoid drive letter confusions), set the BIOS option to boot the new 3T drive in UEFI mode
  9. 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
  10. 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!

0

2019: Outline for Win7 MBR partition copy to a new GPT bootable disk.

The steps do not apply to Win8, Win8.1, Win10 because of extra partitions during install. Modified steps do apply to 8/8.1/10, but undocumented here.

  1. Assume the Win7 disk boots. Required is a Gparted Live CD/flashdisk.

    Don't have such a CD or flashdisk? Then: Search for "gparted live"; follow instructions for a bootable CD or flashdisk.

  2. Enter the computer UEFI settings (BIOS settings). Select UEFI. On older computers, set UEFI as the preferred first boot preference.

    First, try hammering DEL key on boot to enter settings. Can't enter settings? Search "UEFI" plus a string identifying your computer.

  3. Assumed: The Win7 disk and the new (GPT) are connected during boot. Please: Disconnect all other disks. Boot the Gparted Live CD/flashdisk.

  4. Gparted: Partition the DEVICE (new disk) as GPT from Gparted top menu.

  5. Gparted: Create a 100MB fat32 EFI partition at the start of the GPT disk. Don't add any more partitions to the GPT disk.

  6. Gparted: Select Copy the Win7 MBR data partition from the PARTITION menu. Fear not, this changes nothing on disks.

  7. Gparted: Click on the GPT disk and find the unallocated space. Click on it. Select Paste from the PARTITION menu into GPT disk unallocated space. Fear not, nothing is changed on disks.

  8. Gparted: Double-check the target unallocated partition to be on the GPT disk. Then click on EDIT then APPLY to create the copy on the GPT disk.

  9. Exit Gparted Live when it finishes the copy. Expected: Remove the Win7 disk and reboot: see Step 11. However, if you don't have a Win7 install CD/flashdisk, then use Win7 to create it before removing the Win7 disk.

  10. Follow Microsoft steps to re-install the UEFI boot settings into the 100MB EFI partition and into the Win7 data partition. Requires a Win7 install CD/flashdisk. Depending on the computer hardware (i.e., old ASUS), the UEFI settings might have to be reverted to preferring MBR boot in order for the CD/flashdisk to boot. A Win7 install disk may only boot as MBR, but this fact does not prevent fixing UEFI.

    Important: Remove the Win7 disk from the computer. The next steps assume only the new GPT disk is in the computer. https://answers.microsoft.com/en-us/windows/forum/windows_7-system/repair-windows-7-efi-boot/082e3efd-b3fc-4d24-b223-b8c42aa738d4

0

Due to Windows 7 falling out of support, I recently cloned my MBR Windows 7 to a GPT SSD, then upgraded it to Windows 10. It might look like there are a lot of steps below, but really the task was simple after finding the right partitioning tool. The steps were:

  1. Initialise the new disk as GPT from within Windows using the disk management tools
  2. Buy a partition editor that advertises cloning system partitions from MBR to GPT. Not all of them do, and the free versions don't seem to clone system partitions. I found two options, one for $120/year, the other for $50 one off payment (I chose the cheaper one - AOMEI).
  3. Run the clone task, the partition tool will reboot to complete it.

  4. After the clone, Windows boots as normal. Shut down.

  5. [OPTIONAL - Physically take out the HDD with the original Windows 7 from the PC, leaving only the new GPT disk - this was so if Windows booted I'd know everything worked right, and to prevent my known good copy being messed up by changing boot options around]
  6. Enter legacy BIOS on the next boot and change to UEFI. Check the boot options - in my case I couldn't specify the SSD directly (I've got an old laptop and using an msata slot intended for a cache drive) but UEFI found it without hiccups.
  7. Boot normally, Windows 7 boots from the GPT disk as Windows associates UEFI with GPT
  8. [OPTIONAL - Turn off and put the old MBR disk back in, reboot and check, yes the MBR disk is now listed as drive D: and wasn't used to boot.]
  9. [OPTIONAL - Download the Windows 10 media creation tool and run it to upgrade for free. In my case, an in place upgrade that kept my Windows 7 programs and settings.]

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .