#123 boot from partition instead of MBR


Is it possible to tell refit to execute (chainload) boot code in any partition (e.g. Vista boot code, LILO...)?
I don't mean BIOS-booting the MBR. Think of an empty MBR.
If yes, does it matter if the disc is MBR or GPT or hybrid?
A more general version of this question would be: what is refit capable of booting from and how are the menu entries selected/searched for?


  • Gaetano Giunta

    Gaetano Giunta - 2011-08-21

    definitely a good question, that merits an answer in the docs...

  • Joe van Tunen

    Joe van Tunen - 2011-08-22

    rEFIt does not do chain loading. To boot a legacy OS, it must be listed in the MBR. When you attempt to boot a legacy OS partition in rEFIt, rEFIt sets the boot flag of the partition in the MBR on the disk containing the partition then calls BIOS to run the boot code in the MBR which will then run the boot code of the flagged partition. rEFIt adds boot code to the MBR if it doesn't have any.

    rEFIt can boot any partition listed in the MBR using BIOS (legacy OS's), and any GPT partition containing known file systems with certain EFI files in certain locations using EFI.

    rEFIt does not look for legacy OS's in partitions that exist only in the GPT or in extended boot records.

    For chain loading, consider EasyBCD or grub2.

    The source code of rEFIt can tell you which EFI files it looks for and where:

    I believe you can make changes and recompile using free Microsoft development tools with some tweaks to the build files. You'll need to do this if you want the feature that allows booting legacy OS's that are not on the first disk. (added in revision 467 in main.c).


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks