Dual Boot FreeBSD on a separate disk - my findings

Hey guys,

I googled this and most threads seem to indicate one needs to install FreeBSD on the same partition as your Windows partition or make your FreeBSD drive your boot drive and load Windows from your FreeBSD boot partition. Well, that didn't seem to work for me but this did:

My table ended up looking like this and booting.

ada0 - MBR
ada0s1 - NTFS - 100 MB
ada0s2 - NTFS - 223 GB
ada1 - BSD <------ (Auto config makes this GPT? I changed to BSD as GPT wont Dual boot with MBR?)
ada1p1 - freebsd-ufs - 220 GB /
ada1p2 - freebsd-swap - 3xxx MB none

No bootloader/boot partition on the second drive and then I did boot0cfg -B ada0, rebooted and I could boot FreeBSD also.

Hope this helps someone else but why are GPT based tables troublesome with MBR Windows installs?
 
christov84 said:
Hey guys,

Googled this and most threads seem to indicate one needs to install FreeBSD on the same partition as your Windows Partition or make your FreeBSD drive your boot drive and load Windows from your FreeBSD boot partition.

More specifically: if you have to dual-boot on the same disk as Windows, MBR is usually the only way to do it. Microsoft and other vendors seem to think GPT is tied to UEFI.

Even better, avoid dual-booting when possible. Install other operating systems as virtual machines on the first. That allows better sharing of resources and running more than one at the same time.

My table ended up looking like this and booting.

ada0 - MBR
ada0s1 - NTFS - 100 MB
ada0s2 - NTFS - 223 GB
ada1 - BSD <------ (Auto config makes this GPT? I changed to BSD as GPT wont Dual boot with MBR?)
ada1p1 - freebsd-ufs - 220 GB /
ada1p2 - freebsd-swap - 3xxx MB none

"BSD" means a bare bsdlabel(8), sometimes called "dangerously dedicated". That setup will work but is not recommended. To set up a standard MBR/bsdlabel disk format, see http://forums.freebsd.org/showpost.php?p=149210&postcount=13.

Hope this helps someone else but why is GPT based tables troublesome with MBR Windows installs?

By themselves, they are not. But old multi-boot loaders do not understand GPT partitioning.
 
GPT on the second disk should work as long as the multiboot loader can properly chain load to the MBR of the second disk and there is an MBR installed (usually the /boot/pmbr on GPT partitioned disks) on the first sector of the second disk. I don't see why the boot0cfg(8) would fail with to work in such a configuration. EasyBCD (for example) does not work as far as I know because it tries to be too smart about the contents of the disk it examines.
 
When I have several (physical) disks in a machine, I usually put a boot loader on each disk and use the "boot menu key" in BIOS to select the disk to boot from.

FWIW, HTH.
 
Back
Top