[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: /run/, resolvconf and read-only root

On Mon, May 05, 2003 at 09:36:41PM +0200, Tollef Fog Heen wrote:
| / is messy enough as it is.  Adding another directory increases
| messiness, it doesn't decrease it.

Exactly!  We should move /bin and /lib into /usr/bin and /usr/lib
(people with /usr mounted over a network can just use /linuxrc and
initrd; they're a minority anyway); /root can move to /home/root [1] and
/proc can be mounted in /etc/processes instead.  To get rid of the
tab-expansion conflict with /vmlinuz and /var, we can move /vmlinuz into
/boot.  Heck, /boot contains a couple of configuration files
(/boot/config and /boot/menu.lst) on my machine, we might as well move
it into /etc/boot.  That way we're keeping with the spirit of the FHS.

In accordance with tradition, /home will be moved to /usr/users and
/sbin into /etc.  While we're at it, we might as well merge /usr and
/var because then it'll be consistent with the Unix Way of everything
going into one directory with an inappropriate name; also, people who
really /need/ /var to be separate (because they're mounted /usr
read-only or something-- bloody peculiar if you ask me, Debian has no
business making their life easier) can use symlinks.  It's not going
against the FHS because the FHS says that changes will reflect what
distributions are currently doing, not t'other way 'round.

So now / only contains /dev, /etc, /mnt, /tmp and /usr.  Only five
directories!  What sheer brilliance!

But after all this, / still has too many subdirectories for the purists
amongst us. I propose that all directories currently under / should be
moved to /stuf [2] to keep the clutter away.  So's to make upgrading from
Woody to Sarge easier and to maintain backwards compatibility with other
distributions (until they change their filesystem layout to fit the One
True Debian Way), /dev and /tmp should be provided as symlinks to
/stuf/dev and /stuf/tmp in base-files.

This, however, creates another problem:  /stuf itself gets too messy.
/stuf/usr, /stuf/tmp and /stuf/dev (with devfs) can all be made to be separate
mount points, so we can shove them under /stuf/mnt.  For consistency,
the root filesystem will be bind-mounted under /stuf/mnt/root.

Now we have reached file hierarchy perfection: just one subdirectory
under /, and /stuf itself only contains two directories: /stuf/etc and
/stuf/mnt.  Better still, these directory names fit in wholly with the
Unix tradition of confusing newcomers.  There are also no directories
sharing a first letter, so typing with tab-expansion can be made more
efficient than our current system.

I trust that the Debian leadership will consider adjusting policy
accordingly with this suggestion (after a due period of internal
discussion) and we shall have a mass bug-filing to sort out the packages
which have, after a few weeks, have still not fully adopted the new
standard.  Sid may be broken for a couple of months, but that's okay,
because people should be using stable if they want stability.

*removes tongue from cheek*

(Gah, while I was writing this, Emile wrote something vaguely similar. Oh


[1] In all seriousness - is there any reason why root's home directory
is not in /home?  It seems a rather bizarre situation to have a
directory called root in the root directory (which is, of course, /not/
called root).

[2] "What would I do if I was designing Unix again from scratch?  Put
another N in Umount." - Ken Thompson (I think) - paraphrased

Reply to: