Configuration that exists in the site-profile, system-profile, and manifest layers of the service configuration repository is defined in service manifests and profile files. See Repository Layers for information about layers. SMF keeps the service configuration repository in sync with file system content. Any configuration that is defined in a manifest or profile file in a standard location still exists on the file system after administrative customization, including after being deleted, and is still stored in the service configuration repository. Configuration that is defined in a manifest or profile is said to have bundle support. When you delete configuration that has bundle support, the information is not deleted from the file system but is masked so that it is not seen in the normal view. See the smf (5) man page for a description of masked entities.
Deleting configuration that has bundle support is an administrative customization. In this case, the delcust subcommand unmasks the configuration, rather than deleting anything. Use the listcust -M subcommand to view masked configuration. Use the delcust -M subcommand to unmask configuration, or undo the deletion or masking of the configuration.Example 4-14 Deleting Configuration that has Bundle Support
In Deleting Administrative Configuration, the config property group of the my-svc service only existed in the admin layer. The config property group did not exist in any manifest or profile. When those properties were deleted, they were gone from the system. This example shows the different result when you delete configuration that has bundle support.
The property is defined in the service manifest:
$ svccfg -s pkg/server listprop -l all pkg/inst_root pkg/inst_root astring admin /export/ipsrepos/Solaris11 pkg/inst_root astring manifest /var/pkgrepo $ svccfg -s pkg/server delprop pkg/inst_root
After deletion, the property is not displayed by using listprop with no options. Because the property has bundle support, the property still exists in the service configuration repository and can be displayed by using the -l or -M options with the listprop subcommand.
$ svccfg -s pkg/server listprop pkg/inst_root $ svccfg -s pkg/server listprop -l all pkg/inst_root pkg/inst_root astring admin MASKED /export/ipsrepos/Solaris11 pkg/inst_root astring manifest MASKED /var/pkgrepo $ svccfg -s pkg/server listcust -M pkg/inst_root astring admin MASKED /export/ipsrepos/Solaris11Example 4-15 Unmasking Configuration
When you unmask the property, both customizations are gone:
The property is no longer masked or hidden.
The property no longer has its customized value.
$ svccfg -s pkg/server delcust -M Deleting customizations for property: pkg/inst_root $ svccfg -s pkg/server listprop -l all pkg/inst_root pkg/inst_root astring manifest /var/pkgrepo $ svccfg -s pkg/server listprop pkg/inst_root pkg/inst_root astring /var/pkgrepo