Subject: Re: diskless(8) vs. NetBSD
To: None <current-users@NetBSD.ORG>
From: Greg A. Woods <woods@most.weird.com>
List: current-users
Date: 11/23/1997 00:00:52
[ On Thu, November 20, 1997 at 18:20:31 (+1100), Giles Lean wrote: ]
> Subject: Re: diskless(8) vs. NetBSD 
>
> Please do.  I've been meaning for some time (very low priority,
> unfortunately) to add i386 specific information, so perhaps a general
> cleanup can be done for 1.3-RELEASE.

I can't promise that I'll have time to look at this seriously before the
new year....

> > I've tried adding a "gateway=204.92.254.5" entry to my
> > /etc/bootparams
> 
> Try
> 	gateway=204.92.254.5:
> 
> The colon is required.

Grrrr.....  OK.  Yes this seems to help.  I realize that rpc.bootparamd
isn't the wold's smartest program, but this seems a little rediculous.
Chalk it up to yet another documentation bug, at best, I guess....

> > A second minor but extremely time-consuming problem was that
> > /etc/bootparams seems unable to support truely generic continuation
> > lines like the SunOS version does (and though the manual page makes this
> > claim and gives an example of using continuation lines).
> 
> Continuation lines worked in 1.1; what errors did you see?  (I don't
> have a 1.3 server, yet.)

Most notably they seem to require white space before the backslash.
This is not true on SunOS and clearly not intuitive, esp. when you see
the kernel print a trailing backslash on the root mount point name and
then hang when trying to find the swap mount point.

Again more brain damage from an old and decrepid little program.

One last feature it sorely lacks is the ability to re-read its config
file on a SIGHUP (and of course it should write its pid to /var/run too).

> > Finally I found it an extremely time-consuming and error prone procedure
> > to build the client root directory.
> 
> The tasks are approximately:
> 
> - create the root filesystem and export it
> - create a swap area and export it
> - load the root filesystem with files from the binary distribution
>   that install into /, /etc, /sbin, /bin and (optionally, depending
>   on setup) /var
> - create mount points for any other filesystems
> - edit files in /etc as for any other installation
> 
> In my mind this does not add up to "extremely time consuming and error
> prone procedure".

Given that the procedure requires at most a very few questions to be
answered it's very frustrating to find that even someone as expert as
myself needs to spend as much as a couple hours when other silly things
like the rpc.bootparamd oddities get in the way too.

Yes, I could/should write an installclient script.  But I'm too busy
just now with more pressing things.

It would be best to have a list of just exactly those files necessary
for a diskless machine which could then be used to create a prototype
from either the current system or from a 'make snapshot' DESTDIR.  Then
in addition it would be nice to have some /etc/* files that are
appropriately defaulted for your average diskless client situation (such
as defaulting to having full NFS client support turned on (which might
even include NTP), most other services turned off, etc.

-- 
							Greg A. Woods

+1 416 443-1734      VE3TCP      <gwoods@acm.org>      <robohack!woods>
Planix, Inc. <woods@planix.com>; Secrets of the Weird <woods@weird.com>