Drive:Activated logo
hi there!

I see you've stumbled on to my humble home on the net, Drive:Activated. My name's Sam, I'm an ambitious and driven uni student, residing in Melbourne, Australia, wanting to make my mark on our world. This is my site, which is mainly just my blog and some other bits. There's no definite theme to my blog, just anything that interests me, and currently that's web trends, startups, ideas and cool stuff. Check it out, leave me a comment, click on 'Who is this?' to find out more about me, or drop me a line by clicking on 'Let's Talk'. Hope you enjoy it!

My signature

Content sign

Vista dual-booting "/ntldr missing or corrupt" fix

   Filed under: , , , ,    
I've been fiddling with my computer recently, trying to get it to all work nicely after I inherited some new parts. I have a seperate partition on my hard drive for the purposes of testing Windows Vista RC1. After having to repair my XP installation due to a change in motherboard chipset and CPU (AMD to Intel), I realised I could not boot into Vista anymore - the Vista Windows Boot Manager no longer came up.

To fix this, I decided to try the Vista recovery process. It worked, restored the Windows Boot Manager, but I was no longer able to boot into Windows XP nor Windows Vista. Attempting to select the "Earlier version of Windows" gave me a message that essentially told me /ntldr was "missing or corrupt". Choosing the Windows Vista option gave me a BSOD, which was understandable given Vista didn't have the drivers setup for the new motherboard and CPU. So I had to reinstall Vista from scratch, as I could not find an option anywhere within the recovery environment to repair my installation (system and image restores were useless as I needed Windows to re-detect all my hardware again). Luckily it was just a testing OS and there was nothing important on it. It does make me wonder though, what should I have done? Maybe it was fixed before Vista RTM-ed.

Anyway, reinstalling Vista gave me access to Vista again, but still, I could not get into Windows XP; the same message appeared.

After some digging around the internet, I found the solution:

  1. Boot up Windows Vista, and navigate to Start (the Vista orb)-> All Programs -> Accessories -> Command Prompt, then right-click on Command Prompt and select Run as Adminstrator. Either enter your password if needed or just press continue. The new window should be titled "Administrator: Command Prompt".
  2. In the command prompt, type in bcdedit /enum active and press Enter.
  3. Locate the sections titled "Windows Legacy OS Loader". Note the identifier (all of them if there is more than one matching section); my identifier was {ntldr}. If the problem is the same as mine, the device property should be currently set to unknown.
  4. Use the command bcdedit /set (ID) device boot to change unknown to boot, that is, the partition that is active and is booting from. By default, Vista does not change which partition boots, so if your XP partition is set as active, it will add the new booting code to that. Therefore assuming your XP partition is set as the active (boot) partition, the above command will be correct. Apply the above command for each identifier, replacing (ID) with the identifier itself, including the curly braces, e.g. bcdedit /set {ntldr} device boot. Press Enter after each one - it should report that the operation was completed successfully.
  5. Rerun the command in step 2 to check that the changes were applied correctly.
  6. Test!

That should fix the problem. I assume that when the device was set to unknown, the boot manager didn't know what to do to boot that partition, hence the message.

Microsoft has put up a handy reference for bcdedit too: http://technet2.microsoft.com/WindowsVista/en/library/85cd5efe-c349-427c-b035-c2719d4af7781033.mspx?mfr=true

Note that for basic booting option changes, such as the default OS or timeout, you can run msconfig or the System Properties, Advanced tab.

If you discover that there is no "Earlier Version of Windows" option in your boot manager at all, try these instructions (also repeated on the above Microsoft site): http://www.nukeation.net/2006/07/05/5456+Update+2++XP+Goes+Missing+After+Installing+Vista.aspx

UPDATE (6/12/2007): Clarified some steps and fixed a few spelling errors.

Trackbacks sign
1 Trackback
Trackback URL
Comment sign
Drive:Activated tracked back:

Well, after getting my Vista installation dual-booting with XP again , I needed a new challenge, so I

Comments sign
26 Comments
Comments RSS RSS icon
Comment sign
Pete Rowe said:

Hi

Just want to give a BIG thankyou for 'Vista dual-booting "/ntldr missing or corrupt" fix'

I had the same prob as stated when I put Vista on a partition on same drive as XP, NTLDR was corrupt or missing. My Vista installation was also unstable/corrupt, due to loading on a partitiion I previously used for keeping files etc so probably very fragg'd!

Most advice on the net refers to the recovery console, I couldn't use this due to not knowing the ADMIN password (I know there are ways to get this but didn't have time or means to hunt around for this info). I tried replacing NTLDR and NTDETECT with files from CD as suggested, this didn't work for me.  I followed your instructions and bingo, problem was solved!  I was so relieved to see the XP boot up screen (pc then took about 15mins doing something with orphaned files) but eventually loaded XP and it's been fine since.

So thanks very much once again for the detail,  saved alot of stress

Pete

Comment sign
Sam said:

No probs Pete, glad I could help.

I discovered something that could make the task of using bcdedit easier - VistaBootPro. Essentially, it's a graphical version of bceedit. I haven't personally used it yet, but it looks pretty good and could make this task a bit easier. It's free too btw.

It's available at: http://www.vistabootpro.org/

Comment sign
Willeeee said:

Hi, I also wanted to say thanks alot for this, I was stressing and googleing hard! then come across this little beauty....EXCELLENT !!!! up and working fine now,  Cheers ;)

willeeee

Comment sign
CLYF said:

Thanks for the advice, My XP is working fine now!

Comment sign
BJD955 said:

I had the same problem with the '\ntldr file missing or corrupt' message and couldn't boot XP. After searching the net, most of the solutions were a little too complicated for my liking but at least I got the gist of the cause. Since I was still able to boot Vista from its own partition, I ran a search on the XP partition for the following files:

NTLDR

NTDETECT

BOOT.INI

From the sites I browsed, the cause of the problem apparently lies with these files either being missing or mislocated. When I found them (they were in C:\Windows\I386, a hidden folder, ) I just copied them to C: , rebooted then loaded XP on the boot menu screen and everything went back to normal again. No need to use the complicated Vista bcdedit. I hope this post will be of some help to others.

Comment sign
BJD955 said:

Sorry, I neglected to mention that my search did not turn up the Boot.ini file but it did find boot.ini.backup in another location. I copied this to C: with the other two filles, renamed it to boot.ini and this is what fixed the problem. My computer has since renamed it automatically to bootsect.bak though but the three files are still on the C: (My XP drive) where they should be, and the computer reboots normally.

That's all I did. I found my own way because I really didn't want to tamper with the bcdedit or use the command prompt or download a freeware program I wasn't sure about when there's really no need.

Comment sign
BJD955 said:

One further point which may or may not be of interest but on my machine, Windows XP is the active system, i.e. it was installed first. I installed Vista after creating a new partition for it so I guess my solution will only apply to similar cases. From what I read on the net, it matters which O/S is the active system.

Comment sign
Sam said:

Windows XP was my active partition too, but it sounds like in your case instead of Vista's setup changing the active partition to its own partition, it overwrote the boot bits on the Windows XP partition, or for some other reason decided to screw with the existing active partition. Maybe it was a installation setting, or just a case of the installation program being too smart for it's own good.

Thanks for posting up your experience and solution; I'm sure someone out there will find it useful.

Thank you. I had this problem after i had to delete the MBR of my hard drive because acronis os selector refused loading. after deleting the mbr nothing would show and i used vista cd to repair. that let me use vista althow i had serious error messages because the drive letters got screwed up. after changing the drive letter i could start vista nornally but had this problem with xp thanks to your information I saved xp too. I also want to thank Internet for making this communication availiable

Comment sign
Doran said:

I had either XP or Vista available for booting at a time, but not both... this fixed it... thanks for sharing your research!

Comment sign
totr said:

fdisk /MBR

Comment sign
Antonio & Riccardo - ITALY said:

You're so cool ! It works ! Greaaaaaaaaaaat !  THANKS A LOTS

Comment sign
Lee said:

Very Nice... I've tried everything, replacing boot.ini, ntldr etc etc. This worked perfectly the first try. Thank you so much for this guide.

Comment sign
Siilent User said:

First, thanks to both Sam and BJD955. Here was my scenario...

- XP was installed first on a separate partition

- Vista was installed afterwards on my C: partition

- I used VistaBootPro to create another listing in the boot manager

- I kept getting "ntldr is missing" error message (It really was missing, it wasn't anywhere on my system)

- I read this page and got some great pointers

- I used my old XP installation disk, explored, and copied ntldr and ntdetect from the disk and pasted to my Vista directory (C:)

- I searched for and copied boot.ini.backup from the XP partition, renamed it boot.ini, and copied it to my Vista directory (C:)

And that's how I saved myself a few hours of troubleshooting, thanks to you guys. Hopefully there will be someone out there like me who will greaty benefit from all this info like I did.

Comment sign
Victor said:

Thanks so much, you are great amigo,  

Comment sign
keith said:

Thanks a million, dude. I managed to ruin my ntldr while resizing my XP partition using Partion Magic. I did the usual re-copy of the XP ntldr and ntconnect.com files to no avail and twigged that the Vista install (which I dont ever use but are too afraid to uninstall (for this very reason)) might be the problem. All I needed was the method to fix it :) thanks again

Comment sign
Rave said:

I have a prob. regarding Windows boot manager as I have Xp installed in C partiotion and vista in D since I deleted the old installation of Xp and installed new one now instead of going towards boot manager Xp is directly booted with no option for vista or Xp please help me....

Comment sign
Sam said:

Rave:

Try performing the startup repair procedure:

windowshelp.microsoft.com/.../5c59f8c1-b0d1-4f1a-af55-74f3922f3f351033.mspx

Comment sign
Deebo said:

Thanks so much BJD955!

Comment sign
Rave said:

That did not solved my Problem.

Comment sign
Rave said:

That did not solved my Problem.

Comment sign
Ron said:

I'd also like to thank you- I installed XP on a new Partition (D) on a lenovo y410 laptop with vista preinstalled. After using bootpro to set the XP drive to D I still got the missing ntldr error. After reading this page I copied the files ntdetect and ntldr from the XP cd to drive D, and now the dual boot works!

Thanks again, you put an end to 2 days of a nerve wracking battle with Microsoft junk!

Comment sign
Skazz said:

Same problem.  Tried to dual boot vista & xp with vista pre-installed.  Running diagnostics in vistabootpro showed that the xp drive letter wasn't assigned.  Quick fix in VBP and now all's fine.

Comment sign
C. Beltran said:

Thanks a loooot..for your helpful tips....I got 3 days trying to make work this DUAL BOOT..scenario.. and after checking various websites ...Finally land in the RIGHT ONE.. Yours..

   Thanks again

  Now this is #1 in my Favorites...

Comment sign
Mila said:

Thank you very much, Sam, for this post. In my case i installed XP on the laptop that came with preinstalled Vista and then installed VistaBootPro - the dual boot worked fine for the first day then i got that message : "/ntldr missing or corrupt". I tried to copy ntldr, ntdetect.com, boot.ini in XP partition, than reinstalled XP, tried recovery console - nothing helped. But after i did changes in Bcdedit the problem is gone. Tnaks you again.

Comment sign
MOI said:

Many Thanks!

This worked smoothly and was very good described. My OS now boot as they should. 3 nights work just for a new HDD, arrgh...

Post comment sign
Leave a Comment
I know you want to!
(required)  
(optional)
(required)  

Want to keep stay in the loop with the comments here? Leave your email address below and you'll be informed when a new comment is added to this blog post.

(optional):  

Submit