Subject: re: Diskless boot (finding root & swap)
To: None <gwr@mc.com, rls@zeus.id.net, gorgonio@fee.unicamp.br, sreiz@aie.nl,>
From: None <cagney@highland.oz.au>
List: tech-kern
Date: 05/09/1994 11:53:42
[CC is to tech-kern, hope this is ok]

Hi,

in current-users@sun-lamp ... gwr@jerico.mc.com (I hope) wrote:

>The current NFS mount_root implementation uses BOOTP to get the
>path names for root and swap.  In fact, it kind of misuses the
>"boot file name" part of the BOOTP response packet to get it.
>The client sends a BOOTP request with "root" as the boot file
>name, and expects the reply to have something like:
>	"/export/myclient/root"
>as the boot file name.  The client then sends another request
>with "swap" as the boot file and expects something like:
>	"/export/myclient/swap"
>as the boot file name.  Not all bootp servers like this.
>The bootp server I am maintaining (from CMU originally, and
>now up to version 2.3.7) did not until recently allow for
>the boot-file-name to change from one request to another.
>(Time to check in the latest version, I guess...)

Is the `misuse' of the bootp request packet needed.
If bootpd were to respond with a kernel path of the form:

	/export/root/myclient/vmunix

The client will then `know' that its root file system must be:

	/export/root/myclient

To me, I consider this to be the most common case.

On the down side, configuring tftpd could be more tedious.  The admin would
have to either setup each path in /usr/tftpdir (/tftpboot) or modify the
config file /etc/tftpd.conf. (1)(2)

For swap, does it need to be specified so early?  Once a root parition is found
the rc files could think up/mount a swap parition explicitly(3).

It's preferable to avoid the need to install customized (bootp) daemons.

			Andrew (cagney@highland.oz.au)


------

(1) An NFS kernel load would not suffer this problem.

(2) As a UNIX admin I'd still prefer this over re-installing bootpd after
    every comercial OS upgrade.

(2) Hmm, NetBSD 0.9 didn't allow nfs swap to be specified from the command
    line....

------------------------------------------------------------------------------