Les Mikesell wrote:
Andrew Farris wrote:
What is missing IMVHO is the ability of handling service
dependencies, but
that one is very tricky. For example, it mostly makes no sense to run a
mail/web/... server if there is no network, but the minority of cases
where
it does make sense is sizeable nonetheless. And trying to cater for both
cases rapidly gets to be an unmanageable mess.
What should be discussed are only serious *requirements* in the init
scripts dependencies. In the example you gave here it makes no sense
to prevent the web server from running because of no network because
it could serve a purpose and it does function that way (and can be
turned off if the user did not want it running).
What happens in practice, though, is that things that expect network
services to be running will do DNS lookups, hanging for minutes at at
time when there is no response.
Looks like a good way to identify bugs to me... the DNS hang needs fixed, not
worked around.
> A dependency should be only
what is absolutely required for basic functionality so that if it is
turned on it has the *capability of starting*. It should be a much
more manageable mess when the bare bones basics are figured out.
Things may be 'capable' of starting with a several-minute timeout and
failing DNS but that doesn't mean it is desirable - or that they will
necessarily work when the interface(s) the services were supposed to be
listening on become active later. On the other hand, you may have
nothing but a loopback interface and a hosts file and want things to
come up running so you can test them locally, or in sendmail's case so
it can accept local submissions.
And in the case of a laptop, it is fairly likely that you'll want to
suspend it on one network (wired/wireless or both) and wake it up on
something different.
I can understand that as a real complication, but again thats (IMO) something
different than a web server which can work quite well without a network. The
point I was making is that there may be hard and fast requirements, and there
may be 'would be nice' situations... and the init scripts should only be
guaranteed to give the requirement in a parallelized booting sequence. Beyond
that, the other issues need fixed so that for instance the service DOES start
listening when the link goes active later, rather than blocking or delaying the
service from starting at boot time.
--
Andrew Farris <lordmorgul@xxxxxxxxx> <ajfarris@xxxxxxxxx>
gpg 0xC99B1DF3 fingerprint CDEC 6FAD BA27 40DF 707E A2E0 F0F6 E622 C99B 1DF3
No one now has, and no one will ever again get, the big picture. - Daniel Geer
---- ----
--
fedora-devel-list mailing list
fedora-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/fedora-devel-list