1

So I had 250GB SATA SSD (called Old disk from here onwards), which had C drive on it, it was MBR, set as active and bootable. Win10 was installed on it.

Now I have bought a 500GB NVME SSD (called New disk from now). I was not willing to do a disk clone since I wanted to get rid of the clutter that I had collected over years on the old disk. So I installed fresh Win10 on the new disk.

All went fine and I'm now booting from the new disk. The old disk is still attached and I now want to remove it. All of a sudden I found that although I'm booting from new disk, the old disk actually holds the bootloader and that my old disk's first partition is set as active.

What do I need to do to move my bootloader to new disk, so that I become completely independent of the old disk?

A few things:

  • The old disk is MBR, whereas the new disk is GPT.
  • I have tried things like BCDEdit and AOMEI Partition Assistant. The first one while has got an option to copy boot record to a disk, when I ask it to copy it to C drive (new disk), it tells me that I can't copy boot record to a logical disk and must select a primary partition. AOMEI on the other hand shows "Set Active" option as disabled for all my partitions, both old and new.
  • I do have a Recovery partition (and two other named *) on my new disk immediately before the C partition.
  • I have tried built-in Disk Management tool as well. "Mark Partition as Active" option is disabled here too.
  • I really really don't want to reinstall Win10 unless it is my last option. Takes a lot of time which I don't have right now.

So where do I stand? Is there a safe way of moving boot record to new disk?

Edit

Here is the screenshot of Disk Management tool:

enter image description here

Disk 0 is my NVME 500GB (new disk). Disk 1 is 250GB SATA SSD (old disk). You can ignore Disk 2 (that's a 2TB HDD, used just as a data store).

2
  • Provide a screenshot of Disk Management by editing your question.
    – Ramhound
    Mar 11, 2019 at 12:45
  • @Ramhound: Added a screenshot.
    – dotNET
    Mar 11, 2019 at 13:00

1 Answer 1

1

Several problems with your question:

  • "Active" is not a global setting – it is a per-disk setting. When your BIOS chooses to boot from disk 1 (due to the BIOS "boot order" setting), the MBR boot record on that disk looks for an "active" partition on that disk. Other disks are not checked at all.

  • Everything above only applies to BIOS firmwares. You've installed Windows on a GPT-partitioned disk and you have an "EFI System Partition", which means you're using UEFI firmware mode. UEFI has a completely different boot mechanism – it doesn't even have the concepts of "boot record" or "active partition", so trying to copy the MBR boot record as-is just plain doesn't make sense in your situation.

UEFI keeps boot information in two places: the bootloader is stored as a regular .efi file in the "EFI System Partition", and the firmware stores its full path and the partition ID in the NVRAM as a "boot entry". (If you want, you can use bcdedit /enum firmware to list the UEFI boot entries from NVRAM, or mountvol /s to look inside the current EFI System Partition.)

So what you should do is:

  1. Make sure the firmware is set to native UEFI boot mode (or at least hybrid UEFI+CSM mode).

  2. Remove the old disk and check whether the system still boots. (You didn't mention whether you've actually tried this or whether you've stopped after looking at the partition list.)

  3. If the system doesn't boot, reboot it from the Windows 10 install disk (making sure that you're still booting it in UEFI mode), access the recovery console (the one from ShiftF10 will do the job), and reinstall the UEFI bootloader using bcdboot.

    If the install disk recovery console shows your main "WIN10" partition as C:, use:

    bcdboot c:\windows /f UEFI
    

    (The path tells bcdboot where to copy the necessary files from; it'll find the destination EFI System Partition automatically by default.)

3
  • Thanks. Makes perfect sense. And yes, I'm in full UEFI mode. Also correct that I haven't tried booting with the old disk disconnected. I was actually going to re-partition/re-format my old disk from within the fresh Windows 10 (NVME), but was struck with the idea that it may not boot the next time because the bootmgr file resides on the old disk. I'll try booting with old disk disconnected and then bulldoze it. Thanks again.
    – dotNET
    Mar 11, 2019 at 17:27
  • The bootmgr file is on the new disk as well – except it is called \EFI\Microsoft\Bootmgfw.efi and is stored on the EFI System Partition rather than the Windows partition. Mar 11, 2019 at 18:38
  • Successfully wiped my old disk. The new disk is still booting without any issues. Thank you for the input.
    – dotNET
    Mar 12, 2019 at 6:48

You must log in to answer this question.

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