General discussion

Locked

What has Windows 7 done to my boot manager?

By furiouszed ·
Hi folks,

I need help with a dual boot problem. I don't know a huge amount about this but I know enough to be pretty sure its a boot manager problem. This is a bit longwinded but it should be clear enough:

I wanted to try out Windows 7 without overwriting my existing (heavily customised) XP Pro so I decided to install it on a completely separate HDD. Having installed a new OS many times, I expected to be asked for drivers (for my motherboard etc) so I wanted to install Win7 in the machine where it would be used. I therefore took the HDD from my 2nd machine. It also had XP on it (but I didn't mind if anything happened to this). Still, the drive was half empty so I partitioned it and installed Win7 on the empty partition. Having skipped Vista, this is the first time I've dealt with the OS abandoning boot.ini (and ntldr) and using the new bootmgr instead. The install DVD could see XP was already there and I assumed it would deal with this. To some point it did. The install finished and I rebooted. If the BIOS had looked at HDD 1 first (my original drive with only XP) then I would not have seen a dual boot menu and XP would have booted. So I made sure I told the BIOS to look at HDD 2 (the partitioned drive with XP and Win7) first. Sure enough, I got a menu asking if I wanted to use Windows 7 or the "previous version of Windows". I selected Windows 7 and played around for a while and quite enjoyed it, to the point where I decided to remove the old XP drive and stick with ONLY the partitioned drive. I planned on changing the default OS to Windows 7, safe in the knowledge that I would still have the choice of using XP if I ever needed to. Here's where the problems began. After removing HDD 1, I no longer get a dual boot menu. Instead the machine boots straight into XP (on the first partition of HDD 2). I have no way of booting into Windows 7 on the second partition. I made that partition Active but that resulted in the drive being completely unreadable (I had to use fdisk to change that back just to get back to XP)

I know Windows 7 makes changes to the boot manager (editing and renaming boot.ini for example) but it would appear that's not all it does. Some vital bit of information is not being seen now; the problem is I don't know what it is. I've tried copying files from the old XP drive in case something was put there but nothing helps. From what I've read, I think the problem may be with the MBR or some such thing, and I suspect the machine is looking in the wrong place for instructions on how to boot up. Unfortunately, I don't know enough about this to play around with it. I wish I had taken the time to check out one of the 3rd party boot managers... I read about Windows' own being badly designed but again, I didn't know enough to get involved and I was more interested in installing the OS. That'll teach me to trust Microsoft to do the right thing. Hopefully, someone here will be able to offer some advice.

I should add that yes, I could easily reinstall Windows 7 but 1) I've already customised it to some degree and 2) I don't see why I should. I believe I should be able to remove a slave drive without it making my master drive unbootable.

Thanks to anyone who read all that; I hope it makes sense and someone can help.

This conversation is currently closed to new comments.

5 total posts (Page 1 of 1)  
| Thread display: Collapse - | Expand +

All Comments

Collapse -

You don't provide the necessary hardware information

by NickNielsen In reply to What has Windows 7 done t ...

But I think we can get to the bottom of this. The process may have been different for IDE drives than for SATA drives, but the result was the same.

Your drive 1 is where the boot manager installed itself; when you removed drive 1, the boot manager went with it. Drive 2, where the XP and Win 7 partitions are located, still has the original boot.ini file and therefore boots to XP.

I'm not familiar with how boot.ini and Win 7 work together (or even if they do), but if you don't plan to keep the XP install, why not reinstall Win7 over top. This time with only a single drive installed.

Collapse -

I partly agree...

by furiouszed In reply to You don't provide the nec ...

Hi and thanks for the help :)

Firstly, fair enough; I DID forget to give any hardware specs, which is usually the first thing I do (/me gives self a good slap). However, I'm 99% convinced the issue is not hardware related so that info isn't necessary (although god knows, with Micros**t, hardware and software issues are often in bed together).

Anyway, I agree with what you said in the main - the boot manager has installed itself on drive 1. Two reasons this became clear:

1) I installed Windows 7 (on IDE drive 2) from within XP on SATA drive 1 so the installer obviously assumed that THAT instance of XP was the main OS, especially since it was on the C: drive (on drive 2, XP is on H: and Win 7 is on I:) When I put drive 2 in the machine by itself H: and I: become C: and , but THIS C: does not contain any of the boot files it needs.

2) I also noticed that my 'real' C: (drive 1) had a new folder called "boot". This is why I don't think it's important that one drive is IDE and one is SATA, the problem is that the installer has picked up on the wrong 'C: drive'.

This has been confirmed by me putting drive 2 back in the machine (with drive 1) and booting up: I get asked if I want to use Windows 7 or "earlier version of Windows". If I select 'earlier version' it boots the XP on drive 1 and NOT the XP that exists on the Windows 7 drive.

This was also starting to become clear immediately after I removed drive 2: when I rebooted with only drive 1 in the machine I was still getting the dual boot menu (which I shouldn't have) and if I opted to boot into Windows 7 the machine hung.

Anyway, as I think I said earlier, I DO want the option of being able to boot into XP on the odd occasion I need to use a program that doesn't yet work with Windows 7.

I've spent the morning picking up all the new boot files from my drive 1 C: and putting them on my drive 2 C: but I still can't boot into Windows 7 If I could boot into 7, I would use the Files & Settings wizard to save the changes I had made, then remove drive 1 and reinstall 7 on drive 2. In the meantime, I'm left with a whole load of junk on my C drive that shouldn't be there, not just in the root but also god knows how many files in the system32 folder... is there any way of getting rid of all that? Maybe a System Restore? Or will uninstalling Windows 7 remove all the crap that was added during the install? (knowing Microsoft, I'd say no). The last thing I want to have to do is a fresh install of XP as well.

Once again, sorry if that's extremely long winded but I hope I've been clear enough and not rambled too much. Thanks again for your reply and any further suggestions re fixing will be gratefully accepted.

Collapse -

The easiest fix

by NickNielsen In reply to I partly agree...

You won't be able to boot into Win 7 simply by moving files. The boot manager, whether boot.ini or Win 7 is called from the primary hard drive's master boot record. You need to do a repair install on your Win 7 drive without drive 1 installed to make the appropriate changes to be able to boot to Win 7 on drive 2.

Since, as I understand it, you want to keep the XP installation on your drive 1 and still have Win 7, the best way that comes to mind is install Win 7 onto drive 1. To do this, resize the XP partition on drive 1 to make room, then install Win 7 into the empty space. This will give you both XP and Win 7 on the same physical drive and eliminate your OS select problem.

If the drive isn't large enough, purchase a larger drive, clone the XP partition to it, and go to town with Win 7.

Best of luck.

Collapse -

How about two separate drives?

by furiouszed In reply to The easiest fix

Hi again Nick,

Thanks for all the info you're providing, it's very helpful.

The way I understand it, the PC accesses my primary drive in order to read the MBR in sector 1, which then tells it to boot into Windows 7... which is on a separate physical drive. The 3rd party boot managers I read about claimed to be "better" because they were called immediately by the BIOS before ANY drive was accessed. In other words each OS could run completely independently on its own drive/partition. In my case, read that as: XP would boot up even if drive 2 was absent (which it does) and Windows 7 would boot up even if drive 1 was missing (which it doesn't). You and I agree that my problems arise because the boot information can not be accessed (because it's stored on a drive thats been removed).

My plan now is to have XP on drive 1 and Win7 on drive 2, one of them set as first boot device. If I want to use the other OS I'll simply change the boot order when I reboot. Would a 3rd party boot manager do anything other than automate that process? If not, pressing F12 is just as easy as selecting an OS from a menu.

Thanks in advance for any thoughts you may have. Feel free to correct me if I've misunderstood anything.

Best regards,
Phil

Collapse -

Consider a boot manager

by NickNielsen In reply to How about two separate dr ...

This would allow you to set a default boot partition, but still allow you to boot to the second OS when you desired. You can set a boot time ("This OS will start in # seconds") to something fairly short (say 5 or 10 seconds) so there is no appreciable delay during the boot process, but you have the opportunity to select the alternative partition when you want to with only a keystroke or two.

The boot managers' claims that they are called immediately by the BIOS before a drive is accessed are misleading. Hard drive boot instructions are contained in the MBR on the primary hard drive. The BIOS still has to access the drive in order to read the MBR and start the boot manager.

Back to Hardware Forum
5 total posts (Page 1 of 1)  

Related Discussions

Related Forums