Win10&FreeBSD12 dual boot installed separated HDD on EFI BIOS

Hi,

I am very new and beginner for FreeBSD. I used use Linux and Mac OS long time. and I am not much big fan of Linux system some reason. until recent days. I only installed and run via VMware from Win10 machine. and finally try to use freeBSD for my main desktop but still using win10 for backup purpose. I installed FreeBSD separated HDD and currently only using F8 boot sequence and select installed HDD. but as you know very inconvenient.

now. I really want to use boot manager but I don't know how to do from FreeBSD world (of course manual configuration). at least I want to understand steps.

1. from Win10, using BCD create or call separated FreeBSD boot record to GPT partition? is this correct? when pc boot select screen pop?
2. such as Linux GRUB, should I install boot manager from FreeBSD to first HDD's GPT partition by pass win10's boot manager? but how?

there is may be multiple solution but, I really have difficult to find out right solution. how typically users use Freebsd and win 10 on EFI especially installed second HDD

I look forward your guide and help

Thank you.
 
There are several threads here in this forum regarding dual boot. For example


I suggest you read these and come back with a specific question.
 
Here is my experience: Win10 won't accept GPT tables on the drive it's installing on, and could destroy them. Oddly, Win10 will file explore a hard drive with an NTFS partition inside a GPT table after install ? :)

I let win10 do it's thing. I use win10 to make an empty partition and copy freebsd or linux in it. I boot unix from USB to avoid hastle of UEFI problems.

I next got a 2nd drive and gave it to BSD. On re-installing Win10, Win10 clobbered the BSD boot partition. I scammed around googling how to restore it, while not in the handbook, there is a simple command to restore the freeBSD GPT boot code on the 2nd drive. Win10 doesn't not touch it after: it only clobbers freeBSD boot (files/areas of disk) when it is installing. Win10 will clobber 2nd drives even though they don't have Win10 on them and are clearly marked as another OS. So be careful.

I forgot to mention I don't use any OS provided "boot loader" at all. If the machine boots hands free it boots win10. I use a bios setting to select which hard disk to boot (which my bios offers as a point-click when I'm booting, click on what drive to boot). I don't need either OS trying to boot the other OS with some software. That simple. I don't use EUFI. I'd like to contain both kernel up to date without my having to fool with it, and a boot loader. It doesn't.
 
finally try to use freeBSD for my main desktop but still using win10 for backup purpose.
Reading this, I just HAVE to ask: did you consider virtualization?
Don't mean to say dual-boot doesn't work, but it has quite some drawbacks: Needs more space, no easy way to share files, NO way to use both systems simultaneously. Given virtualization nowadays is typically close to "native" performance, it might be worth a shot, especially if you already identified one of the systems as your "primary" one.
 
So under Cannonical's libc for linux, which freeBSD uses, you CANNOT USE LIBC6 for libc6 apps support them 1-1 with libc6 orignial functions. It's designed to dis-allow old support. Libc7 handles libc6 and "punishes you if you don't". That's "the most efficient", ok, one lib all past versions. If they decide certain "older symbols" are no longer necessary (such as putc) (ie, want to kill some app they find competitive), you can't use the old libc6 (unless you want to re-design the "linux loader"). I've done some loader hacking, not much. They can also change printf() to call "not prinf" or change printf's numeric output to "not print the same math", which they've done both of.

Lesson: the "one lib for all" is "efficient" like they said. But it puts cannonial in charge of deciding when your old app (ie, last month since releases are frequent) are able to run or "have been killed".

Some people find this info useless. Some may find it enlightening.
 
Whatever this is about, putc() is part of standard C and not marked deprecated or anything. A libc not implementing it properly is just broken.
 
I see a lot of Gish gallop, don't even know if I have the time or the energy to refute all of it.
 
Win10 won't accept GPT tables on the drive it's installing on, and could destroy them.
Nonsense. Works just fine. I have several systems with Windows 10 I installed on a GPT partitioned drive. Heck, I even created those from the Windows installer. You must EUFI boot the Windows install media for it to work though.

On re-installing Win10, Win10 clobbered the BSD boot partition.
Windows isn't going to touch the freebsd-boot partition, it might overwrite the MBR on an MBR partitioned disk, yes. But those are two completely different things.
I don't use EUFI. I'd like to contain both kernel up to date without my having to fool with it, and a boot loader. It doesn't.
UEFI boot doesn't have the kernel in the efi partition, so this is just plain nonsense.
So under Cannonical's libc for linux, which freeBSD uses
The company is called Canonical, not Cannonical. Besides that, FreeBSD has it's own implementation of libc. Lots of nonsense, again.
 
Back
Top