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.
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
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
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
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.