Discussion:
Booting a machine over the network without pxe.
(too old to reply)
Josef Karthauser
2003-09-02 20:55:01 UTC
Permalink
Does anyone have any experience of booting a machine over the
network, like pxeboot, but without running PXE on a network card.
I imagine that it should be possible to load pxeboot at the boot:
prompt and have everything just work.

I could really do with booting my laptop into -stable, where it's only
got -current installed. I do however have a -stable server on site with
plenty of disk space. It would be really cool to remote boot of that
via NFS mounts, etc.

Joe
--
Josef Karthauser (***@tao.org.uk) http://www.josef-k.net/
FreeBSD (cvs meisterk admin and hacker) http://www.uk.FreeBSD.org/
Physics Particle Theory (student) http://www.pact.cpes.sussex.ac.uk/
================ An eclectic mix of fact and theory. =================
Josef Karthauser
2003-09-02 21:09:51 UTC
Permalink
Post by Josef Karthauser
Does anyone have any experience of booting a machine over the
network, like pxeboot, but without running PXE on a network card.
prompt and have everything just work.
I could really do with booting my laptop into -stable, where it's only
got -current installed. I do however have a -stable server on site with
plenty of disk space. It would be really cool to remote boot of that
via NFS mounts, etc.
I should have said, my network card is an aue (usb) device which cuts
etherboot out of the equation.

Joe
--
Josef Karthauser (***@tao.org.uk) http://www.josef-k.net/
FreeBSD (cvs meister, admin and hacker) http://www.uk.FreeBSD.org/
Physics Particle Theory (student) http://www.pact.cpes.sussex.ac.uk/
================ An eclectic mix of fact and theory. =================
Diomidis Spinellis
2003-09-03 08:13:03 UTC
Permalink
Post by Josef Karthauser
Post by Josef Karthauser
Does anyone have any experience of booting a machine over the
network, like pxeboot, but without running PXE on a network card.
prompt and have everything just work.
I could really do with booting my laptop into -stable, where it's only
got -current installed. I do however have a -stable server on site with
plenty of disk space. It would be really cool to remote boot of that
via NFS mounts, etc.
I should have said, my network card is an aue (usb) device which cuts
etherboot out of the equation.
I have used picobsd(8) to load a bare bones kernel and some
configuration files on an old Pentium-100 16MB laptop using a floppy
disk. rc.local then NFS mounts the real directories over the net:

mount spiti.spinellis.gr:/usr /usr
mount spiti.spinellis.gr:/home /home
rm bin sbin
/stand/mkdir bin sbin
/stand/mount_nfs spiti.spinellis.gr:/bin /bin
/stand/mount_nfs spiti.spinellis.gr:/sbin /sbin

It took me about two days to jugle the binaries in a way that allowed
the initial boot to view the network via the PCMCIA card and to
configure the system remove picobsd remnants once the large filesystems
were available over NFS. At some point during the boot process you feel
as if a straightjacket is removed: you have all your binaries and a lot
of disk space available. Before that stage you have to be very careful
with how you allocate the floppy's disk space.

Diomidis - dds@
Dirk-Willem van Gulik
2003-09-02 21:25:58 UTC
Permalink
Post by Josef Karthauser
Does anyone have any experience of booting a machine over the
network, like pxeboot, but without running PXE on a network card.
The floppies of etherboot (see ports) work just fine. Or use the
bootloader on your IDE disk.

Dw
Tim Kientzle
2003-09-03 17:17:47 UTC
Permalink
Post by Josef Karthauser
Does anyone have any experience of booting a machine over the
network, like pxeboot, but without running PXE on a network card.
prompt and have everything just work.
pxeboot requires that you have a PXE BIOS available.
Loosely speaking, PXE is three different things:
* A BIOS that provides basic network operations,
* A "multicast" TFTP that is designed for rapidly
network booting very large numbers of machines
simultaneously. (Few people use this; fewer
people need it.)
* A network boot model in which the PXE BIOS loads
a "network boot loader" that then uses the PXE
BIOS services to load and boot an OS kernel.

The network boot model for PXE closely mirrors the
traditional model for booting a PC from hard disk:
BIOS loads boot loader that uses BIOS services to load OS.

Note that without the PXE BIOS, the 'pxeboot' program
is useless, since it relies on the PXE BIOS services.
If you want to load the kernel over the network, you
need something that knows how to talk to your network adapter.
If it ain't in ROM, it has to come from somewhere else.

However, there is another approach. You can do a
"partial netboot" by loading the kernel from disk
(maybe even a floppy?) and then doing a classic netboot
after that. Just enable the BOOTP and BOOTP_NFSROOT options
in the kernel and load it from disk. The rest is "just"
server configuration. Hint: If you statically compile everything
necessary into your kernel, this is all much simpler.

Good luck,

Tim Kientzle
omestre
2003-09-09 14:23:49 UTC
Permalink
On Tue, 2 Sep 2003, Josef Karthauser wrote:

Here is How i have made this task:

http://www.freebsd.org/cgi/query-pr.cgi?pr=54383

I guess that is exactly what you want. I have posted a
PR, and maybe the FreeBSD devel team "think about it". :)

[]'s

Leal
Date: Tue, 2 Sep 2003 21:54:18 +0100
Subject: Booting a machine over the network without pxe.
Does anyone have any experience of booting a machine over the
network, like pxeboot, but without running PXE on a network card.
prompt and have everything just work.
I could really do with booting my laptop into -stable, where it's only
got -current installed. I do however have a -stable server on site with
plenty of disk space. It would be really cool to remote boot of that
via NFS mounts, etc.
Joe
--
FreeBSD (cvs meisterk admin and hacker) http://www.uk.FreeBSD.org/
Physics Particle Theory (student) http://www.pact.cpes.sussex.ac.uk/
================ An eclectic mix of fact and theory. =================
***@sdf.lonestar.org
SDF Public Access UNIX System - http://sdf.lonestar.org
John-Mark Gurney
2003-09-10 05:57:42 UTC
Permalink
Post by omestre
http://www.freebsd.org/cgi/query-pr.cgi?pr=54383
I guess that is exactly what you want. I have posted a
PR, and maybe the FreeBSD devel team "think about it". :)
boot.netif.hostname already exists as kern.hostname. Why create yet
another knob for the same value?

Why don't you make it parse nfsroot.* from vfs.root.mountfrom? That way
you can specify it as nfs:host:/path.
--
John-Mark Gurney Voice: +1 415 225 5579

"All that I will do, has been done, All that I have, has not."
omestre
2003-09-11 14:28:06 UTC
Permalink
Post by John-Mark Gurney
boot.netif.hostname already exists as kern.hostname. Why create yet
another knob for the same value?
I have used the structures that already exists.. for bootp or
pxe purposes...
Maybe you did not understand my patch (terrible english :), but I'm using
the loader.conf file to set that variables, and that ones (for bootp/pxe)
have a pattern, i think that follow it is nice. The variables are (i
guess) for autoconfiguration task (in boot)... So boot.netif.hostname is
not the same as kern.hostname.
But this decision for me is irrelevant, the devel man will decide what is
better. :))
Thansk for your motivation.

[]'s
Post by John-Mark Gurney
Why don't you make it parse nfsroot.* from vfs.root.mountfrom? That way
you can specify it as nfs:host:/path.
--
John-Mark Gurney Voice: +1 415 225 5579
"All that I will do, has been done, All that I have, has not."
_______________________________________________
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
***@sdf.lonestar.org
SDF Public Access UNIX System - http://sdf.lonestar.org
omestre
2003-09-15 17:38:18 UTC
Permalink
On Sun, 14 Sep 2003, John-Mark Gurney wrote:

Well, i would be very happy with my patch in FreeBSD project!
That without say that a "real" programmer would take care of the patch
:), and i will just use the features in my servers.... :))
I don't know what should i do. I did think that after i submit a PR, the
devel men will fix any problems to fit the FreeBSD project needs. Sorry,
but is my first PR... Shall i fix it?? Well, shall i change the
boot.netif.hostname to kern.hostname? Because if so, it's very simple in
my patch, because is JUST a variable. For my patch do not cares the
variable name. Do you know what i mean? I've just put that name because i
did think that i was making a good thing. :))
Or maybe you can do that? Tell me what i must to do, and i will make the
changes. I don't know how to make a new "OPTION" in FreeBSD kernel to my
patch, you can help me?
Thanks again, sorry about the newbie questions, but i really don't know
the procedures.

Leal
Date: Sun, 14 Sep 2003 22:55:31 -0700
Subject: Re: Booting a machine over the network without pxe.
Post by omestre
Post by John-Mark Gurney
boot.netif.hostname already exists as kern.hostname. Why create yet
another knob for the same value?
I have used the structures that already exists.. for bootp or
pxe purposes...
No, I did not misunderstand.
Post by omestre
Maybe you did not understand my patch (terrible english :), but I'm using
the loader.conf file to set that variables, and that ones (for bootp/pxe)
have a pattern, i think that follow it is nice. The variables are (i
I understood your patch fine, and just so you know, your english isn't
terrible.. I know many native english speakers who write more
incomprehensible messages than this...
Post by omestre
guess) for autoconfiguration task (in boot)... So boot.netif.hostname is
not the same as kern.hostname.
But this decision for me is irrelevant, the devel man will decide what is
better. :))
Well, I am a developer, and would like to not see this patch go in till
it is fixed. The reason I say this is that soon, we'll have another
subsystem that sets the hostname for some reason, and they'll say, oh,
the bootp subsystem has it's own copy of the hostname, and soon, we might
have 5+ copies in the system, and then people won't know what one to us
or which one is the most up to date or "real" hostname of the system.
Ok, can you answer me what uses this variable? Is this just storage
of information obtained from bootp/PXE? Do you end up setting kern.hostname
from it?
Is there a good technical reason in your opinion for keeing it in the
"bootp" tree.
--
John-Mark Gurney Voice: +1 415 225 5579
"All that I will do, has been done, All that I have, has not."
***@sdf.lonestar.org
SDF Public Access UNIX System - http://sdf.lonestar.org

Loading...