El comando svccfg delete no elimina una instancia de servicio del sistema. En su lugar, el comando svccfg delete enmascara la instancia. Después de ejecutar el comando svccfg delete, el manifiesto de servicio sigue existiendo en /lib/svc/manifest. SMF mantiene el repositorio de configuración de servicio en sincronización con el contenido del sistema de archivos. Ya que el manifiesto aún existe en el sistema de archivos en una ubicación estándar, esa información de servicio aún se almacena en el repositorio y sólo es enmascarada de la vista normal. Las personalizaciones administrativas se suprimen de una instancia enmascarada. Consulte la página del comando man smf(5) para obtener una descripción de entidades enmascaradas.
Los archivos que admiten una instancia de servicio se actualizan cuando se utilizan comandos pkg, incluso si esa instancia de servicio está enmascarada. Cuando los archivos que admiten una instancia de servicio se actualizan mediante comandos pkg, el almacén de datos SMF se actualiza, aunque el servicio sigue enmascarado de la vista. Si la instancia de servicio no está enmascarada, la instancia de servicio ya está actualizada desde los archivos enviados por pkg sin necesidad de ninguna intervención. Para desenmascarar una instancia de servicio, consulte Cómo deshacer la supresión de una instancia de servicio.
Utilice el comando svcs -Dpara mostrar las instancias que dependen de esta instancia. Después de suprimir esta instancia, es posible que no pueda ejecutar instancias dependientes. Utilice el comando svcs -l para comprobar si esta instancia es una dependencia necesaria de la instancia dependiente.
Utilice el comando svccfg delete para enmascarar la instancia de la vista normal. Utilice el comando svcs para mostrar el estado de la instancia. Si la instancia está en ejecución (está en el estado online o degraded), utilice el comando svccfg delete -f para enmascarar la instancia de la vista normal.
$ svcs -H my-svc disabled 7:25:37 svc:/site/my-svc:default $ svccfg delete svc:/site/my-svc:default
Utilice el comando svccfg listcust -M para confirmar que la instancia está enmascarada. Los comandos como svcs deben mostrar un mensaje de error de que no se ha encontrado una instancia coincidente.
$ 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
Utilice el comando svccfg listcust -M como se muestra en el procedimiento anterior.
$ svccfg -s svc:/site/my-svc:default delcust Deleting customizations for instance: default
Volver a importar el manifiesto no elimina una máscara.
Utilice el comando svccfg listcust -M para confirmar que la instancia no está enmascarada. El comando svcs debe mostrar el estado de la instancia.