新安装 CentOS 时出现区域设置问题

新安装 CentOS 时出现区域设置问题

我最近使用 NetInstall CD 安装了几个 CentOS 7,一切都很顺利,安装完成,我可以访问服务器。但是,当我随后尝试使用 ssh 连接到服务器时,我得到:

-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory

确实输入“locale”我得到:

# locale
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
LANG=en_US.utf8
LC_CTYPE=UTF-8
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=

设置为:

# cat /etc/locale.conf
LANG="en_US.utf8"
[root@moria ~]# localectl list-locales | grep en_US
en_US
en_US.iso88591
en_US.iso885915
en_US.utf8

所以没什么花哨的,它是一个开箱即用的更新 CentOS。

尝试设置它我得到:

# localectl set-locale LC_TYPE=en_US.utf8
Failed to issue method call: Invalid Locale data.

所以我的问题是:我错过了什么?如何正确设置。非常感谢!

答案1

我刚刚遇到了类似的问题。解决方案是安装预期的语言包:

yum install glibc-langpack-en.x86_64

注意:它是在 CentOS 8 上,但我猜解决方案在 CentOS 7 上会类似。

答案2

您的 LC_CTYPE 变量似乎定义不正确。它应该是:

LC_CTYPE="en_US.UTF-8"

代替

LC_CTYPE=UTF-8

正如 RobotJohnny 所说,这可能与您的 SSH 客户端有关。

相关内容