The svccfg delete command does not remove a service instance from the system. Instead, the svccfg delete command masks the instance. After you run the svccfg delete command, the service manifest still exists in /lib/svc/manifest. SMF keeps the service configuration repository in sync with file system content. Since the manifest still exists on the file system in a standard location, that service information is still stored in the repository and is only masked from normal view. Any administrative customizations are deleted from a masked instance. See the smf(7) man page for a description of masked entities.
Files that support a service instance are updated when you use pkg commands, even if that service instance is masked. When files that support a service instance are updated by pkg commands, the SMF data store is updated even though the service is still masked from view. If the service instance is unmasked, that service instance is already updated from the files delivered by pkg with no further intervention needed. To unmask a service instance, see How to Undo Deletion of a Service Instance.
Use the svcs -D command to show instances that depend on this instance. After you delete this instance, dependent instances might not be able to run. Use the svcs -l command to check whether this instance is a required dependency of the dependent instance.
Use the svccfg delete command to mask the instance from normal view. Use the svcs command to show the state of the instance. If the instance is running (is in the online or degraded state), use the svccfg delete -f command to mask the instance from normal view.
$ svcs -H my-svc disabled 7:25:37 svc:/site/my-svc:default $ svccfg delete svc:/site/my-svc:default
Use the svccfg listcust -M command to confirm that the instance is masked. Commands such as svcs should display an error message that no matching instance is found.
$ svccfg listcust -M svc:/site/my-svc:default manifest MASKED general admin MASKED general/complete astring admin MASKED general/enabled boolean admin MASKED true $ svcs -H my-svc svcs: Pattern 'my-svc' doesn't match any instances
Use the svccfg listcust -M command as shown in the previous procedure.
$ svccfg -s svc:/site/my-svc:default delcust Deleting customizations for instance: default
Reimporting the manifest does not remove a mask.
Use the svccfg listcust -M command to confirm that the instance is not masked. The svcs command should display the state of the instance.