Grub can't find BSD partitions

First of all, I already know about all the threads regarding how to chainload, but that's not the issue.

I wil explain that briefly, I'm trying to install fbsd to my home server which is an old Pentium D, (amd64 and legacy boot)and basically every USB installer worked until I tried FreeBSD, he just don't like it, and will never be shown on its boot menu. So I unplugged that disk, and installed FreeBSD from a virtual machine into that disk directly. That worked just fine.

Until I tried to chainload that OS from Grub coming from Manjaro Linux (has that os on it) it seems just to recognize (just typed ls into grub cmd) the extended partition, but not the partitions inside it, so chainloading or trying to load the kernel just fails with a "boot kernel not found".

The only way I got it working is by plugging a super grub usb disk which apparently recognizes the bsd partitions inside and boot them. Called with something like hd1,msdos2,bsd1.
But even if I copy the grub configuration it won't boot because it just can't find the partition, maybe some module has to be loaded? I tried ufs2, bsd, part_msdos and nothing worked. Just the hd1,msdos2 partition is shown.

Any clues?
 
I was missing part_bsd grub module, which was apparently required but only on that desktop.

Then just doing a "kfreebsd /boot/loader" worked.

But kFreeBSD.vfs.root.mountfrom didn't worked, and was overwritten by the uncorrect fstab, coming from the virtual machine which uses SCSI instead of AHCI (causing a mismatch, /dev/ada vs /dev/da)

Now everything works, thanks anyway hope It will help someone else.
 
Back
Top