All of lore.kernel.org
 help / color / mirror / Atom feed
From: Emmanuel Kasper <emmanuel@libera.cc>
To: grub-devel@gnu.org
Cc: "Grégoire Sutre" <gregoire.sutre@gmail.com>
Subject: How to boot NetBSD and FreeBSD with grub: missing bits for the GRUB manual
Date: Thu, 15 Sep 2011 23:59:00 +0200	[thread overview]
Message-ID: <4E727524.2010206@libera.cc> (raw)

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	other threads:[~2011-09-16 13:41 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-15 21:59 Emmanuel Kasper [this message]
2011-09-28 21:08 ` How to boot NetBSD and FreeBSD with grub: missing bits for the GRUB manual Vladimir 'φ-coder/phcoder' Serbinenko
2011-09-29  8:58 Emmanuel Kasper

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E727524.2010206@libera.cc \
    --to=emmanuel@libera.cc \
    --cc=gregoire.sutre@gmail.com \
    --cc=grub-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.