我刚刚通过 Chrubuntu 在 Chromebook 上安装了 Ubuntu 13.10,但它似乎没有正确设置语言环境。我自己尝试这样做,但失败了。系统应该以 UTF-8 模式为 en_GB。includes 的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
并导致这些问题。
答案1
即使你的/etc/default/locale
外观正确,我建议你将其更改为仅包含
LANG=en_GB.UTF-8
(实际上是同一件事)。
但问题似乎是您的用户设置中的某些内容弄乱了语言环境。我对 Chrubuntu 一无所知,但假设您可以访问 Ubuntu GUI 来设置语言,我建议您转到System Settings -> Language Support
并从那里明确设置语言和区域格式。
无论如何,通过 设置 LC_ALL 永远不是一个好主意/etc/default/locale
。