как исправить ошибку локали

9

Я только что сделал новую установку ubuntu, используя debootstrap . Когда я делаю sudo aptitude upgrade , я получаю это сообщение об ошибке:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = "en_US:en",
    LC_ALL = (unset),
    LANG = "en_US.ISO-8859-1"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

Может кто-нибудь скажет мне, как решить эту проблему? Я вижу много сообщений, похожих на этот онлайн, но ни один из них, похоже, не разрешает проблему.

Я использую Ubuntu 14.04 LTS . Спасибо.

FYI:

$ locale -a
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.iso88591
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

и

$ locale
LANG=en_US.ISO-8859-1
LANGUAGE=en_US:en
LC_CTYPE="en_US.ISO-8859-1"
LC_NUMERIC="en_US.ISO-8859-1"
LC_TIME="en_US.ISO-8859-1"
LC_COLLATE="en_US.ISO-8859-1"
LC_MONETARY="en_US.ISO-8859-1"
LC_MESSAGES="en_US.ISO-8859-1"
LC_PAPER="en_US.ISO-8859-1"
LC_NAME="en_US.ISO-8859-1"
LC_ADDRESS="en_US.ISO-8859-1"
LC_TELEPHONE="en_US.ISO-8859-1"
LC_MEASUREMENT="en_US.ISO-8859-1"
LC_IDENTIFICATION="en_US.ISO-8859-1"
LC_ALL=
    
задан user1527227 09.05.2014 в 04:46
источник

4 ответа

6

debootstrap не создает локаль. Поэтому мы используем что-то другое как локаль. Используйте эту команду:

sudo locale-gen en_US.ISO-8859-1

Надеюсь, это поможет!

    
ответ дан user278630 09.05.2014 в 04:49
источник
10

Рабочий стол Ubuntu должен быть настроен с кодировкой UTF-8. По какой-то причине ваша система пытается установить локализацию latin1 en_US.ISO-8859-1. Вы действительно должны изменить это.

Возможно, настройка выполняется в /etc/default/locale .

Вроде бы это происходит, измените его на

LANG=en_US.UTF-8

, иначе вы столкнетесь с различными сюрпризами, связанными с локальностью.

    
ответ дан Gunnar Hjalmarsson 09.05.2014 в 14:22
6

Постоянное решение проблемы с локальностью - это экспорт переменных языка в файл .bash_profile . Вы также можете использовать файл /etc/profile вместо .bash_profile .

echo "export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8">>~/.bash_profile

Не забывайте, что source .bash_profile и следуйте в простой настройке.

Вот скрипт , который фиксирует языковой вопрос

    
ответ дан Ajeet Khan 27.02.2016 в 20:11
1

Добавьте LC_ALL="en_US.UTF-8" в /etc/environment , а затем перезапустите экземпляр / машину

Для получения дополнительной информации посетите этот блог

Ссылка     

ответ дан Ramesh Kumar Thiyagarajan 10.01.2016 в 13:09