sysrc -- a sysctl(8)-like utility for managing /etc/rc.conf et. al.

Douglas K. Rand rand at meridian-enviro.com
Thu Oct 7 12:37:46 UTC 2010


I think that this script might also fill a void with using Puppet as a
configuration tool. Currently Puppet, as its default behaviour, uses
files in /etc/rc.conf.d to set variables. I've found this approach
really lacking because you cannot do things like:

  nfs_server_enable="YES"

via a /etc/rc.conf.d file because multiple things (like lockd, mountd,
nfsd, nfsserver, and statd) all need nfs_server_enable set, as one
example. This script would provide an easy method for puppet to "edit"
lines in /etc/rc.conf.

I have a feature request though: How about a switch like "-c
config-file" to change which file sysrc_set adds the line to. We use
both /etc/rc.conf and /etc/rc.conf.local on some systems, and it would
be nice to be able to specify that this particular knob should be
placed in /etc/rc.conf.local. I'm unsure what should happen if -c is
specified and the knob you want to change already exists in another
rc.conf file: Should it be moved to the new location, or changed where
it is? (Maybe that'd be yet another option to sysrc.)



More information about the freebsd-hackers mailing list