How to control and setup service?

Stefan Esser se at freebsd.org
Sat Aug 29 09:50:12 UTC 2015


Am 28.08.2015 um 18:51 schrieb Pavel Timofeev:
> Sorry for top posting! It's pretty hard to write email walking under
> heavy rain and umbrella.
> So, I talked about special key, not default behaviour.
> Let me give you an example.
> You got a server (or ten) which was/were somehow configured before you.
> You want to reconfigure it/them. You don't care how and where it's
> already configured, you just want to set particular rcvars and be sure
> that no other rcvars are set.
> 
> Before you came it was:
> mysql_enable="YES/NO" # no matter
> mysql_datadir="/mycozystorage/db/mysql"
> mysql_defaults_extra_file="/mycozystorage/mysql/my.cnf"
> mysql_plugin_dir="/somewhere/lib/mysql/plugin"
> mysql_log_error="/mycozystorage/db/mysql/hostname.err"
> 
> then you run something like (look at -k key)
> # service -k mysql-server enable set datadir "/mysqldb" log_error
> "/mysqllogs/hostname.err"
> it becomes
> mysql_enable="YES"
> mysql_datadir="/mysqldb"
> mysql_log_error="/mysqllogs/hostname.err"
> 
> I. e. sets what requested and deletes rcvars which was not requested.

I think that the removal of the previous config state should not come
as the side-effect of some "set" command.

I'd rather introduce a now verb for this purpose, which has the effect
of clearing all previous settings for a service, instead of overloading
the "set" operation.

E.g.:

# service mysql-server clearconfig

Not sure about the best command name to use, it could also be "clean"
or "initconfig" or "defaultconfig". The semantics is that all the
rc.conf assignments for thise service are removed (including the
enable line) and the defaults from defaults/rc.conf become effective
again.

Regards, STefan


More information about the freebsd-hackers mailing list