All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: How to boot NetBSD and FreeBSD with grub: missing bits for the GRUB manual
@ 2011-09-29  8:58 Emmanuel Kasper
  0 siblings, 0 replies; 3+ messages in thread
From: Emmanuel Kasper @ 2011-09-29  8:58 UTC (permalink / raw)
  To: phcoder; +Cc: grub-devel

In the meantime I moved this documentation to the Ubuntu wiki at
https://help.ubuntu.com/community/Grub2 Other Os

I updated it with the hints you provided ( expect for the FreeBSD
$prefix I don't have a system to test anymore )

Manu


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: How to boot NetBSD and FreeBSD with grub: missing bits for the GRUB manual
  2011-09-15 21:59 Emmanuel Kasper
@ 2011-09-28 21:08 ` Vladimir 'φ-coder/phcoder' Serbinenko
  0 siblings, 0 replies; 3+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2011-09-28 21:08 UTC (permalink / raw)
  To: grub-devel

[-- Attachment #1: Type: text/plain, Size: 3528 bytes --]

On 15.09.2011 23:59, Emmanuel Kasper wrote:
> 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)'
>
you use the device notation from an old version. This is not supported
anymore. Also it's recommended to use UUIDs
> 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
You forget kFreeBSD prefix.
> 6. Finally, run the command 'boot' (see boot).
>
This is for shell. Explaining how to create a menuentry is more useful
> 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)
>
I wouldn't recommend this. It's mostly chainloading.
> 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'
>
There is no reason to add .exe here.
> 2. Run the command 'boot' ( see boot)
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>


-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* How to boot NetBSD and FreeBSD with grub: missing bits for the GRUB manual
@ 2011-09-15 21:59 Emmanuel Kasper
  2011-09-28 21:08 ` Vladimir 'φ-coder/phcoder' Serbinenko
  0 siblings, 1 reply; 3+ messages in thread
From: Emmanuel Kasper @ 2011-09-15 21:59 UTC (permalink / raw)
  To: grub-devel; +Cc: Grégoire Sutre

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)



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-09-30 14:14 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-29  8:58 How to boot NetBSD and FreeBSD with grub: missing bits for the GRUB manual Emmanuel Kasper
  -- strict thread matches above, loose matches on Subject: below --
2011-09-15 21:59 Emmanuel Kasper
2011-09-28 21:08 ` Vladimir 'φ-coder/phcoder' Serbinenko

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.