[Guide] How to migrate Windows 7 64bit boot drive from MBR SATA to UEFI NVMe without data lose


This guide may also work for Win8/Win10 or other OS.


It’s a pain to reinstall the OS and all the programs, especially if your old OS is working fine and you don’t want to upgrade or refresh your OS in the near future just for the speed improvement from SATA to NVMe SSD drive.
I have a working Windows 7 64bit desktop PC as my main “Server”. After I got my NVMe SSD, I decided to just migrate the boot drive to it without reinstalling everything.
The plan is, first, convert your boot drive from MBR to GPT, then clone it to NVMe drive.


Although I have tested myself and succeeded the first try, there is a risk that you cannot boot after converting disk from MBR to GPT. So make sure you have backup everything before going to the next step! I recommend Ghost to clone your boot drive to a different drive.

What you need:

SATA boot drive with Windows 7 64bit SP1
NVMe SSD drive
Motherboard with latest or modified BIOS, which can recognize NVMe SSD. (Please check Fernando’s Guide if you need)

EASEUS Partition Master 12.9
Ghost (or any other clone software)
Hotfix “Windows6.1-KB2990941-v3-x64.msu” from Microsoft. Check Here

1. Install your NVMe SSD and boot to windows 7. Make sure your Windows can recognize your NVMe drive. If not, you need to install the windows hotfix.
“Windows6.1-KB2990941-v3-x64.msu” works for me.

2. Install “EASEUS Partition Master 12.9”
Convert your boot drive from MBR to GPT. A quick guide is Here

After the conversion, EASEUS will prompt you to reboot and change BIOS boot option from Legacy (MBR) to UEFI. If you boot without the change, you will get a boot error message right away.

3. Change BIOS boot option from Legacy (MBR) to UEFI and reboot.
EASEUS will kick in before loading the Windows to finish the conversion. I got an error message from EASEUS and I ignored it and continue. At the second time reboot, CHKDsk kicked in. I just let it complete the checking with no error.

4. Windows 7 now can boot on GPT drive in UEFI mode. However, it’s still on SATA SSD.

5. Clone the boot drive from SATA SSD to NVMe using Ghost disk to disk clone function.

After the cloning, disconnect you SATA drive and you need to change the BIOS boot option to “Windows Boot manager”
(I chose the NVMe drive directly and it didn’t work.)

That’s it! Hopefully you can migrate your boot drive successfully too!

PS: Special thanks to Fernando for his great guide and kind help!

@shawn :
Thank you very much for having written and published this guide, which is now “stickied”.
Although I personally recommend to do a clean install of the OS, when the user is going to change the system drive and the data transfer protocol simultaneously, I know, that a lot of users were already waiting for a guide like yours.

My tip: Since your guide should be usable with Win8 and Win10 as well, it may be a good idea to mention this and to customize the thread title.

Thanks again!
Dieter (alias Fernando)

Thank you, Fernando! I only tested it on my Win7 system. Theoretically, it should work on other Windows OS.

i know this is an older post but i want to note for windows 10 users looking to convert to gpt from an old upgraded mbr system like my self that windows 10 has a built in tool to convert an mbr install to a gpt configuration with no data loss https://docs.microsoft.com/en-us/windows…ment/mbr-to-gpt

Here’s how I did same, in case it helps anyone (Clean install, or using current install, either works)
Installing Clean Win7x64 on M2.2280 PCIe Gen3x4 SSD A-DATA SX8200 Pro

Mainstream support for Win7 has recently ended, but I wanted to add my experience with this operation as it was somewhat different than the OP’s process, in that the migration to the new system was completed before moving the OS to NVME. It has the advantage that it does not interrupt your usage of the computer being migrated, but as such it requires a spare MBR-formatted storage drive (preferably an SSD) to shuttle Windows to the new system.

As the OP said, there are multiple backup utilities available to accomplish this; I used AOMEI BackUpper Pro (shareware) which has a free 30-day trial. It allows easy cloning of the OS with options to ensure correct SSD data alignment, and “Universal Restore” which will enable Windows to boot on dissimilar hardware. Their freeware PXE Boot Tool utility lets you boot to a provided image over the network, and may also come in handy.

The main points are as follows:

1. Connect a temporary drive to your system, ensuring that its capacity is greater than the space in use on your OS disk.
2. Run BackUpper and use the “System Backup” function to dump your current OS to an image file (do not store it on the temporary disk!).
3. Again in BackUpper, use the “Restore” function to write this OS image onto the temporary drive, ensuring you enable the Universal Restore option.
4. Shut down, then reconnect the temporary drive to the new system, where the NVME drive is already connected.
5. Boot the new system to the AHCI/“Legacy” bootloader found on the temporary disk. Your Windows installation should now load and install the new hardware devices, if it can.
6. Fix compatibility issues and clean up old drivers.
7. Install the Microsoft hotfixes for NVME**, and any other OEM’s driver you wish to use. After this step the NVME drive should be recognized and active in Device Manager.
8. Open Windows’ Disk Management console and ensure the NVME drive is Initialized as a GPT disk (see this article on AOMEI’s site for various methods).
9. Run BackUpper on the new system, and perform the System Clone function with the NVME drive as the destination.
10. Shut down, disconnect all other bootable devices, and power on the system again. Unless there is a problem, Windows should now load from the NVME disk.

For me, this meant using a PS2 keyboard to log in and install the AMD Ryzen platform drivers which are needed to support USB. I then uninstalled the Intel USB drivers from the old system, and installed WUFUC to remove Windows’ nag screen about not being compatible with my CPU.

** Windows6.1-KB2990941-v3-x64.msu (adds native NVME support)
** Windows6.1-KB3087873-v2-x64.msu (bugfix for KB2990941 causing BSOD 0x0000007E)

Additional info:

- Booting to the temporary disk on the new system may require you to enable CSM, disable Secure Boot, etc. in your BIOS/UEFI settings.
- I have seen Windows 7 installations where removal of certain hardware (usually an optical drive) resulted in the OS refusing to boot… Presumably this should not happen due to the Universal Restore feature, but if
  it does, simply boot to the temporary drive on the OLD system first, and Uninstall the hardware using Device Manager.
- Note that on many boards connecting an NVME drive will disable specific SATA ports. You’ll need to connect your temporary drive to a working port.
- After the above steps, you may need to change some BIOS/UEFI settings to ensure a successful boot - generally, enabling and prioritizing “Windows Boot Manager” in the boot order selection.