Gentoo Archives: gentoo-dev

From: Frederick Grim <fgrim@××××××××××××.org>
To: gentoo-dev@g.o
Subject: Re: [gentoo-dev] New USE flag 'daemontools' as an alternative to init.d
Date: Thu, 11 Sep 2003 18:15:48
Message-Id: 20030911181609.GA5824@norby.dyndns.org
In Reply to: Re: [gentoo-dev] New USE flag 'daemontools' as an alternative to init.d by Frederick Grim
1 So Frederick Grim <fgrim@××××××××××××.org> was all like, and shit:
2 > So Wes Chow <wes@×××××××××.net> was all like, and shit:
3 > >
4 > > > No, that'd be implemented in another layer above daemontools itself
5 > > > (provided that you'd even want to do that with daemontools).
6 > > > Daemontools is not meant to replace init.d in network initialization,
7 > > > which isn't a daemon, so you couldn't supervise
8 > > > it with daemontools. Daemontools is for managing daemons,
9 > > > starting, stopping, restarting, status, signal delivery.
10 > >
11 > > But, can't daemons have dependencies on other daemons as well? For
12 > > example, nfs depends on portmap. Many of these daemons might also
13 > > depend on the system logger.
14
15 ohh and I just thought of something else. In the run scripts you could probably enforce the
16 dependencies either by specifically naming the softlinks correctly or using some
17 combination of svstat and sleep in a loop. So in any case the startup order is maintained.
18 I can't imagine that would be anymore difficult coding wise then the current system in
19 init.d .
20
21 >
22 > bernstein has a recommended logging system that can be used in conjuction with netcat and
23 > multitail ( if you have a centralized log server ). Also most of these daemons can be
24 > configured to log to stderr or stdout. so a portmap run script may look something like
25 > #!/bin/sh
26 >
27 > exec /usr/bin/tcpserver 0 111 /sbin/portmap -d 2>&1
28 >
29 > with it's associated log/run script
30 >
31 > #!/bin/sh
32 > exec /usr/bin/setuidgid nobody /usr/bin/multilog t s2500000 /var/log/supervise/portmap
33 >
34 > which bypasses these dependancies. I have found, using daemontools that the system logger
35 > is only useful for a few broken daemons that can't be configured to log to stdout.
36 >
37 > So this is sort of an important point. If runscripts are included will the logging by
38 > default be to the stdout or to syslog?
39 >
40 > > It'd be nice to have the logger supervised
41 > > *and* started up before any other daemon.
42 > >
43 > > And the implication with this faq entry:
44 > > http://cr.yp.to/daemontools/faq/create.html#why is that daemontools is
45 > > supposed to mostly replace all these init systems.
46 > >
47 > > At any rate, somebody else mentioned runit, which claims to be
48 > > daemontools-like and has dependency support (and a more conventional
49 > > license). "emerge search runit" didn't come up with anything, but maybe
50 > > it should get some brain time as an option to daemontools?
51 > >
52 > > And after reading your bug posting, I agree that it would be nice to
53 > > have automatically merged run scripts for daemons just in case you want
54 > > to use a daemontool-like system.
55 > >
56 > > Wes
57 > >
58 > > --
59 > > http://www.woahnelly.net/~wes/ OpenPGP key = 0xA5CA6644
60 > > fingerprint = FDE5 21D8 9D8B 386F 128F DF52 3F52 D582 A5CA 6644
61 > >
62 > > --
63 > > gentoo-dev@g.o mailing list
64 > >
65 >
66 > --
67 > #!/usr/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj $/=unpack('H*',$_);$_=`echo
68 > 16dio\U$k"SK$/SM$n\EsN0p[lN*1 lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)
69 >
70 > --
71 > gentoo-dev@g.o mailing list
72 >
73
74 --
75 #!/usr/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj $/=unpack('H*',$_);$_=`echo
76 16dio\U$k"SK$/SM$n\EsN0p[lN*1 lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)
77
78 --
79 gentoo-dev@g.o mailing list