> SMF users and developers,
> 
> What would you think about something like this:
> 
>       $ svcadm enable nfs/server
>       Error: svc:/network/nfs/server:default is locked.
>       Use share(1M) to administer this service.
>       $ echo $?
>       1
>       $
> 
>       $ svccfg -s nfs/server:default
>       svc:/network/nfs/server:default> setprop general/enabled = true
>       Error: The general/enabled property is locked.
>       Use share(1M) to administer this service.
>       svc:/network/nfs/server> exit
>       $
> 
> The idea is that the NFS developers want to enforce NFS-specific
> consistency between the general/enabled properties of the NFS services

I'm not in favor of this without a more explicit discussion about NFS's
problems and how else they might be solved.  I don't like this for the
following reasons:

- I'm concerned about it getting used everywhere as a way for not properly
  supporting smf semantics, e.g. not doing templates, not factoring properly

- One of the major goals of SMF is to provide a programmatic and/or scriptable
  interface to higher-level frameworks: if anything can declare itself locked,
  then how is an admin script, profile, or higher-level framework supposed to
  operate on it at all?  (i.e. the share(1M) command isn't scriptable in the
  same way, in that it doesn't support use at install/upgrade-time, etc)

- There are two kinds of coordinated changes: interrelated properties, and
  interrelated services.  Interrelated properties need to be handled by the
  service itself, its method, or constrained by the future templating features.
  Interrelated services are indeed tricky, but often if something is wrong
  here it suggests that perhaps the factoring hasn't been done right.

So before we go add this, I'd like to see a detailed discussion of exactly
what issue NFS is having and let's apply first principles to that.

-Mike

-- 
Mike Shapiro, Solaris Kernel Development. blogs.sun.com/mws/

Reply via email to