[TUHS] The origin of /home

Norman Wilson norman at oclsc.org
Thu Oct 11 00:43:41 AEST 2018

Dave Horsfall:

  Before I started using /home (Slowaris had yet to appear), I used /u/* 
  instead (I didn't want to pollute /usr with home directories).


I'm late to the party, but I'll chime in too:

The first UNIX system I ever used, ca. 1980, had users' home
directories in /u.  I suspect it was that way (as suggested
in some earlier messages) just for storage management: separate
file system from /usr.

I've carried /u around with me ever since to other systems
I've set up from scratch, except in my home environment
where I've made a radical departure: everything that isn't
part of the base OS is in a tree rooted at /con, so home
directories are /con/u.  /con was `constant,' inspired
by /var, meaning stuff that should be preserved when the OS
is reinstalled--everything else should come from installation
media or configuration management.

But in any case there's nothing especially novel about moving
users' home directories out of /usr, and since it's UNIX,
nothing that says there has to be any standard at all.  On
the systems I am currently paid to help run, most users have
home-directory names like /h/u12/c4/00/c4ntest.  There is no
attempt to glue together a single name hierarchy; we have in
excess of 17000 users so that would be something of a mess.
(I guess enormous directories aren't the resource pigs they
used to be, though symlinks are just as bad as they have
ever been.)  There's the ~user shell syntax for those who like
that; I don't, but I have a little shell script in my personal
bin directory so I can do things like ls `home c4ntest`; it all
just works.

I once thought of writing a paper entitled `/usr and /etc
considered harmful,' in which I would have proposed:

a.  It no longer matters a whit whether the (real) root file
system can fit into a 5MB slice of the disk or the like, so
just merge everything that spilled into /usr in the tiny-disk
days back into the root where it belongs.
b.  /etc is largely junk.  Executables have long since moved
into /sbin.  Pretty much everything else that's there belongs
(according to the original scheme, not the latter-day complications
inflicted by those who didn't understand) in /lib.

Unfortunately all the quick hacks and poorly-considered tweaks
of the past have long since been cast in stone by widespread
convention, so it's fruitless to try to clean any of this up.

Norman Wilson
Toronto ON

More information about the TUHS mailing list