Windows 10 – Moving from SSD (UEFI/GPT) to M.2 NVMe or SATA

clonegpartedm.2windows 10windows-installer

I am trying to move Windows 10 from a SSD to a m.2 NVMe 980 PRO. I have tried countless different ways to get it to work, but can't get my cloned partition running.

In this last attempt I even got Windows boot manager to run off of my m.2 NVMe, and it finds my clone. It is the second boot option. Selecting it will start a boot attempt; which goes into an automatic repair; which always ends up failing.

Booting from m.2 NVMe brings me now to this:

enter image description here

Bios Settings: BIOS MVMe is connected to via PCH SATA, and/or PCH PCIE. My first Windows 10 install DVD did not recognize my m.2 hard drive; but a newly made USB Windows install stick did.

Background: My original install is on a SSD; which boots in UEFI/GPT. I tried countless different ways to get Windows over to my m.2 — variations in copying over order; install order; used and deleted partitions; auto-repairs … (I spent well over 2 days on it … and I am about to try GRUB as boot loader — but do not think this is the problem.)

These are the steps I took to get to the above screen:

  • flashed an update to my motherboard's BIOS (msi motherboard X99A SLI PLUS MS-7885)
  • updated Windows 10 Pro to include the latest update (Windows see's m.2 SSD)
  • removed all hard drives but my m.2 ssd
  • installed (a clean install) Windows 10 onto m.2 ssd
  • tried to boot into new install — install runs OK
  • turned off system and added old SSD
  • booted into Ubuntu using USB key
  • used GParted to delete newly installed Windows partition from m.2 and cloned into it's place the Windows partition from my SSD (my older partition is smaller and fits inside the empty free space)
  • powered down and removed original SSD
  • tried to run that just as is … boot starts and wants to run a diagnose but ends up with a fail
  • re-installed Windows into the remaining open partition space
  • boot will now start into above Windows boot-loader; volume 4 boots and runs; but my old install (on volume 2) will not

When trying to run it I get this:

preparing automatic repair

diagnosing your PC

attempting repairs

Automatic Repair couldn't repair your PC

File D:\Windows\System32\Logfiles\Srt\SrtTrail.txt states:

Startup Repair diagnosis and repair log

Number of repair attempts: 1

Session details

System Disk = \Device\Harddisk0 Windows directory = D:\Windows AutoChk Run = 0 Number of root causes = 1

Test Performed:

Name: Check for updates Result: Completed successfully. Error code = 0x0 Time taken = 0 ms

Test Performed:

Name: System disk test Result: Completed successfully. Error code = 0x0 Time taken = 0 ms

Test Performed:

Name: Disk failure diagnosis Result: Completed successfully. Error code = 0x0 Time taken = 0 ms

Test Performed:

Name: Disk metadata test Result: Completed successfully. Error code = 0x0 Time taken = 109 ms

Test Performed:

Name: Disk metadata test Result: Completed successfully. Error code = 0x0 Time taken = 0 ms

Test Performed:

Name: Target OS test Result: Completed successfully. Error code = 0x0 Time taken = 32 ms

Test Performed:

Name: Volume content check Result: Completed successfully. Error code = 0x0 Time taken = 31 ms

Test Performed:

Name: Boot manager diagnosis Result: Completed successfully. Error code = 0x0 Time taken = 0 ms

Test Performed:

Name: System boot log diagnosis Result: Completed successfully. Error code = 0x0 Time taken = 0 ms

Root cause found:

Boot manager failed to find OS loader.

Repair action: File repair Result: Failed. Error code = 0x57 Time
taken = 1422 ms

Repair action: Boot configuration data store repair Result: Failed.
Error code = 0x490
Time taken = 31 ms



I am now suspect that there might be a driver missing in the cloned install; maybe Intel Rapid Storage Technology for Windows 10? (How would I be adding it to my clone?) Or is there maybe a better way to do this move?

This is what I found somewhere that hinted that this could be causing the problem:

You will need Intel Rapid Storage Technology for the Windows 10 setup to recognize the M.2 device. Once you download it, extract it onto your bootable device, then boot from the device.

Best Answer

You probably won't need IRST specifically, but yes, you do need some NVMe driver to be active. Windows 10 actually includes a "standard" NVMe driver already, but just as with SATA AHCI, if the driver isn't necessary for accessing the boot volume then it gets automatically disabled from the "boot" stage.

Immediately before cloning, run the command to activate the Windows built-in NVMe driver:

sc config StorNvme start= boot

I'm not 100% sure whether this will work, but in theory it should. (It used to work with StorAhci.)

Related Question