# FreeBSD doesn't boot



## Kalero (Oct 20, 2015)

Hi, last night I installed FreeBSD 10.2-RELEASE-amd64 on my second hard disk, with ZFS and MBR partition scheme. In my first hard disk I have Windows XP installed. At the end of the install process, in order to make a dual boot, I opened a shell and wrote a new boot0 to both hard disks by typing:

`boot0cfg -B ada0
boot0cfg -B ada1`

But when I boot my PC, boot0 shows two options (see the picture):

F1 Win
F5 Drive 1

Windows boots normally pressing F1, but when I press F5, two new options appear:

F1 FreeBSD
F5 Drive 0

If I press F5, I return to the first step (F1 Win; F5 Drive 1), and if I press F1 to boot FreeBSD, it doesn't boot and a cursor stays below blinking and I can't do anything but switch off the PC. What should I do? Thanks.


----------



## SirDice (Oct 20, 2015)

The boot0cfg(8) does not support booting ZFS.


----------



## Kalero (Oct 20, 2015)

SirDice said:


> The boot0cfg(8) does not support booting ZFS.



Are you sure? I think it does not depend of the filesystem, but the partition scheme. I know boot0cfg does not support GPT, but it supports MBR.


----------



## SirDice (Oct 20, 2015)

The only boot loaders capable of booting FreeBSD on ZFS are zfsboot(8) and gptzfsboot(8).


----------



## Kalero (Oct 20, 2015)

Then, how could I dual boot Windows XP and FreeBSD?


----------



## SirDice (Oct 20, 2015)

The only way I got it working was by using the boot selection of my BIOS. Maybe it will also work with EasyBCD but I'm not sure if it supports ZFS.


----------



## Kalero (Oct 20, 2015)

Mmm... My BIOS (Dell A22 BIOS) boot selection menu is the one I attach below, so I only have one hard drive option and not one option for each hard drive (the highlighted entry is for USB).

Also, I remember having many issues with EasyBCD and Windows XP, because Windows XP uses boot.ini file instead of BCD.

What a hassle!


----------



## chrbr (Oct 20, 2015)

In the past there have been discussions regarding sysutils/grub2 or one of its incarnations and ZFS. One thread is Thread grub2-has-no-zfs-support.25164/. May be the situation has improved. At least the information regarding the pcbcd version looks promising:

```
# psearch -l grub2-pcbsd
sysutils/grub2-pcbsd  Multiboot boot loader
  GNU GRUB is a multiboot boot loader.  It was derived from GRUB, the GRand
  Unified Bootloader, which was originally designed and implemented by Erich
  Stefan Boleyn.
   
  This port does not install GRUB on the master boot record of your hard drive.
  To do this you will need to read the info page that is installed by the port.
   
  This port includes additional patches and fixes making it work properly
  with ZFS boot-environments. Users on UFS will probably want to install the
  regular sysutils/grub2 port.
   
  WWW: http://www.gnu.org/software/grub/
```
Now I do not use grub anymore and I have no experience with grub and ZFS. But I hope that this information is helpful anyhow.


----------



## Kalero (Oct 21, 2015)

Thanks, chrbr. I think I'm going to use UFS, I see it's too hassle to make a dual boot between Windows XP in a MBR hard disk and FreeBSD with ZFS in another MBR hard disk. I think FreeBSD team should work in giving solution to boot issues (the forum is full of threads talking about boot, dual boot...). Maybe many people is moving to Linux or other GPL projects because it's really hard to set up basic issues. Thanks to all.


----------



## chrbr (Oct 21, 2015)

Dear Kalero,
I think there is nothing wrong using UFS. ZFS has nice features but requires some nice hardware as well. You can use grub for dual boot Windows XP and FreeBSD. But grub itself can be quite tricky, too. The easiest path would be the bios option as SirDice mentioned already, especially if you need Windows XP only from time to time. You have really bad luck with your bios.


Kalero said:


> I think FreeBSD team should work in giving solution to boot issues (the forum is full of threads talking about boot, dual boot...). Maybe many people is moving to Linux or other GPL projects because it's really hard to set up basic issues.


From my experience I think the difficulties are more grub related than FreeBSD related. And of course dual boot is the first difficult step if somebody likes to try FreeBSD without using a virtual machine.


----------



## Kalero (Oct 22, 2015)

Thanks, chrbr


----------



## free-and-bsd (Oct 30, 2015)

chrbr said:


> In the past there have been discussions regarding sysutils/grub2 or one of its incarnations and ZFS. One thread is Thread grub2-has-no-zfs-support.25164/. May be the situation has improved. At least the information regarding the pcbcd version looks promising:
> 
> ```
> # psearch -l grub2-pcbsd
> ...


You just happened to pick up wrong thread. Try this one.

Grub2 _does_ support ZFS and multiboot. Only, one needs to use the GIT version of grub. I'm not sure about the sysutils/grub2 port and which sources it uses. The last one I tried didn't support ZFS feature flags... however, the thread mentioned above contains details about how to disable features on your pool at the time of creation. That way grub2 from sysutils/grub2 will work well. Otherwise there's nothing tricky about using GRUB2.
Among other things, it will be able to boot your configuration perfectly well. That's because it doesn't have to be installed on a disk/partition in order to boot it. That's the beauty of it.


----------



## free-and-bsd (Oct 30, 2015)

You can follow the thread mentioned in the previous post to install GRUB2 on your ZFS disk. Then, in some of the GRUB2 related threads I shared my config. You can google on how to configure GRUB2 to boot WinXP. It must be VERY easy, through chainloading.

Only, your WinXP disk will have to be second and the GRUB2 the first. Then you chainload from your WinXP disk, upon which it will be made 1st, so to make WinXP happy with it.
EDIT: There's nothing wrong with UFS, it is true. But ZFS has so many impressing features that make working with it a pleasure.


----------



## Kalero (Oct 30, 2015)

Thanks for your help, free-and-bsd. Now, after the previous posts, I'm running FreeBSD on UFS. I don't like to use GPLed programs, not even Grub. I don't want to be related with GNU, FSF or Richard Stallman's empire.


----------



## free-and-bsd (Oct 30, 2015)

Kalero said:


> Thanks for your help, free-and-bsd. Now, after the previous posts, I'm running FreeBSD on UFS. I don't like to use GPLed programs, not even Grub. I don't want to be related with GNU, FSF nor Richard Stallman's empire.


A-a, I see.
Well, maybe one day FreeBSD bootloaders will be able to chainload one another. That would be the solution.


----------

