Subject: Re: Updating /etc...
To: None <current-users@NetBSD.ORG>
From: Giles Lean <giles@nemeton.com.au>
List: current-users
Date: 12/19/1995 23:22:04
On Tue, 19 Dec 1995 04:06:48 -0500  Chris G Demetriou wrote:

> > > I really think the /etc/rc.local method is just plain archaic, and
> > > each package SHOULD have its own startup/shutdown script.
> > 
> > You're right.   The /etc/rc.local method is just plain archaic.
> > Unfortunately, the /etc/init.d method is even worse.
> 
> OK, so what's _wrong_ with it?

The /etc/init.d idea is simple enough, but the SysV folk made it
complex when they implemented it.  (OK, so we're surprised again. :-()

Problems I'm familiar with:

- the documentation is confusing and/or missing for lots of cases

- 'once' is used on entry to a runlevel (obvious, right) but 'exit'
  is used on entry to a runlevel from a higher one, not on exit from
  the runlevel the entry is specified for.  Got that?  (When you
  understand it, tell me it was't just an off by one coding error!)

- different SysV systems stole different runlevels for different
  purposes (like, six is reboot on SCO?!?)

None of these are a killer, but they do muddy the water enough to
discourage adopting it as standard since neither mimicing the SysV
init exactly nor cleaning it up are obviously 'correct'.  (POSIX is
mostly silent on init, so no freebies there.)

I actually have a version of init for NetBSD that handles runlevels.
I'll send a copy to anyone who is interested, either now (alpha code)
or later when I've cleaned it up a little more.

I like the SysV init's ability to handle baulky daemons more than I
like its startup/shutdown customisation facilities.

Regards,

Giles (I should write something useful, right? :-)