I have a FreeBSD 10.0/Solaris 11.1 dual-boot machine. Solaris was
installed after FreeBSD and since it uses grub by default I am using
that to boot. Currently I am just invoking /boot/loader from grub.cfg
in Solaris to boot FreeBSD, but I would like to boot directly. This
just doesn't work.
I have installed grub2 on FreeBSD via ports, and run `grub-mkconfig'
to get some entries for grub.cfg which I have simply applied to the
Solaris installation (via the custom.cfg script).
But, this entry just doesn't work. I have tried running each command
by hand at the grub CLI with debugging but after all the debug output
is printed (not revealing anything abnormal) the screen goes black
and the machine reverts to the normal power-on screen, and the
boot selection process starts all over again.
This is the entry:
menuentry 'FreeBSD, with kFreeBSD kernel' {
insmod part_gpt
insmod ufs2
search --no-floppy --fs-uuid --set=root 53a87fa1e9b6256d
echo 'Loading kernel of FreeBSD kernel ...'
kfreebsd /boot/kernel/kernel
kfreebsd_loadenv /boot/device.hints
kfreebsd_module_elf /boot/kernel/ufs.ko
set kFreeBSD.vfs.root.mountfrom=ufs:ufsid/53a87fa1e9b6256d
set kFreeBSD.vfs.root.mountfrom.options=rw
}
If I could see what actually happens at the grub `boot' I might be
able to fix this, but it doesn't look like there are any other debug
mechanisms for grub apart from `set debug=all'.
I tried to add different flags to the kernel invocation, -v and -d but
nothing happened. The screen goes black and reverts to a normal
grub boot menu.
Are there any mechanisms inside grub to get more debugging
information?
Noel Hunt