Extending sharemgr: How will this impact current NFS users?
By dougm on May 23, 2007
How will this impact current NFS users?
Changes to the sharenfs internal model should be made in a way that is transparent to current users. Other than some display differences when using the "show" sub-command and in how resource names are handled, the differences should not really be visible to NFS users. Since resource names are mostly unused with NFS, most users won't even notice the change in how they are handled.
Where changes will be noticable is when another file sharing protocol is installed on the system. When a share group is created, it will be created with all of the protocols enabled unless the administrator specifically creates it with only one protocol enabled. For example:
sharemgr create -P nfs new-group
would create a group "new-group" with only NFS enabled. Groups that already exist when a system is upgraded to have a new file sharing protocol won't automatically have the new protocol added in order to not cause any surprises. If you do want to enable the new protocol on a group, it is a simple matter of issuing the following command:
sharemgr create -P newproto new-group
and the protocol is added to the group and shares wil be shared out with the newproto protocol. There is a special case where the command will not work. If the newproto is a protocol that requires resource names for operation and any of the existing shares don't have a resource name, the create of the new protocol will fail with a warning indicating that the protocol requires the resource name. This allows the admin to go in and add a resource name to each share that doesn't have one. It is also possible to tell sharemgr to add the protocol anyway and to create a resource name for those shares based on the path name. This can be done using the force (-f) option:
sharemgr create -P newproto -f new-group
In this case, the path is used as a resource name with all the '/' characters changed to '_'. If the name isn't unique, the a ~n is used on the end of the name where n is incremented until a unique name is constructed. All characters that aren't legal in a resource name are also converted to '_' and the leading / will have been removed prior to conversion.
Since the constructed names won't always be useful, the administrator can then go in and change the resource name to something meaningful. In general, it is best to add the resource names prior to adding the protocol, but if the paths are unique and meaningful, use the -f option.
All other sharemgr operations will be unaffected by the proposed changes when applied to the NFS protocol.