Re: /run vs. /lib/run
In article <20051220120943.GA21166@localhost.localdomain>,
Anthony Towns <email@example.com> wrote:
>/var/run has always been the right place in the namespace; it's just
>not been usable for technical reasons. If we fix the technical reasons,
>all is good.
Well there is on more technical solution that might have been overlooked.
Why not create /var/run on the root file system even if /var is
mounted over it later on.
You can do something like:
- at bootup: mount -t tmpfs tmpfs /var/run
- S01, S02, S10 ..
( cd /; mount -a )
if ! [ . -ef /var/run ]
mount --move . /var/run
This works at least on 2.6. It keeps the shell process' working
directory in /var/run. Even if mount -a mounts something over it,
the shell process' working directory is still the tmpfs. Then you
just move the mount to the real /var/run .
This means that /var/run is always writable.
Postinst can create a /var/run "under" /var in a number of ways-
for example by mounting the root file system a second time somewhere,
or by calling a process that uses clone(CLONE_NEWNS), umounts /var
and mkdirs /var/run.