On Thu, Jan 28, 2016 at 06:52:18PM +0100, Ingo Schwarze wrote: > Hi, > > Antoine Jacoutot wrote on Thu, Jan 28, 2016 at 10:41:52AM +0100: > > > As mentioned in another thread already: > > # ln -s /etc/rc.d/mydaemon /etc/rc.d/mydaemon2 > > Then use mydaemon2_flags ... in rc.conf.local. > > This seems to be a recurring user question. > > Do you consider this addition useful? > > I think rcctl(8) is the best place to document it because that's > the highest level user interface and "How do i run multiple copies > of a daemon?" is a very high-level user question, while rc.d(8) > and rc.conf(8) document lower, more technical levels. > > I'd love to make the example more specific and document an actual > use case that frequently occurs in practice, but even though many > have said that such cases do occur, i can't think of any. For > example, for httpd(8), it looks like all use cases can be solved > by running one copy and using "server ... { ... }" well in > httpd.conf(5). So, if anybody can describe a specific use case to > make the example better, that's quite welcome.
I'm running several instances of dhcrelay because I can only specify one "-i if" option. The example could look like this: # ln -s dhcrelay dhcrelay_vlan2 # ln -s dhcrelay dhcrelay_vlan3 # rcctl set dhcrelay_vlan2 flags -i vlan2 10.0.0.2 # rcctl set dhcrelay_vlan3 flags -i vlan3 10.0.0.2 > > I certainly don't want an example in the style of > > # ln -s httpd httpd2 > > That's a terrible name. The next admin coming along will have no > clue what this second httpd is needed for. > > Yours, > Ingo > > > Index: rcctl.8 > =================================================================== > RCS file: /cvs/src/usr.sbin/rcctl/rcctl.8,v > retrieving revision 1.26 > diff -u -p -r1.26 rcctl.8 > --- rcctl.8 24 Oct 2015 17:08:36 -0000 1.26 > +++ rcctl.8 28 Jan 2016 17:39:13 -0000 > @@ -193,6 +193,18 @@ ntpd_user=root > # echo $? > 0 > .Ed > +.Pp > +The recommended way to run a second copy of a given daemon for a > +different purpose is to create a symbolic link to its > +.Xr rc.d 8 > +control script: > +.Bd -literal -offset indent > +# cd /etc/rc.d/ > +# ln -s httpd httpd_purpose > +# rcctl set httpd_purpose flags -some options ... > +# rcctl set httpd_purpose status on > +# rcctl start httpd_purpose > +.Ed > .Sh SEE ALSO > .Xr rc.conf.local 8 , > .Xr rc.d 8