Grub and disk partitioning
Posted: Fri Jun 05, 2015 4:30 pm
Just made a few tests using grub bootloader, with alternate success and failures.
- grub-install failed on a GPT partitioned disk, with the following error:
http://en.wikipedia.org/wiki/BIOS_boot_partition
The current partitioning as implemented from "partition editor" and "gbi" aren't compatible with grub2 booloader.
Just something to consider in case of future adoption of grub as alternate boot loader.
~~~
- grub-install succeed on a MBR partitioned disk
I was able to boot using two methods:
- booting the loader
- booting the kernel
booting the kernel directly, including loading optional modules which also succeed:
Note that in the above example, loading of drm2.ko failed because of missing dependencies, like when using loader.conf grub loader doesn't automatically take care of dependencies.
- grub-install failed on a GPT partitioned disk, with the following error:
Grub require a BIOS-BOOT partitiion, better described here:# grub-install /dev/ada0
/usr/local/sbin/grub-bios-setup: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
/usr/local/sbin/grub-bios-setup: error: embedding is not possible, but this is required for cross-disk install.
http://en.wikipedia.org/wiki/BIOS_boot_partition
The current partitioning as implemented from "partition editor" and "gbi" aren't compatible with grub2 booloader.
Just something to consider in case of future adoption of grub as alternate boot loader.
~~~
- grub-install succeed on a MBR partitioned disk
I was able to boot using two methods:
- booting the loader
- booting the kernel
Code: Select all
insmod ufs2
menuentry "GhostBSD Loader" {
set root="(hd0,msdos1,bsd1)"
kfreebsd /boot/loader
}
Code: Select all
insmod ufs2
set timeout=8
menuentry "GhostBSD Kernel" {
set root="(hd0,msdos1,bsd1)"
kfreebsd /boot/kernel/kernel
kfreebsd_loadenv /boot/device.hints
kfreebsd_module_elf /boot/kernel/ums.ko
kfreebsd_module_elf /boot/kernel/crypto.ko
kfreebsd_module_elf /boot/kernel/aesni.ko
kfreebsd_module_elf /boot/kernel/geom_eli.ko
kfreebsd_module_elf /boot/kernel/nullfs.ko
kfreebsd_module_elf /boot/kernel/geom_uzip.ko
kfreebsd_module_elf /boot/kernel/drm2.ko
set kFreeBSD.vfs.root.mountfrom=ufs:/dev/ada0s1a
set kFreeBSD.kern.geom.eli.visible_passphrase=2
set kFreeBSD.hw.memtest.tests=0
set kFreeBSD.grub.platform=$grub_platform
set kFreeBSD.vfs.zfs.arc_max=128M
set kFreeBSD.kern.vty=vt
set kFreeBSD.kern.geom.label.disk_ident.enable=0
set kFreeBSD.kern.geom.label.gptid.enable=0
set kFreeBSD.kern.geom.label.ufsid.enable=0
}