rc.d scripts to control multiple instances of the same daemon?

Pietro Cerutti gahr at FreeBSD.org
Tue Jun 25 20:37:48 UTC 2013

On 2013-Jun-25, 15:44, Garrett Wollman wrote:
> I'm in the process of (re)writing an rc.d script for kadmind
> (security/krb5).  Unlike the main Kerberos daemon, kadmind needs to
> have a separate instance for each realm on the server -- it can't
> support multiple realms in a single process.  What I need to be able
> to do:
> 1) Have different flags and pidfiles for each instance.
> 2) Be able to start, stop, restart, and status each individual
> instance by giving its name on the command line.
> 3) Have all instances start/stop automatically when a specific
> instance isn't specified.
> I've looked around for examples of good practice to emulate, and
> haven't found much.  The closest to what I want looks to be
> vboxheadless, but I'm uncomfortable with the amount of mechanism from
> rc.subr that it needs to reimplement.  Are there any better examples?

Wouldn't something like this be enough?


. /etc/rc.subr

start_cmd="kadmind_start $2"

load_rc_config $name

    if [ -z $1 ]; then
        echo "starting all instances"
        echo "starting instance $1"

run_rc_command "$1"

# /usr/local/etc/rc.d/kadmind start
starting all instances
# /usr/local/etc/rc.d/kadmind start myinst
starting instance myinst

Pietro Cerutti
The FreeBSD Project
gahr at FreeBSD.org

PGP Public Key:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20130625/b25c3485/attachment.sig>

More information about the freebsd-ports mailing list