[TUHS] The origin of /home

Dan Cross crossd at gmail.com
Fri Sep 28 00:47:21 AEST 2018


On Thu, Sep 27, 2018 at 8:11 AM Cág <ca6c at bitmessage.ch> wrote:

> The earliest I've found to be in the FHS from '94. Are there any earlier
> examples of a home directory being at /home instead of /usr/$(user)? Are
> there any current Unix systems that don't use /home by default (except
> OSX)? Does anybody here do it intentionally? Also, what was the
> rationale of moving the directory to /home?
>

Naming on Unix (and derived systems) is one of those things that has always
had different schools of thought applied to it.

As has been pointed out, the original place for what we now refer to as
"home" directories was /usr, though this may not be entirely accurate: it's
my belief that PDP-7 Unix had separate directories for each user, but I
don't think these were nested under a common 'usr' directory. Someone
please correct me if I'm wrong. The original impetus for moving things
around was surely space considerations on early disk devices: Not only was
space limited, but filesystems couldn't span devices (in the /dev sense)
and often *partition* sizes on a single volume were fixed by the driver for
the underlying storage device. In such a rigidly defined world, varying
conventions would necessary evolve to work around the inevitable
limitations, particular in sites with lots of users like universities and
production-focused corporate groups, including the degeneration of `/usr`
as purely holding user directories. One can easily imagine the
conversation: "we're out of room on the root filesystem and I can't install
this new program in /bin..." "Hmm. Well, we've got space in /usr: create
/usr/bin and we'll fix up the difference in the shell by incorporating some
notion of a search path for binaries." Similarly with lib, man, and all the
rest of it. It's interesting that now /usr is most often devoid of user
data; the intent behind the name seems to be justified after the fact by
asserting that it contains programs, libraries and other data of interest
to users (as opposed to administrators).

That explains why other things starting encroaching and eventually took
over on /usr, but I think the provenance of "/home" specifically relates to
an etymological question. At some point, the "user's directory" as  denoted
in /etc/passwd became known as the "home directory." If that was common
vernacular by the time that `/home` came around as a convention, then it
seems a logical name stemming from that usage. The more intriguing
possibility from the antiquarian point of view is whether someone coined
"/home" and then THAT led to the rise of the "home directory" nomenclature.
man(5) on 7th Edition calls that field the user's "initial working
directory." The first time I see it called "home directory" in my cursory
search is in 4.3 Reno.

I intentionally eschew /home on a few systems. 4.4BSD had a convention of
placing user home directories in /a, /b, etc. 4.4BSD-Lite also had
/var/users. Both of which I occasionally use.

        - Dan C.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20180927/6cfb59d8/attachment.html>


More information about the TUHS mailing list