Solaris 11: establecer Locale por defecto

Al contrario que en versiones anteriores de Solaris (10, 9…), en las que el locale por defecto para todo el sistema se establecía en el archivo de configuración /etc/default/init, a partir de Solaris 11 el método de configuración cambia.

Este seria un ejemplo de versiones antiguas de Solaris:

# tail -2 /etc/default/init
 LANG=C
 LC_ALL=C

En Solaris 11, pasamos a establecer esta configuración a través de las propiedades del servicio SMF svc:/system/environment:init. Así pues, podemos cambiar la configuración directamente desde el servicio sin tocar ningún archivo de configuración, ejemplo:

# svccfg -s svc:/system/environment:init setprop environment/LANG = astring: es_ES.UTF-8

De ese modo, establecemos es_ES.UTF-8 como LANG/locale por defecto. Sólo faltaría hacer una recarga del servicio:

# svcadm refresh svc:/system/environment

Y finalmente verificamos que el cambio de la propiedad del servicio ha sido correcta:

# svccfg -s svc:/system/environment:init listprop environment/LANG
environment/LANG astring     es_ES.UTF-8

Para aseguraros de que todas las sesiones se establecen con el nuevo valor, puede ser recomendable reiniciar el sistema.