grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

How to boot NetBSD and FreeBSD with grub: missing bits for the GRUB manu


From: Emmanuel Kasper
Subject: How to boot NetBSD and FreeBSD with grub: missing bits for the GRUB manual
Date: Thu, 15 Sep 2011 23:59:00 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.16) Gecko/20110818 Icedove/3.0.11

Hello

I found out that altough GRUB supports a rich set of options for the
kfreebsd and knetbsd commands, the GRUB manual was lacking reference on
how to use them. I propose the following text to be added in the section
4.2 Some caveats on OS-specific issues.

Plus I noticed a FIXME in 4.1.1 How to boot an OS directly with GRUB so
I propose an addition for that part (see at end )

I tried to work the FreeBSD part in a OS-agnotic way, so it can apply to
FreeBSD and GNU/kFreeBSD

If this text looks fine, I can re-send in the form of an info patch (
did not want to learn yet another markup language before getting
feedback ... )

I used the following thread to get the needed information before
verifying on my NetBSD and GNU/kFreeBSD machines:
http://forums.freebsd.org/showthread.php?t=5918

Manu






FreeBSD
GRUB can boot a FreeBSD kernel by using
the 'kfreebsd' command. The procedure would look like this:

1. Set the  partition where resides the FreeBSD kernel:

'set root=(hd0,1,a)'

2. Load the kernel

'kfreebsd /boot/kernel/kernel'

3. Load the kernel boot information

'kfreebsd_loadenv /boot/device.hints'

4. Set the root devicepath
'set kFreeBSD.vfs.root.mountfrom=ufs:/dev/ad4s1a'

5. Set any filesystem options to pass
vfs.root.mountfrom.options=rw

6. Finally, run the command 'boot' (see boot).

If you want to use the FreeBSD /boot/loader third-stage bootstrap
program, you
would can do the following:

1. Set the  partition where resides the /boot/loader program:

'set root=(hd0,1,a)'

2. Load /boot/loader
'kfreebsd /boot/kernel/kernel'

3. Finally, run the command 'boot' (see boot)

The list of all available options for the 'kfreebsd' command can be seen by
running 'kfreebsd --help' from the GRUB prompt.






NetBSD
GRUB can boot a NetBSD kernel by using the 'knetbsd' command. Procedure
is as
follows:

1. Set the partition where resides the NetBSD kernel. If NetBSD is installed
on the first partition of your first hard disk, you would need:

'set root=(hd0,1,a)'

2. Load the kernel and specify the root devicepath:

'knetbsd /netbsd --root=wd0a'

3. Finally, run the command 'boot' ( see boot)

The list of all available options for the 'kfreebsd' command can be seen by
running 'kfreebsd --help' from the GRUB prompt.







Multiboot (addition to 4.1.1 )
Booting a multiboot compliant kernel, requires loading the kernel with the
'multiboot' command, and then executing it with the 'boot' command.
An example of very simple but fully compliant kernel, is the Grub
Invaders game,
which you can start this way:

1. Load Grub Invaders with the command 'multiboot'

'multiboot      /boot/invaders.exe'

2. Run the command 'boot' ( see boot)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]