Fixing that weird locale error when SSHing to a server

SSH Error Screenshot

Each time I ssh to my server I'd keep seeing this error:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = "UTF-8",
	LANG = "C"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

What's happening here?

According to Greg Bacon, the environment variables for the locale gets sent to the server. Since the server doesn't have the locale requested by my client, I end up seeing that error.

The fix is quite simple. Edit the sshd.conf file and don't ask it to pass locale information to the server.

sudo nano /etc/ssh/sshd_config

Find the line with:

# pass locale information
AcceptEnv LANG LC_*

And comment it off:

# pass locale information
# AcceptEnv LANG LC_*

Galdin Raphael

Galdin Raphael is an independent full stack developer from Mumbai.

Subscribe to Galdin's Blog

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!