Subject: The 11th NetBSD/SPARC machine [Long]
To: None <port-sparc@sun-lamp.cs.berkeley.edu>
From: - Greg Earle <earle@isolar.Tujunga.CA.US>
List: port-sparc
Date: 03/27/1994 02:24:43
[Warning: kinda long.  A lot of unasked questions brewing for awhile ...]

Well, this post has been festering in my brain for quite a while.  But Damian's
post (and the weekend) finally got me off my arse to post a now-modified
version.  (The other reason is that my wife was in a serious car accident at
the beginning of February; life in general has taken a back seat since then -
much less NetBSD hacking :-( )

Back in mid-February I scrounged up an IPC with 24 Mb, an internal 207 Mb disk
and an external 1.05 Gb disk cum 1/4" QIC-150 tape drive shoebox.  It also had
a GX at the time; I've since swapped it for a CG3 with my "normal" work IPC.
The machine name is "netbsd4me.JPL.NASA.GOV", btw (-:

I thought I would document my experience bringing it up from scratch; i.e.
booting from a SunOS 4.1.3 CD-ROM into miniroot, then FTP'ing Theo's binaries
and installing from there.  In light of the time that has past and Damian's
post, I'll probably not go into details as I would have previously.

Anyway, here is what I recall:

Booting the CD, running "format" to make /, /usr and /usr/src on the external
disk was uneventful.  I then loaded the miniroot and mounted /dev/sd0a onto /a
and started untaring the files.

The first thing that happened was the "cd /dev; ./MAKEDEV std sd0 sd1" in Step
5 glitched on "chown -R bin.bin fd" because the SunOS miniroot doesn't have
"chown".  Later on (after the system was up) a reference to /dev/zero gagged
because the MAKEDEV had a tiny buglet:

        mknod null              c 3 2   ; chmod 666 null
        mknod zero              c 3 12  ; chmod 666 null
                                                    ^^^^

I recall later on thinking that perhaps "pty0" should have also been added to
the above in Step 5.  (See below.)

Other than that, initial installation went without a hitch; so we might want to
consider a README that mentions this alternate/"traditional" method of doing a
fresh install without having to "prime the pump" on an sd1 inside an existing
system.

Upon boot, I recall seeing some obvious and not-so-obvious things:

Obvious:
- No "fd" driver
- No "st" driver
- No "sr" driver
- No "cgsix0" driver (at the time)

Not so obvious:
read: Invalid argument (savecore)
/dev/tty[pqrs]* No such file or directory	(Why I mentioned "MAKEDEV pty0")
inetd[nn]: rstatd: unknown service  \
inetd[nn]: rusersd: unknown service  +-- These came from no /etc/rpc, I think
inetd[nn]: walld: unknown service   /

After the system was up, I immediately noticed (as did Damian) the lack of
/usr/share; the most immediate problem being no /usr/share/misc/termcap and
(for me, in California) no /usr/share/zoneinfo/PST8PDT for /etc/localtime to
point to.  And no man pages.

To make a long story short, the only other things I've noticed during the small
amount of time I've had to play with it (I was out of work for 3 weeks after my
wife's accident, so work pressures haven't afforded me the luxury of playtime)
are

(1) "nvi" was hanging if I enabled "showmatch" and hit, e.g., a closing paren
    [")"]

(2) Like Peter Galbavy, I found that "ps" didn't work for anything except my
    own processes; it just hangs

(3) "Mail" buglet:

netbsd4me:13 # ls -l /var/mail
total 512
-rw-------  1 root  wheel  253072 Mar 26 03:33 root

netbsd4me:14 # whoami
root

netbsd4me:15 # Mail -u root
No mail for root

(4) Mail messages - for each "insecurity output" email I get

-----------------------------------------------------------------------------
Message 2:
From daemon Thu Feb 24 02:01:54 1994
Date: Thu, 24 Feb 1994 02:01:53 -0800
From: Mail Delivery Subsystem <MAILER-DAEMON>
Subject: Returned mail: unknown mailer error 48
To: root

The original message was received at Thu, 24 Feb 1994 02:01:51 -0800
from root@localhost

   ----- The following addresses had delivery problems -----
root  (unrecoverable error)

   ----- Transcript of session follows -----
554 root... unknown mailer error 48

... [etc.] ...

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

(5) The "var.tar" file seems to be missing several directories in "/var"; i.e.
    the daily "cron" job complains about the lack of "/var/msgs",
    "/var/account", and "/var/backups".  In addition, the cron job complains
    about no "/var/rwho" (ruptime check), no "ncheck", and no
    "var/log/setuid.today" file.  The "network" check yields "bus error".  The
    "uucp" check yields "uusnap: not found".  Finally, "sa" isn't found either.

    Oh, and the monthly cron job yielded

Rotating log files:/etc/monthly: 21: Syntax error: end of file unexpected \
(expecting "fi")

Again, given the fact that the binaries are almost 2 months old, I suspect that
a lot of this is old hat by now.  Given that I haven't had the chance to really
use the machine during that time, I'm not too worried about the last few above.
(My only suggestion would be that perhaps Theo could make sure that these
 non-existant directories in /var get made by the next binary var.tar.gz file
he puts out.)

So now I am at the same point as Damian, I guess; so from now on ...

>>	*	On a SPARCstation 1 with 8Mb memory, you get a panic
>>		after what appears to be inetd's startup.  It
>>		is maybe because of memory demands that it has run out
>>		of thinking room, or could it be the revision of the
>>		EPROM (1.3) or the board itself?

I don't think this is a boot PROM problem.  If the kernel booted, it's not a
boot PROM problem (-:

>>The following needs to be added and highlighted in the install notes:
>>
>>** You must have the boot drive set to sd0 (ID=3).  While it will
>>** boot from any drive, it panics because this kernel does not appear to
>>** be able to use a root file system and swap on anything other than sd0.
>>
>>Correct me if I am wrong, but sd1 (my original choice, because sd0 has a
>>working copy of SunOS on it) would not work for me.

I think installing from CD-ROM is a viable workaround, unless you're trying to
have a machine with a bootable sd0 for SunOS and a bootable sd1 for NetBSD ...

>>The only real drama was being able to log in and while root has no password,
>>you cannot log in if root has no such item - and in single user mode the
>>command "passwd root" tells you to get lost.  There is also no
>>/usr/share/misc/termcap - actually no /usr/share at all - was this a
>>deliberate omission or an oversight?  Unless I have missed something, the
>>following needs to be added to the instructions:
>>
>>*	grab a termcap with a Sun entry from elsewhere and
>>	copy this ( while you are in single user mode ) as in
>>
>>		mkdir /usr/share
>>		mkdir /usr/share/misc
>>		cp file /usr/share/misc/termcap

I think this could be dealt with by providing a binary "usr.share.tar.gz".

I solved the "Can't password the root account in single-user mode" by copying
the encrypted password field from my normal work IPC.  Seemed easier ...

>>My few questions are now:
>>
>>*	As this is 0.9a, where can one find the sources that
>>	correspond to how it was built?  What relationship
>>	does this stuff have to NetBSD-current?  Apart from
>>	the 2 page readme, are there any other notes on this
>>	version and how things work, what has been done,
>>	what does not work, what work needs to be put in,
>>	what the relationship to the PC-based work is, etc.?