Path: utzoo!utgpu!jarvis.csri.toronto.edu!daemon
Newsgroups: comp.sys.dec
From: cks@white.toronto.edu (Chris Siebenmann)
Subject: Re: DECstation 3100 Kernel size and Diskless Operation
Message-ID: <89Sep25.235807edt.30815@snow.white.toronto.edu>
Sender:
Organization: Ziebmef home away from home
References: <1544@esunix.UUCP>
Date: 26 Sep 89 03:59:15 GMT
[Caution: some of this is derived by extension from what I did for
diskless Vax clients. The important bits work, though; we brought our
DS3100s up diskless and then scribbled on their local disks.]
With a bit of trickery, you don't actually HAVE to have a huge
/dlenv0 partition on your server; you can reuse your server's /usr
(regardless of what you do, you only need one /dlenv0 for all your
clients(*)). You can even make /dlenv0 and /dlclient0 live in the same
(non-root) partition; it's more convenient if you make /dlenv0 the
real partition mount point, although not 100% necessary.
To do this, do the following:
- Make sure your server has a /var, and that /usr/var is a symlink to
it. If it doesn't, make one by copying /usr/var to /var and changing
it to a symlink; you probably want to try and put /var on it's own
partition.
- decide where you're going to put the diskless client support
partition(%). Let's call it /diskless. Make /dlenv0 and /dlclient0
be symlinks that point into it.
- use /etc/dms.new to load the minimal setup into /dlenv0/root0.mips
(base plus kernel plus networking, I think, but it's been a while --
just pick no optional stuff). You may have to either circumvent the
check for enough free space if /dlenv0 is a symlink to someplace, or
you can just temporarily mount the disk partition on /dlenv0 instead
of it's eventual destination; that's what I did here.
[You *might* be able to get away with making /dlenv0/root0.mips a
symlink to /; I'm not sure.]
- Configure your diskless client through /etc/dms.new, following all
the instructions.
- STOP! Make sure that /dlclient0/.root is exported read-write
and with the "-r=0" option to the client. This will probably require
you to fix the /etc/exports line for the mount point where
/dlclient0/.root lives (/diskless in our example).
- Make sure /usr on the DS3100 server is exported to the client.
- edit /dlclient0/.root/etc/fstab and change the mount of /usr
from /dlenv0/root0.mips/usr@ to /usr@. While you're
at it, fix up things like the hosts file and svcorder to match the
server's. You may also need to add /etc/route invocations in the
client /etc/rc.local.
There! You should be done; boot the new client.
Disclaimer: Remember your software licensing; make sure all your
clients are licensed for the software on your server. Use
this procedure to save disk space, not to bypass licensing
restrictions.
*: Assuming all clients are licensed for all the software.
%: You can probably put /dlenv0 and /dlclient0 somewhere in the middle
of a partition (say /var/diskless, where /var is a partition), but
it's trickier and I haven't tried it.
--
"I shall clasp my hands together and bow to the corners of the world."
Number Ten Ox, "Bridge of Birds"
Chris Siebenmann ...!utgpu!{ncrcan,ontmoh!moore}!ziebmef!cks
cks@white.toronto.edu or ...!utgpu!{,csri!}cks