Writing

Feed Software, technology, sysadmin war stories, and more.

Sunday, August 4, 2019

My take on a BSD/386 filesystem's contents in 1995

While grepping around some of the dustier corners of my home directory earlier this evening, I turned up some documentation for the "first real Unix box" I ever ran for other people (after inheriting it from an earlier admin). That is, this was a machine that had Actual Users on it who were using it to (try to) accomplish stuff - run gopher, telnet out to a MUD, that sort of thing. (Hey, it was quite a while ago).

It's interesting to see what my understanding of a BSD/386 filesystem looked like back then. This brings up a new kind of navel gazing I hadn't thought of before: reading your own documentation a few decades later to see if you've learned anything since then.

This is something I was asked to write up by the teacher who was nominally in charge of the box at my high school. I was the one actually running it (said so right on the "course" description), but they needed an actual teacher to keep an eye on things. He asked me to explain what was on the disk in broad strokes, and this document is the result.

The date on this is August 28, 1995. That I found it in the same month all these years later is just a nice 1-in-12 coincidence. Don't read too much into it.

This was originally a plain text file with just spaces for indentation. Since that would fall apart really badly here in the HTML world, I've converted it to a series of nested ULs for your consumption.

I'm pretty sure a lot of this is/was just me propagating various incorrect notions, but let's just see how bad it was, really. Navel gazing mode: ON FULL BLAST.

And now, some extremely freeform reactions based on reading this for probably the first time in 24 years:

I'm pleased that I was reminding people that root should not log in even back then. Today, it might involve the word "evil".

I guess this is before I had been sufficiently chastised by the then up-and-coming Linux weenie crew for calling it "X-windows" and switched over to either "the X Window System" (no S!), X11, or just "X". Why the drama? Because "Windows" was the devil!!11! It was the 90s, what can I say?

Speaking of Windows, that date of this file looked familiar, so I went and looked. Sure enough, it's four days after the release of Windows 95. Start me up, indeed. (Did they ever listen to the other verses of that Rolling Stones song? You're doing what to a dead man?)

I'm pretty sure I didn't count myself in the set of C programmers back then based on the comments for /usr/include and /usr/lib.

/usr/demo? Emulating DOS? I sure hope I never actually tried that on that box. It had enough to do as a mere 486DX2-66 already.

Apparently the home directories weren't on their own device initially, hence /usr/home. Then, when they got their own drive, that was mounted on /home and /usr/home became a symlink to it. This happened before I took over the box.

I had a friend back then who loved labeling things 'sassy', kind of equivalent to "awesome" or "badass" or "lit" or whatever else we use today. They were namechecked in the original document but are parameterized here for their privacy.

This file suffers from the problem of "I hope you know how to look up some of this crap" when it says things like "fonts for the 'groff' program". If the reader doesn't know what groff is, and has no idea how to use man/whatis/apropos or similar, they're not going to learn much from this thing. They might intuit that it has something to do with fonts, but what?

I apparently had no idea what locales were used for back then, and thought cron was "wonderful". Ignorant bliss!

I hung a lantern on the whole love it, hate it thing with Sendmail. Just think of how many remote root exploits came through that giant swinging barn door in the years after this was written. Where are the time travel scifi novels about going back in time and rooting every single machine you see because you know all of the holes that won't be found for years or even decades? "Oooh, it's only 1987 so the Morris worm hasn't happened yet! Hello WIZ and fingerd overflow!"

As for "files included in a BSDI distribution", ermmm, isn't that damn near everything on the disk except for the stuff the users created? It's a poor description for /usr/src at any rate since it glosses over the whole notion of source code entirely.

My first reaction to /usr/ucb was a "wow, that's old". My second reaction was something vague about improv. Yes, and...

Did you notice that it's /usr/var on this box as the canonical location? I had to double-check the document to be sure when I hit that part of it. Crazy. Sure enough, down at the bottom, there's /var, pointing over at /usr/var. I guess the notion of "try to set up your /usr so it could theoretically be mounted read-only" never entered the picture. Nobody tried to do "common RO /usr over NFS" here, clearly.

Kernel hackers would care about what's in /usr/var/db? What?

Regarding /usr/var/emacs, technically the participants are the (human) users> of the various editors. The editors themselves are just standing there watching people do their performance art. Funny, though, that there's no "vi" path anywhere, right? (Save your venom -- I used pico back then, and I still use nano today, including this right now).

I think /usr/var/games died because "we don't want students playing games on the school equipment". You know, because all of those ASCII orcs and kobolds are taking up SO much memory and CPU time. Of course, the older, more sensible me says "it's so the kids focus on their school work instead of leveling up in dungeons".

We had some user mailboxes which were "quite large" by my own admission, and right next door, we had nothing configured in /var/quotas. What an amazing coincidence!

Usenet, "presently unused". Did I think we were going to get newsgroups flowing in, whether via UUCP or NNTP? On a high school machine? If the powers that be didn't like nethack and rogue, what would they think of alt.2600 and worse? Yeah, that was never going to happen.