Una localización es un conjunto de variables de entorno que define el idioma, el país y los ajustes de codificación de caracteres (o cualquier otra variante especial de preferencias) para tus aplicaciones y sesiones shell en un sistema Linux. Estas variables de entorno son utilizadas por las bibliotecas del sistema y las aplicaciones ubicadas en el sistema.
Locale afecta cosas como el formato de hora/fecha, el primer día de la semana, números, moneda y muchos otros valores formateados de acuerdo con el idioma o región/país que estableces en un sistema Linux.
En este artículo, te mostraremos cómo ver la localización de tu sistema actualmente instalado y cómo establecer la localización del sistema en Linux.
Para ver información sobre la localización actual instalada, utiliza la utilidad locale o localectl.
pedro@pedro-gnu:~$ locale LANG=es_ES.UTF-8 LANGUAGE=es_ES LC_CTYPE="es_ES.UTF-8" LC_NUMERIC=it_IT.UTF-8 LC_TIME=it_IT.UTF-8 LC_COLLATE="es_ES.UTF-8" LC_MONETARY=it_IT.UTF-8 LC_MESSAGES="es_ES.UTF-8" LC_PAPER=it_IT.UTF-8 LC_NAME=it_IT.UTF-8 LC_ADDRESS=it_IT.UTF-8 LC_TELEPHONE=it_IT.UTF-8 LC_MEASUREMENT=it_IT.UTF-8 LC_IDENTIFICATION=it_IT.UTF-8 LC_ALL= pedro@pedro-gnu:~$
Puedes visualizar más información sobre una variable de entorno, por ejemplo LC_TIME, que almacena el formato de fecha y hora.
pedro@pedro-gnu:~$ locale -k LC_TIME abday="dom;lun;mar;mer;gio;ven;sab" day="domenica;lunedì;martedì;mercoledì;giovedì;venerdì;sabato" abmon="gen;feb;mar;apr;mag;giu;lug;ago;set;ott;nov;dic" mon="gennaio;febbraio;marzo;aprile;maggio;giugno;luglio;agosto;settembre;ottobre;novembre;dicembre" am_pm=";" d_t_fmt="%a %d %b %Y %T %Z" d_fmt="%d/%m/%Y" t_fmt="%T" t_fmt_ampm="" era= era_year="" era_d_fmt="" alt_digits= era_d_t_fmt="" era_t_fmt="" time-era-num-entries=0 time-era-entries="d" week-ndays=7 week-1stday=19971130 week-1stweek=4 first_weekday=2 first_workday=2 cal_direction=1 timezone="" date_fmt="%a %e %b %Y, %H.%M.%S, %Z" time-codeset="UTF-8" alt_mon="gennaio;febbraio;marzo;aprile;maggio;giugno;luglio;agosto;settembre;ottobre;novembre;dicembre" ab_alt_mon="gen;feb;mar;apr;mag;giu;lug;ago;set;ott;nov;dic" pedro@pedro-gnu:~$
Para mostrar una lista de todas las localizaciones disponibles, utiliza el siguiente comando.
pedro@pedro-gnu:~$ locale -a C C.UTF-8 en_AG en_AG.utf8 en_AU.utf8 en_BW.utf8 en_CA.utf8 en_DK.utf8 en_GB.utf8 en_HK.utf8 en_IE.utf8 en_IL en_IL.utf8 en_IN en_IN.utf8 en_NG en_NG.utf8 en_NZ.utf8 en_PH.utf8 en_SG.utf8 en_US.utf8 en_ZA.utf8 en_ZM en_ZM.utf8 en_ZW.utf8 es_AR.utf8 es_BO.utf8 es_CL.utf8 es_CO.utf8 es_CR.utf8 es_CU es_CU.utf8 es_DO.utf8 es_EC.utf8 es_ES.utf8 es_GT.utf8 es_HN.utf8 es_MX.utf8 es_NI.utf8 es_PA.utf8 es_PE.utf8 es_PR.utf8 es_PY.utf8 es_SV.utf8 es_US.utf8 es_UY.utf8 es_VE.utf8 it_CH.utf8 it_IT.utf8 POSIX pedro@pedro-gnu:~$
Cómo configurar la ubicación del sistema en Linux
Si quieres modificar o fijar el sistema local, utiliza el programa update-locale. La variable LANG te permite establecer la configuración regional para todo el sistema.
El siguiente comando establece LANG a es_ES.UTF-8 y elimina las definiciones de LANGUAGE.
$ sudo localectl set-locale LANG=es_ES.UTF-8
Para configurar un parámetro local específico, edita la variable apropiada. Por ejemplo.
$ sudo localectl set-locale LC_TIME=es_ES.UTF-8
Puedes encontrar la configuración global de locale en los siguientes archivos:
- /etc/default/locale – en Ubuntu/Debian
- /etc/locale.conf – en CentOS/RHEL
Estos archivos también pueden ser editados manualmente usando cualquiera de tus editores de línea de comandos favoritos, como Vim o Nano, para configurar la localización de tu sistema.
Para establecer una localización global para un solo usuario, simplemente abre el archivo ~/.bash_profile y añade las siguientes líneas.
LANG="es_ES.utf8" export LANG
Para obtener más información, consulta las páginas de manual locale, update-locale y localectl.
$ man locale $ man update-locale $ man localectl