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

Early-writeable partition (aka. "/run x /var/run")



Here's a small sinopsys:

1.  There is a need for a directory that is writeable *very* early in the
    boot process.  The alternative is complex and probably far more
    undesireable (running daemon that implements a very simplified
    filesystem-like interface and keeps all data in memory. Also, modifying
    everything to use said daemon -- this will, among other things, slow
    down the boot process and add a far more fragile point of failure than a
    filesystem).

2.  This directory probably should not be generally available in its early
    boot location after the equivalent of rcS.d is done with, to avoid
    missuse.

2.  Its mountpoint must be somewhere in the / partition, which does NOT mean
    directly inside /, it could be inside /etc, /lib or any other directory
    that is *always* inside the / partition.

3.  2.4 Linux kernels above and including 2.4.19 and 2.6 can use mount
    --move to safely move the directory somewhere else.  Debian doesn't
    support any kernels before them, so mount --move is available to all
    Debian GNU/Linux Etch installs *right now*.

4.  Debian supports ephemeral /var/run (i.e. tmpfs /var/run or rm -rf'ed on
    early boot /var/run), and failing in a tmpfs /var/run scenario is a bug.
    Only two packages still ship /var/run directories inside debs.

5.  Adding a new toplevel directory is not to be taken lightly, and faces
    a lot of oposition ("/run" proposal).

6.  Non-Linux-based Debian systems are supposed to come with their own
    best ways to deal with this, but we must make sure our solution can
    always be achieved without mount --move, and if at all possible do
    so without requiring a *big* / partition.

7.  Anything using the early writeable directory must check if it is
    there, and if not, try to use something standandard (typically
    /var/run) instead.  Probably it would be best to FIRST check for
    an writeable directory in the standard location, and failing that,
    use the new "early writeable directory".

Did I forget anything?

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh



Reply to: