2008-02-04
The origins of /usr/share
A modern Unix system carries around with it all sorts of historical
relics. One of them is /usr/share
, which
was a relic of another era until recently (when multi-architecture
machines started appearing).
Once, by now long ago, disk space was a lot more limited and heavily NFS dependent networks were much more common. Because disk space was so scarce, you didn't put big locally-built programs like TeX or Emacs or the latest X Windows on every machine's disk; generally you put them in one place and NFS mounted them on everything. Also, it wasn't uncommon to be running machines of multiple architectures, so you'd need to build these programs for several architectures.
A lot of programs have a bunch of files that are the same across all architectures. When you don't have much disk space, the last thing you want to do is have more than one copy of the same thing sitting around. This pushed the makers of free software into packaging their systems so that things could be split up this way, and the idea started spreading.
Although I'm not sure, I think that /usr/share
itself first appeared
in SunOS, due to Sun's introduction of the Sun 4. Diskless computers
were still reasonably popular, and being able to have only one copy of
half of /usr
on the NFS server was an obvious and attractive thing.
(Sun wasn't the only Unix vendor supporting multiple architectures, but I seem to remember that they were the one that took the issues most seriously, partly because they'd put a lot of work into supporting diskless machines.)