GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer/modifier les paramètres régionaux sur Debian ?

Solution 1 :

Modifier /etc/default/locale et définissez le contenu sur :

LANG="nl_NL.UTF-8"

Vous pouvez vérifier les paramètres régionaux que vous avez actuellement générés en utilisant :

locale -a

Vous pouvez en générer plus en modifiant /etc/locale.gen et décommentez les lignes pour les paramètres régionaux que vous souhaitez activer. Ensuite, vous pouvez les générer en exécutant la commande :

locale-gen

Vous pouvez trouver une liste des paramètres régionaux pris en charge dans /usr/share/i18n/SUPPORTED

Il y a plus d'informations disponibles sur le wiki Debian.

Solution 2 :

Vous devrez peut-être installer le locales forfait. Cela vous demandera quels paramètres régionaux générer. S'il est déjà installé, alors dpkg-reconfigure locales vous permettra de générer plus de paramètres régionaux.

Solution 3 :

Les réponses ici sont incomplètes comme pour la plupart ailleurs. Après avoir rassemblé des informations à partir de quelques endroits, ce qui a fonctionné pour moi était de (1) m'assurer que les paramètres régionaux que je voulais étaient disponibles (le générer si ce n'était pas le cas) puis (2) définir les variables d'environnement liées aux paramètres régionaux sur les paramètres régionaux souhaités.

Dans mon cas, j'avais besoin de en_US.UTF-8 installé par programme (c'est-à-dire de manière non interactive) dans un conteneur Docker. Le ff a accompli ce dont j'avais besoin, mais cela devrait très bien fonctionner dans un shell interactif.

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

Sur le même shell, vous devrez faire source ~/.bashrc pour que les variables env prennent effet immédiatement. Vous pouvez vérifier que les paramètres régionaux ont été correctement configurés en appelant 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

Il y avait beaucoup d'entrées de questions-réponses sur ce sujet, mais seules quelques-unes étaient réellement utiles. Crédit où le crédit est dû :

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

Solution 4 :

Aucune de ces réponses n'a fonctionné pour moi, sur un conteneur LXC installé avec :

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

J'ai toujours obtenu la sortie suivante de locale-gen , c'est-à-dire ne générant aucune locale (aucune répertoriée) :

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

Exécution de dpkg-reconfigure locales et la sélection de certains paramètres régionaux n'a pas mis à jour /etc/locale.gen comme je m'y attendais.

Cependant, lorsque j'ai modifié ce fichier manuellement et décommenté les paramètres régionaux que je voulais, alors locale-gen a commencé à fonctionner correctement :

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

J'ai également pu générer des paramètres régionaux manuellement comme ceci :

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

Mais ce n'était pas une solution permanente :j'ai trouvé que l'exécution de locale-gen sans le --keep-existing l'option supprimera tous ces paramètres régionaux générés manuellement, c'est-à-dire tous les paramètres régionaux non répertoriés (et non commentés) dans /etc/locale.gen .

Solution 5 :

Pour une application Web, il peut être préférable d'utiliser setlocale () à l'intérieur le programme, plutôt que d'exiger que les paramètres régionaux par défaut du système soient définis de manière appropriée à l'extérieur. Moins d'extrémités lâches de cette façon.


Linux
  1. Comment installer R sur Debian 9

  2. Comment installer R sur Debian 10

  3. Comment changer le nom d'hôte dans Debian

  4. Comment installer MariaDB sur Debian 11

  5. Comment installer MySQL sur Debian 11

Comment installer Odoo sur Debian 10

Comment installer OpenNebula sur Debian 10

Comment installer Memcached sur Debian 10

Comment installer ISPConfig sur Debian 10 ?

Comment installer Skype sur Debian 10

Comment installer Go sur Debian