perl: warning: Setting locale failed


Sur un système CentOS 8.2, j’ai une erreur de locale en étant connecté en ssh à partir d’un macOS Catalina :

[[email protected] ~]$ cat /etc/redhat-release 
CentOS Linux release 8.2.2004 (Core) 

En lançant exiftool, j’avais un message d’avertissement pour l’utilisation de mes locales :

[[email protected] m]$ exiftool
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = "UTF-8",
	LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8”)

J’avais la même erreur avec la commande “locale” :

[[email protected] ~]$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LC_CTYPE=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=

Pour corriger mon problème, j’ai déclaré la variable d’environnement LC_ALL comme ceci :

[[email protected] ~]$ echo "export LC_ALL=\"en_US.UTF-8\"" >> ~/.bashrc

Vous pouvez contrôler que la variable LC_ALL est bien ajoutée dans votre .bashrc :

[[email protected] ~]$ grep LC_ALL ~/.bashrc 
export LC_ALL="en_US.UTF-8"

Vous pouvez vous déconnecter/reconnecter en ssh ou juste recharger le fichier .bashrc avec la commande source :

[[email protected] ~]$ source ~/.bashrc

La commande locale s’exécute sans aucun message d’avertissement :

[[email protected] ~]$ locale
LANG=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


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

EN | FR | ES

Recherche