# Win10&FreeBSD12 dual boot installed separated HDD on EFI BIOS



## JungJae Kim (Feb 24, 2021)

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.


----------



## eternal_noob (Feb 24, 2021)

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









						Dual-booting Windows 10 alongside FreeBSD 11.0-RELEASE
					

How do I go about having Windows 10 alongside FreeBSD 11.0-RELEASE on a same physical hard drive? Freebsd handbook is excellent(reason for choosing FreeBSD), but I can't seem to find the way to do this.  A little bit of background, I did dual-boot my older machine with Windows 7 alongside...




					forums.freebsd.org
				











						GPT Multiboot
					

A quick overview of how to create a multiboot disk with sysutils/grub2 for FreeBSD and some other operating system.  Create the partitioning: gpart create -s gpt ada0 Add a freebsd-boot partition for FreeBSD bootcode: gpart add -t freebsd-boot -a4k -s512k ada0 Add a special partition for GRUB2...




					forums.freebsd.org
				











						Solved - Is there a clean way to dual boot with UEFI Windows 10 and FreeBSD 11.1 (soon to be 11.2)?
					

I bought a new HP laptop. If FreeBSD supports the hardware, I would like to run FreeBSD as the main desktop OS. To make sure I'm comfortable with it, I would like to be able to dual-boot back to Windows 10. Are there any clean and simple instructions on how to do this yet or, as indicated in the...




					forums.freebsd.org
				











						Dual Boot Window 10
					

Dear All,  I have installed FreeBSD 12 but it corrupted my MBR and now i cannot even boot into windows 10. What can be done to rescue it? Please help. Thanks.




					forums.freebsd.org
				











						Install and Boot Windows 10 with UEFI and FreeBSD with Legacy
					

Hi :) For using Windows 10 at work and FreeBSD at home with my laptop on real hardware, I intend to create two primary partitions on HDD: one for Windows 10 and the other for FreeBSD.  Observations:   My laptop has secure boot enabled and it is not possible to disable it on Acer’s bios setup...




					forums.freebsd.org
				




I suggest you read these and come back with a specific question.


----------



## mickey (Feb 24, 2021)

Have a look at rEFInd. Have been using it for some years now and I can say I am very satisfied with it.


----------



## debguy (Mar 1, 2021)

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.


----------



## zirias@ (Mar 1, 2021)

JungJae Kim said:


> 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.


----------



## debguy (Mar 1, 2021)

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.


----------



## shkhln (Mar 1, 2021)

debguy said:


> Some may find it enlightening.


I certainly do. Now, please, take your medication.


----------



## zirias@ (Mar 1, 2021)

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.


----------



## shkhln (Mar 1, 2021)

(It's an overly paranoid description of symbol versioning.)


----------



## zirias@ (Mar 1, 2021)

shkhln said:


> (It's an overly paranoid description of symbol versioning.)


I'd call it indecipherable gibberish, but I also noticed some weird kind of paranoia is "en vogue" lately. Anyways, better leaving this now until there's again something on-topic to post in this thread


----------



## SirDice (Mar 2, 2021)

I  see a lot of Gish gallop, don't even know if I have the time or the energy to refute all of it.


----------



## SirDice (Mar 2, 2021)

debguy said:


> 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. 



debguy said:


> 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. 


debguy said:


> 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. 


debguy said:


> 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.


----------

