Fix Error - Locale: Cannot Set LC_ALL to default locale: No such file or directory

Question

How to fix the error “locale: Cannot Set LC_ALL to default locale: No such file or directory”.

Answer

Locales are used in Linux to define which language the user uses. As the locales define the character sets being used as well, setting up the correct locale is especially important if the language contains non-ASCII characters.

To list all available locales, use:

$ locale –a
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=

On a debian server, you can fix it using the following.

1. Export “LC_ALL” parameter

export LC_ALL=en_US.UTF-8

2. Enable the locales in the server

locale-gen en_US.UTF-8
dpkg-reconfigure locales

or

Trying editing /etc/defaults/locale file and set LANG paramenter as below

LANG=en_US.UTF-8

3 Make sure package glibc-locale installed

Above 3 options should fix debian locale error.

About Bobbin Zachariah

Founder of LinOxide, passionate lover of Linux and technology writer. Started his career in Linux / Opensource from 2000. Love traveling, blogging and listening music. Reach Bobbin Zachariah about me page and google plus page.

Author Archive Page

Have anything to say?

Your email address will not be published. Required fields are marked *

All comments are subject to moderation.