La forma más sencilla de crear este servicio es utilizar el comando svcbundle como se muestra en Uso de la herramienta de creación de manifiestos.
Defina una propiedad de finalización de valores booleanos en el manifiesto de servicio y establezca su valor en false. Vea la propiedad completed del manifiesto en el Example 13–3.
Utilice el comando svccfg para definir la propiedad completed en true al final de la secuencia de comandos. Utilice el comando svcadm para refrescar el servicio con el nuevo valor de la propiedad. Vea el final de la secuencia de comandos en el Example 13–1.
En el manifiesto de servicio, se crea y se activa la instancia de servicio predeterminada. El servicio se desactiva en la secuencia de comandos. Al salir de la secuencia de comandos del primer inicio, utilice el código de salida SMF_EXIT_TEMP_DISABLE para salir del método start del servicio y desactivar temporalmente el servicio. Se desactiva el servicio, y no se ejecuta el método stop del servicio.
Es preferible desactivar temporalmente el servicio antes que desactivarlo de forma permanente, ya que de ese modo el servicio se puede volver a activar con mayor facilidad. En algunas situaciones, la secuencia de comandos (y, por lo tanto, el servicio) se debe volver a ejecutar para actualizar la tarea de configuración realizada, como la migración o la clonación de zonas. Si el servicio se desactiva de forma permanente, se debe volver a ejecutar el comando svcadm enable para volver a activar el servicio.
También es preferible desactivar el servicio de forma temporal antes que dejarlo en línea. Puede parecer que un servicio que está en línea realiza tareas cada vez que se reinicia el sistema. En este ejemplo, el nombre del servicio es site/first-boot-script-svc. Una vez que se inicia el cliente, puede ver que el servicio está en el estado disabled:
$ svcs first-boot-script-svc STATE STIME FMRI disabled 8:24:16 svc:/site/first-boot-script-svc:default