DragonFly kernel List (threaded) for 2003-12
Re: cvs commit: src/etc rc.subr src/sbin/rcrun rcrun.sh
I have added some major extensions to RCNG. It's about half done, but
what I have committed should work fairly well (and other developers can
fix individual rc.d files for things that do not have all the bells and
Basically RCNG now records the status of each provider's activation as
a system varsym. The status is typically 'running', 'disabled', or
I then wrote a script which I've placed in sbin called 'rcrun', and
a number of symlinks to shortcut the command sequence, e.g. 'rcstart',
'rcstop', 'rcrestart', and so forth.
You need to upgrade your RC scripts (make upgrade_etc in /usr/src/etc on
your DFly box or just do a buildworld/installworld), and you need to
build and install /usr/src/sbin/rcrun, and you need to reboot. The
reason you need to reboot is so RCNG populates the varsyms. Otherwise
the rcrun scripts will be confused.
I've tested this with 'mail' (note: you go by the PROVIDES keyword, not
the script name). e.g. 'rcstop mail' 'rcstart mail'.
I have also tested this with rwho which is an example of a RCNG script
which does not have a 'stop' directive. There are many RCNG scripts
which have not implemented 'stop' which need 'stop' implemented.
We can eventually augment the rcorder program to do a reverse ordering
or a shutdown ordering that will allow us to do such cool things as
'rcstop subsystemA' and be informed that the running subsystemB really
needs subsystemA and if you want to stop A, stop B first :-). Now
wouldn't that be cool?