Gestión de los servicios del sistema en Oracle® Solaris 11.2

Salir de la Vista de impresión

Actualización: Julio de 2014
 
 

Cómo modificar una variable de entorno para un entorno de proceso de servicio

Este procedimiento muestra cómo definir un valor para una variable de entorno en el entorno donde se ejecutarán los procesos iniciados por el servicio.

El ejemplo en este procedimiento muestra cómo modificar variables de entorno cron para ayudar con la depuración.

  1. Verifique que el servicio se esté ejecutando.

    La siguiente salida muestra que el servicio cron está en línea y un proceso cron está en ejecución.

    $ svcs -p cron
    STATE          STIME    FMRI
    online         10:24:05 svc:/system/cron:default
                   10:24:05     1089 cron
  2. Configure variables de entorno.

    El subcomando setenv define una variable de entorno para el entorno donde se ejecutará un proceso iniciado por un servicio o instancia de servicio.

    Utilice el siguiente comando para comprobar los valores actuales de las variables de entorno que desea definir:

    $ pargs -e `pgrep -f /usr/sbin/cron`

    Las variables de entorno que se establecen en este ejemplo no tienen valores actuales.

    Los siguientes comandos establecen las variables de entorno UMEM_DEBUG y LD_PRELOAD para el proceso /usr/sbin/cron iniciado por la instancia de servicio svc:/system/cron:default:

    $ svccfg -s system/cron:default setenv UMEM_DEBUG default
    $ svccfg -s system/cron:default setenv LD_PRELOAD libumem.so
  3. Actualice y reinicie el servicio.

    Al cambiar un valor de variable de entorno se requiere de un reinicio para que se lleve a cabo un refrescamiento.

    $ svcadm refresh system/cron:default
    $ svcadm restart system/cron:default
  4. Verifique que el cambio se haya realizado.

    La siguiente salida muestra que el servicio se ha reiniciado, el proceso tiene un nuevo ID de proceso, y las dos variables de entorno están establecidas para ese entorno de proceso.

    $ svcs -p cron
    STATE          STIME    FMRI
    online          9:24:39 svc:/system/cron:default
                    9:24:39     5601 cron
    $ svcprop -g method -p environment system/cron:default
    start/environment astring LD_PRELOAD=libumem.so UMEM_DEBUG=default
    $ pargs -e `pgrep -f /usr/sbin/cron`
    5601: /usr/sbin/cron
    envp[0]: LOGNAME=root
    envp[1]: LD_PRELOAD=libumem.so
    envp[2]: PATH=/usr/sbin:/usr/bin
    envp[3]: SMF_FMRI=svc:/system/cron:default
    envp[4]: SMF_METHOD=start
    envp[5]: SMF_RESTARTER=svc:/system/svc/restarter:default
    envp[6]: SMF_ZONENAME=global
    envp[7]: UMEM_DEBUG=default

Véase también

El subcomando unsetenv anula una variable de entorno para un proceso iniciado por un servicio o instancia de servicio.