Weird Localectl Behavior Under CentOS 7

Home » CentOS » Weird Localectl Behavior Under CentOS 7
CentOS 4 Comments

Hi,

On a fresh CentOS 7 installation using Français/France as regional parameters in the installer, here’s what localectl looks like:

[microlinux@linuxbox ~]$ localectl
System Locale: LANG=fr_FR.UTF-8
VC Keymap: ch-fr
X11 Layout: ch
X11 Variant: fr

Now I’d like to have my system messages in english. So I set the system language accordingly:

$ sudo localectl set-locale LANG=en_US.utf8

Things seem to look OK now:

[microlinux@linuxbox ~]$ localectl
System Locale: LANG=en_US.utf8
VC Keymap: ch-fr
X11 Layout: ch
X11 Variant: fr

Except when I display my LANG variable, it’s still fr_FR.UTF-8 for normal users… but en_US.utf8 for root.

This looks like inconsistent or buggy behavior to me.

Any suggestions on how to change the default system locale LANG so that it’s en_US.utf8 for everybody *without* having to jump through burning loops and putting it in everybody’s ~/.bashrc ?

Cheers,

Niki


Microlinux – Solutions informatiques durables
7, place de l’église – 30730 Montpezat Site : https://www.microlinux.fr Blog : https://blog.microlinux.fr Mail : info@microlinux.fr Tél. : 04 66 63 10 32
Mob. : 06 51 80 12 12

4 thoughts on - Weird Localectl Behavior Under CentOS 7

  • Le 15/05/2021 à 12:48, Nicolas Kovacs a écrit :

    OK, I experimented some more, and now I’m puzzled.

    1. When I’m connected directly (physically) to the server, LANG is set correctly: en_US.utf8 for both root and non-root users.

    2. When I’m opening a remote SSH session, LANG is set to fr_FR.UTF_8 for both root and non-root users.

    What’s going on here ?


    Microlinux – Solutions informatiques durables
    7, place de l’église – 30730 Montpezat Site : https://www.microlinux.fr Blog : https://blog.microlinux.fr Mail : info@microlinux.fr Tél. : 04 66 63 10 32
    Mob. : 06 51 80 12 12

  • Hi Nicolas,

    it works as expected because SSH sends these vars:

    /etc/ssh/ssh_config: SendEnv LANG LC_CTYPE LC_NUMERIC …

    /etc/ssh/sshd_config: AcceptEnv LANG LC_CTYPE LC_NUMERIC …

    Regards, Simon