我刚刚使用 重新安装了 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
。谢谢。
供参考:
$ 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=
答案1
Ubuntu 桌面应使用 UTF-8 编码。出于某种原因,您的系统尝试设置 latin1 区域设置 en_US.ISO-8859-1。您确实应该更改它。
也许故事发生在/etc/default/locale
。
无论发生什么,都将其更改为
LANG=en_US.UTF-8
否则您将会遇到各种与地点相关的惊喜。
答案2
解决语言环境问题的永久方法是导出 中的语言环境变量~/.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
不要忘记启动一个新 shell 或手动source ~/.bash_profile
。
答案3
不会debootstrap
创建语言环境。因此我们使用其他语言环境。使用此命令:
sudo locale-gen en_US.ISO-8859-1
我希望这有帮助!
答案4
添加LC_ALL="en_US.UTF-8"
然后/etc/environment
重新启动实例/机器
欲了解更多信息请访问此博客
http://www.pixelninja.me/how-to-fix-invalid-locale-setting-in-ubuntu-14-04-in-the-cloud/