Problem booting Vista after replacing second drive


I have Vista installed on my C: drive and I also have another 240 Gb secondary hard drive that I use for additional storage. I wanted to replace my 240 Gb HD with a new 640 Gb HD, but I've hit a snag. It seems that if I disconnect my old secondary hard drive, Vista will not boot. If I plug it back in, it'll boot just fine. AFAIK, no Vista files are on the second drive only data and applications, but it seems that Vista set up the boot record such that it has to see that D drive in order to boot. Looking at BCDEdit, I could see this:

Windows Boot Manager
identifier {9dea862c-5cdd-4e70-acc1-f32b344d4795}
device partition=D:
path \bootmgr
description Windows Boot Manager
locale en-US
inherit {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
default {8c82d3bf-15e7-11dd-9163-ab413e4e3dc0}
resumeobject {8c82d3c0-15e7-11dd-9163-ab413e4e3dc0}
displayorder {8c82d3bf-15e7-11dd-9163-ab413e4e3dc0}
toolsdisplayorder {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout 30

Windows Boot Loader
identifier {8c82d3bf-15e7-11dd-9163-ab413e4e3dc0}
device partition=C:
path \Windows\system32\winload.exe
description Microsoft Windows Vista
locale en-US
inherit {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
osdevice partition=C:
systemroot \Windows
resumeobject {8c82d3c0-15e7-11dd-9163-ab413e4e3dc0}
nx OptIn

Notice the entry for Boot Manager on drive D, even though there is no D:\bootmgr path on the actual drive. Does anybody know how to fix this? Can EasyBCD help?

Are you sure there's no boot folder and bootmgr on D: ?
Remember they're hidden files.
In disk management, is your D: drive flagged as "system" ? That's the flag that tells you where your boot files are.
Use folder options to unhide all system and hidden files, and if you can then see the boot files on D:
you need to do a "repair my system" / "repair startup" by booting from your Vista DVD after you've removed the D: disk. (do it as many times as needed till the C: disk boots unaided (probably 2 or 3).
Follow the instructions in the wiki.
Thanks kairozamorro and Terry.

So I figured out the problem. Terry, you are correct, there are hidden system files on the D drive so I copied bootmgr and the boot folder over to the C drive. Then I disconnected my D drive again and tried rebooting, no luck. So I stuck the Vista DVD in and booted into the command prompt from there and then I found my problem. The problem is that I am completely retarded and found out that I'd actually been unplugging the primary drive not the secondary :rage:.
Anyway, quick plug the primary back in and unplug the real secondary drive and no it boots just fine. Plugged in my new secondary and reboot, works great again and now I have masses of free drive space. :joy:
I think copying the bootmgr and boot folder were still necessary, so it's not a complete loss! BCDEdit for the boot manager now has device as "unknown" instead of D:. Is that likely to be a problem? Shoud I still do bootmgr /set {bootmgr} device partition=c: or doesn't it matter now? My fear is getting into an unbootable state if I mess with it while it's now working. I also still have a copy of bootmgr and boot on the new D drive since they were copied over with everything else. I assume I can delete them now?

Thanks again guys.
Which drive is marked "system" "active" ? That's the one that's doing the booting. Any boot files on any other partition will be ignored.
It doesn't matter which is primary or secondary (in IDE terminology), it's the BIOS boot sequence and the partition status flags which determine where you boot from.
Last edited:
It shouldn't be saying unkown, but if its working now, why break it?...

Let EasyBCD do the work for you instead. Make sure the second drive isn't plugged in in case EasyBCD tries to put the boot files back and than reset BCD settings under diagnostics.