Init : someone could comment this ?

Andrew Farris lordmorgul at gmail.com
Wed Jan 9 22:07:16 UTC 2008


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 at gmail.com> <ajfarris at gmail.com>
  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
----                                                                       ----




More information about the fedora-devel-list mailing list