rc script timing issues?

Peter Risdon peter at circlesquared.com
Wed Mar 10 00:20:21 PST 2004

Shaun T. Erickson wrote:

> On 5.2.1-RELEASE-p1, in /usr/local/etc/rc.d, I have scripts that start 
> my MySQL database, and that start my Courier-IMAP daemons. When the 
> scripts for courier run, one of the first things they do is start 
> authdaemond, which should fire up several authdaemond.mysql processes 
> and then they start the imap daemons.
> On reboot, the imap daemons are running, but the authdaemond.mysql 
> processes aren't. If I stop the imap script, and re-run it, everything 
> starts up just fine.
> I suspect that the database isn't getting started before the imap 
> scripts are run. So, I moved the database startup script to /etc/rc.d, 
> but on reboot, the database wasn't started. I had hoped moving it to 
> /etc/rc.d might start it earlier in the boot process.
> Suggestions? TIA.

 From man 8 rc.d:

         The scripts within each directory are executed in lexicographical
         order.  If a specific order is required, numbers may be used as a
         prefix to the existing filenames, so for example 100.foo would be
         executed before 200.bar; without the numeric prefixes the opposite
         would be true.

You might be able to see this if you've installed, say, mysql-client 
which uses a script in /usr/local/etc/rc.d called 000.mysql-client.sh - 
the 000. forces an early startup. So I suggest you're better off moving 
the scripts back to /usr/local/etc/rc.d and prefixing them with numerals 
to get the startup order correct.


More information about the freebsd-questions mailing list