Я только что установил Ubuntu 13.10 на свой Chromebook через Chrubuntu, который, похоже, не правильно настроил локали. Мои попытки сделать это самостоятельно терпят неудачу. Система должна иметь значение en_GB в режиме UTF-8. Выходной сигнал locale -a
включает в себя en_GB.utf8
. locale
выводит следующее:
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE=en_GB.utf8
LC_NUMERIC=en
LC_TIME=en
LC_COLLATE=en_GB.utf8
LC_MONETARY=en
LC_MESSAGES=en_GB.utf8
LC_PAPER=en
LC_NAME=en
LC_ADDRESS=en
LC_TELEPHONE=en
LC_MEASUREMENT=en
LC_IDENTIFICATION=en
LC_ALL=
Различные программы выдают ошибки, связанные с локалью, в основном не фатальные, например:
(process:2711): Gtk-WARNING **: Locale not supported by C library.
Using the fallback 'C' locale.
Однако, я также получаю сбои при загрузка из методов ввода с клавиатуры и при попытке использовать раздел «Языковая поддержка» в Системных настройках. В настоящее время мой файл /etc/default/locale
выглядит следующим образом, который был скопирован из вывода locale
в работающей системе (хотя с тех пор я мог внести одно или два изменения):
LANG=en_GB.utf8
LANGUAGE=
LC_CTYPE="en_GB.utf8"
LC_NUMERIC="en_GB.utf8"
LC_TIME="en_GB.utf8"
LC_COLLATE="en_GB.utf8"
LC_MONETARY="en_GB.utf8"
LC_MESSAGES="en_GB.utf8"
LC_PAPER="en_GB.utf8"
LC_NAME="en_GB.utf8"
LC_ADDRESS="en_GB.utf8"
LC_TELEPHONE="en_GB.utf8"
LC_MEASUREMENT="en_GB.utf8"
LC_IDENTIFICATION="en_GB.utf8"
LC_ALL=
На различных Точки, пытающиеся это исправить, мне удалось заставить apt выдать 400 ошибок при попытке запустить apt-get update
и сделать систему полностью не загружаемой, вызвав сбой mountall
.
Я пробовал различные решения, которые я нашел с помощью поиска в Google, включая запуск locale-gen
и dkpg-reconfigure locales
, но безуспешно.
Что происходит и как я могу это исправить?
Редактировать: Таким образом, установка LC_ALL=en_GB.utf8
устраняет локальные проблемы, но вызывает кучу сообщений об ошибках, когда я пытаюсь и SSH на других машинах, которые не ' У нас есть en_GB.utf8. Это не происходит в других моих коробках Ubuntu, поэтому должен быть способ отсортировать локальные настройки без настройки LC_ALL
и вызвать эти проблемы.
Даже если ваш /etc/default/locale
выглядит правильно, я рекомендую вам изменить его, чтобы он содержал только
LANG=en_GB.UTF-8
(что в действительности то же самое).
Но проблема, похоже, в том, что что-то в ваших пользовательских настройках портит локаль. Я ничего не знаю о Chrubuntu, но, предполагая, что у вас есть доступ к графическому интерфейсу Ubuntu для настройки языков, я предлагаю вам перейти к System Settings -> Language Support
и явно установить оттуда и язык, и региональные форматы.
В любом случае, никогда не стоит устанавливать LC_ALL через /etc/default/locale
.