GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo instalar/cambiar la configuración regional en Debian?

Solución 1:

Editar /etc/default/locale y establezca el contenido en:

LANG="nl_NL.UTF-8"

Puede verificar qué locales ha generado actualmente usando:

locale -a

Puedes generar más editando /etc/locale.gen y descomente las líneas de las configuraciones regionales que desea habilitar. Luego puede generarlos ejecutando el comando:

locale-gen

Puede encontrar una lista de configuraciones regionales admitidas en /usr/share/i18n/SUPPORTED

Hay más información disponible en el wiki de Debian.

Solución 2:

Es posible que deba instalar el locales paquete. Esto le preguntará qué locales generar. Si ya está instalado, entonces dpkg-reconfigure locales le permitirá generar más locales.

Solución 3:

Las respuestas aquí están incompletas como en la mayoría de los demás lugares. Después de recopilar información de algunos lugares, lo que funcionó para mí fue (1) asegurarme de que la configuración regional que quería estaba disponible (generarla si no lo estaba) y luego (2) establecer las variables de entorno relacionadas con la configuración regional en la configuración regional deseada.

En mi caso necesitaba en_US.UTF-8 instalado mediante programación (es decir, de forma no interactiva) en un contenedor docker. El ff logró lo que necesito, pero debería funcionar bien en un shell interactivo.

apt-get update

# Install locales package
apt-get install -y locales

# Uncomment en_US.UTF-8 for inclusion in generation
sed -i 's/^# *\(en_US.UTF-8\)/\1/' /etc/locale.gen

# Generate locale
locale-gen

# Export env vars
echo "export LC_ALL=en_US.UTF-8" >> ~/.bashrc
echo "export LANG=en_US.UTF-8" >> ~/.bashrc
echo "export LANGUAGE=en_US.UTF-8" >> ~/.bashrc

En el mismo shell, deberá hacer source ~/.bashrc para que las variables env surtan efecto de inmediato. Puede comprobar que la configuración regional se ha configurado correctamente invocando locale .

LANG=en_US.UTF-8
LANGUAGE=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

Hubo muchas entradas de preguntas y respuestas sobre este tema, pero solo unas pocas fueron realmente útiles. Crédito donde se debe el crédito:

  • https://unix.stackexchange.com/a/247019/21289
  • https://perlgeek.de/en/article/set-up-a-clean-utf8-environment

Solución 4:

Ninguna de estas respuestas funcionó para mí, en un contenedor LXC instalado con:

lxc-create -n sse-master -t download -n sse-master -- \
    -d debian -r jessie --arch i386

Siempre obtuve el siguiente resultado de locale-gen , es decir, no genera ningún local (ninguno en la lista):

$ sudo locale-gen
Generating locales (this might take a while)...
Generation complete.

Ejecutando dpkg-reconfigure locales y seleccionar algunas configuraciones regionales no actualizó /etc/locale.gen como esperaba.

Sin embargo, cuando modifiqué ese archivo manualmente y eliminé los comentarios de las configuraciones regionales que quería, entonces locale-gen empezó a funcionar correctamente:

$ sudo locale-gen
Generating locales (this might take a while)...
  en_GB.UTF-8... done
  en_US.UTF-8... done
Generation complete.

También pude generar locales manualmente como este:

sudo localedef -i en_US -f UTF-8 en_US.UTF-8
sudo localedef -i en_GB -f UTF-8 en_GB.UTF-8

Pero esta no era una solución permanente:descubrí que ejecutar locale-gen sin el --keep-existing La opción eliminará todas las configuraciones regionales generadas manualmente, es decir, todas las configuraciones regionales no enumeradas (y sin comentarios) en /etc/locale.gen .

Solución 5:

Para una aplicación web, podría ser mejor usar setlocale () dentro el programa, en lugar de requerir que la configuración regional predeterminada del sistema se establezca adecuadamente fuera. Menos cabos sueltos de esa manera.


Linux
  1. Cómo instalar R en Debian 9

  2. Cómo instalar R en Debian 10

  3. Cómo cambiar el nombre de host en Debian

  4. Cómo instalar MariaDB en Debian 11

  5. Cómo instalar MySQL en Debian 11

Cómo instalar Flectra en Debian 10

Cómo instalar OpenNebula en Debian 10

Cómo instalar Memcached en Debian 10

¿Cómo instalar ISPConfig en Debian 10?

Cómo instalar Skype en Debian 10

Cómo instalar Go en Debian