Jump to content











Photo
- - - - -

Grub4dos won't boot Vista Home Premium SP1


  • Please log in to reply
2 replies to this topic

#1 muffin

muffin
  • Members
  • 3 posts
  •  
    United Kingdom

Posted 31 May 2008 - 11:19 AM

Hi everyone,

I've put Grub4dos on several USB sticks in order to multiboot various OS (including Ubuntu, BartPE, XP, Vista) on different PC's. It works really well, the only major problem being that version 0.4.3 hangs on some of the sticks so I'm using 0.4.2 instead. However a recent installation of Vista Home Premium Service Pack 1 on one PC has wrecked the show since Windows Boot Manager now halts with status 0xc000000f - an error occurred while attempting to read the boot configuration data. Vista can still be booted directly (ie without the sticks) if its partition is set active, but it will no longer boot from Grub4dos. Has anyone else come across this problem yet? The Grub4dos commands are
title Vista
find --set-root /bootmgr
chainloader /bootmgr
and they worked fine before this supposed improvement. ;)

Sorry if anyone has wasted their time on this. I realised something funny was going on when all the other sticks could still boot Vista (albeit with SP1 uninstalled). In fact what happened was that the SP1 install made a hidden copy of the BootMgr file and also created a new hidden folder called Boot on the stick itself. When the above Grub4dos commands were executed the "find" locked on to the stick partition rather than the Vista partition on the hard drive. So it isn't surprising that Vista didn't load. The foibles of Microsoft are a closed book to the rest of the world! :happy:

#2 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7101 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 31 May 2008 - 01:30 PM

A common workaround to the problem of "find" finding the "wrong" copy of a chainloadable file is to use a "tag file" on the volume.

As an example, you create an empty ( 0 kb ) file "this_is_it.tag" and place it on the root of the volume on which is the instance of chainloadable file you want to boot same thing for the "something_else.tag"

In your case:

title Vista on this_is_it
find --set-root /this_is_it.tag
chainloader /bootmgr

title Vista on something_else
find --set-root /something_else.tag
chainloader /bootmgr


jaclaz

#3 muffin

muffin
  • Members
  • 3 posts
  •  
    United Kingdom

Posted 31 May 2008 - 07:01 PM

A common workaround to the problem of "find" finding the "wrong" copy of a chainloadable file is to use a "tag file" on the volume.

As an example, you create an empty ( 0 kb ) file "this_is_it.tag" and place it on the root of the volume on which is the instance of chainloadable file you want to boot same thing for the "something_else.tag"

In your case:


jaclaz


Thanks jaclaz,

I spotted your tagging tip several months ago and mentally filed it away as very sound advice, particularly if you're moving partitions around or trying to boot Linux. I just never thought that the Vista SP1 installation might generate another BootMgr file. Hopefully this post may prevent others falling into the same trap. ;)




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users