[Pkg-sysvinit-devel] Re: Early-writeable partition (aka. "/run x /var/run")

Henrique de Moraes Holschuh hmh at debian.org
Fri Dec 23 16:42:55 UTC 2005


On Fri, 23 Dec 2005, Thomas Hood wrote:
> > 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.
> 
> My view is that it is possible to deal with misuse in the same way as we deal
> with other bad practices: someone notices the abuse and files a bug report.

Agreed.

> We shouldn't make our code more complicated, or remove functionality, just
> because we think that this will have a *psychological* effect on our fellow
> developers.

Agreed.

Personally, so that you guys know exactly where I stand, I'd do this:

1. Put a tmpfs under /run.  2. mount --move it to /var/run later.  And the
fact that it will end up in /var/run is reason enough to have it under /run
to begin with, and screw with the crap about "no new dirs in /", why do we
have that useless /initrd then?

Everything that wants /run must first verify /var/run writeability. If it is
writeable, use that.  Otherwise, use /run if it is there.  Otherwise, bang
out with an error.

> > 4.  Debian supports ephemeral /var/run (i.e. tmpfs /var/run or rm -rf'ed on
> >    early boot /var/run)
> 
> That isn't really true.  The directories under /var/run are not deleted, and
> some packages rely on this.

IMHO, it is really true.  These packages are broken.  That's the instance we
should take as far as I am concerned...  of course, a new counting is
needed, this instance is based on the over 95% of the packages support tmpfs
/var/run assumption.

I will try to find out exactly how many really need /var/run not ephemeral,
file bugs, and either start immediately a push for a must policy (possible
if over 95% of the packages conform if I provide patches or NMU the
offenders), or a should one (possible if over 70% of the packages conform).

> There are certainly more than that.

Ok. Bad info on d-devel.

> $ dpkg -L $(dpkg -S /var/run | sed -e 's/,//g') | grep /var/run|sort|uniq
> /var/run
> /var/run/alsa
> /var/run/cups
> /var/run/dbus
> /var/run/hal
> /var/run/linuxlogo
> /var/run/pppconfig
> /var/run/samba
> /var/run/sshd
> /var/run/usb

I will recount, providing then patches to these guys should be a piece of
cake.

-- 
  "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



More information about the Pkg-sysvinit-devel mailing list