Subject: Re: rc.local and rcorder(8)
To: Xavier HUMBERT <xavier@xavhome.fr.eu.org>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: current-users
Date: 06/19/2002 23:25:46
On Wed, Jun 19, 2002 at 10:57:23PM +0200, Xavier HUMBERT wrote:
> rc.local claims to be "is (nearly) the last thing invoked by /etc/rc".
> 
> This is not true.
> 
> Actually, rc.local is invoked in alphabetical order, this means on a
> typical server after `dhcpd`, _but before_ `named` and other important
> daemons. This is really annoying, especially for the blatant case of
> named, when you call wrappers for those daemons in rc.local.
> 
> This is obvious when looking at the dependancies in /etc/rc.d/local :
> ># REQUIRE: DAEMON
> ># PROVIDE: local
> ># BEFORE:  LOGIN
> 
> I think this can be solved in two ways :
> 
> - add a new keyword to rcorder(8), like does startup mechanism in Darwin :
> #ORDER {EARLY|NORMAL|LATE}
> Which rcorder should use as a primary key in crunch_file()
> This is not a trivial change, but should help for other startup files.
> 
> - the (ahem) Linux way: remove /etc/rc.d/local which is imho useless
> with so weak dependancies, and add `sh /etc/rc.local` at the very end
> of /etc/rc. Ditto in rc.shutdown, call /etc/rc.shutdown.local _before_
> rc.d files
> 
> Quick and (not so)dirty, I did it on my box.
> 
> Should I file a pr ?

Probably. But I think local should require more stuffs, so that it start
later.
making is run unconditionnaly at the end of rc is not that good,
because there are situations where you may want a rc.d script depend on
something in rc.local.

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
--