我偶尔会出现语言环境错误,并试图运行dpkg-reconfigure语言环境来解决此问题。 这是输出:
:~$ sudo dpkg-reconfigure locales perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LC_CTYPE = "UTF-8", LANG = "en_US.UTF-8" 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_ALL to default locale: No such file or directory /usr/bin/locale: Cannot set LC_CTYPE to default locale: No such file or directory /usr/bin/locale: Cannot set LC_ALL to default locale: No such file or directory Generating locales (this might take a while)... en_US.UTF-8... done Generation complete. perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LC_CTYPE = "UTF-8", LANG = "C" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C"). perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LC_CTYPE = "UTF-8", LANG = "C" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C").
我查找/ usr / bin / locale,但它不存在于我的系统上。 我需要创build它吗? 我在那里放什么?
另外我发现一个相关的问题 ,说他的问题的原因是在sshd_config文件。 该文件具有以下条目:
AcceptEnv LANG LC_*
我主要担心这可能会导致我的VPS的问题,否则,如果没什么特别的,我会很乐意忽略这个问题。 我该怎么办? 谢谢!
如果发生这种情况时SSH到您的盒子,而不是在控制台上,尝试重新configuration您的SSH客户端 (在本地计算机上)。 在Mac OS X上编辑/ private / etc / ssh_config并注释掉
# SendEnv LANG LC_*
感谢Rasberry Pi公告板上的bredman职位。
第一:
sudo apt-get purge locales
然后:
sudo aptitude install locales
和着名的:
sudo dpkg-reconfigure locales
这摆脱了语言环境的系统,然后重新安装语言环境并将libc6从2.19降级到2.13这是问题。 然后再configuration区域设置。
我有这个问题很长一段时间,所有关于dpkg-reconfigure locales,locale-gen等的build议都没有帮助。 所以我用了一些环境variables,我发现系统在LC_CTYPE环境variables上正在运行! UTF-8不是一个有效的值。 将其设置为en_US.UTF-8修复了它。
为了使更改永久,我跑了
update-locale LC_CTYPE=en_US.UTF-8
写入/etc/default/locale 。 然后重新启动系统使其完全生效。
我以前在Debian安装过程中看到过这种情况,虽然很烦人,但我从来没有见过这个问题。
如果
/usr/bin/locale
缺less,请尝试(以root身份):
apt-get install libc-bin
应该安装libc-bin,提供/ usr / bin / locale。
在你的sshd_config中的AcceptEnv行是相当标准的,不应该是你的问题的原因在这里。
如果在ssh到远程系统时发生错误,并且不想修改远程系统(例如通过更改sshd_config),则可以在本地系统上执行以下操作(假定为bash)
export LC_ALL=en_US export LANGUAGE=en_US
然后ssh user@remote
做了以下,作为Manoj,但添加到#〜/ .bashrc:
export LC_ALL=en_US.utf8 export LANGUAGE=en_US.utf8
在我新鲜的Debian安装(最小)区域设置完全丢失。 安装它( aptitude install locales )和运行locale-gen做了伎俩。 所以,大家好,乍得Feller提到,但检查安装程序包locales安装第一。
如果在/etc/ssh/sshd_config ( UsePAM no )中禁用了ssh的PAMauthentication,那么/etc/pam.d/login中的相关configuration无效:
session required pam_env.so readenv=1 envfile=/etc/default/locale
结果是: /etc/default/locale似乎没有效果。
所以你必须configuration你的客户端来发送LANGvariables,或者像~/.profile , ~/bashrc等configuration文件脚本中导出envvariables
更多: http : //wiki.debian.org/Locale#Standard
我正在使用德语VPS,因为没有安装英文语言包,所以无法更改语言环境。
安装后我终于可以改变语言环境
aptitude install language-pack-en
在Debian系统上,这将解决您的问题:
apt-get install locales-all
在Ubuntu系统上安装特定的语言包,例如:
apt-get install language-pack-en
locale-gen en_US.UTF-8