[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Question about Facility names



   Date: Mon, 20 Nov 2000 19:00:17 +0100 (CET)
   From: Lenz Grimmer <grimmer@suse.de>

   However, the section about "Facility Names" is a bit fuzzy. Do these
   "facilities" actually define separate init scripts? If yes, the definition
   is not very exhaustive. For example: how exactly do you define "low level
   networking" for facility $network? Is the IP address already assigned at
   that stage? Is routing set up? Or is just the network driver module
   loaded?

The "$*" facilities are supposed to be virtual facilities --- they may
represent actual init scripts, or they may represent some combination of
init scripts.  The idea here is that scripts declare what dependencies
they need, and the init.d installer automatically figures out what S* or
K* number the script should have.  That way, we don't have to worry
about different distributions different init.d numbers.

In answer to your question, "low level networking" is supposed to mean
that IP addresses are signed, routing is set up, etc. but various
networking daemons (inetd, named, etc.) aren't necessarily started yet.

There's actually another way these dependencies can be used, and
happily, either Richard Gooch had the same idea I had, or he read the
LSB spec and decided to implement it (don't know which).  Anyway, a
Debian developer recently pointed me at this:

	http://www.atnf.csiro.au/~rgooch/linux/boot-scripts/

I haven't tried converting a system to use it, but looking at his design
and the source code this is really cool stuff.  Richard's stuff
completely gets rid of init.d numbers altogether.  Instead, init.d
scripts simply declare what they need, and the init system automatically
runs stuff in the right order.

It might be interesting for folks to look at it and report what they
think.  What Richard did is basically what I always wanted to do, but
didn't have time to code.  (About the only thing which I think he hasn't
coded was the ability to run boot scripts in parallel to speed up the
boot process, but that adds a lot of complexity.)  

However, when I wrote the spec a number of months ago, his stuff hadn't
existed yet, and I didn't want to specify vaporware, there are some
kludges in the spec so that we could more easily map it back to the SysV
system.  Now that a pure dependency-based Init script system exists,
there's an opportunity for us to specify something that is fundamentally
a lot better (IMO) than the System V init scripts, assuming that we have
consensus that it's a good thing.

Alternatively (and probably the better solution), if we think some
people will want to stay with System V init scripts, we can modify the
proposal to make it more simpleinit friendly, while still allowing a
mapper to map things to the old System V numbers for those people who
want to stick with the old System V way of doing things.

Comments?

						- Ted



Reply to: