在CentOS Linux上运行yum时报错Failed to set locale, defaulting to C
时间:2020-01-09 10:38:19 来源:igfitidea点击:
每当我运行yum命令时,都会收到错误或警告:
Failed to set locale, defaulting to C 无法设置区域设置,默认为C
。
如何在CentOS 7 Linux服务器上解决此问题?
为什么在CentOS 6或Fedora Linux系统上使用yum时,设置区域设置失败,默认为C?
解决方法:
语言环境为您的程序和Shell会话定义语言和国家/地区特定的设置。
您可以使用区域设置来查看日期,时间,数字,货币以及在您的Linux或类Unix系统上按照您的国家或语言格式化的其他值。
要设置系统区域设置,您需要使用shell变量。
例如,LANG变量可用于设置en_US(美国英语)语言。
了解无法设置语言环境,使用yum时默认为C
这意味着本地值未在您的CentOS Linux服务器或桌面系统上正确设置。
以下说明应帮助您解决此问题。
如何找出我的语言的当前值?
只需执行以下命令:
$ locale
或者
# locale
输出示例:
如何显示Linux或Unix上的当前语言环境设置?
我该如何解决这个问题?
要设置CentOS/Fedora和RedHat Enterprise Linux的i18n文件,请调用一个名为/etc/profile.d/lang.sh的特殊脚本。
确保此文件存在于您的系统中:
$ ls -l /etc/profile.d/lang.sh
如果文件存在,则调用它:
$ source /etc/profile.d/lang.sh
验证是否设置了LANG和LC_ * shell变量:
$ echo "$LANG" $ echo "$LC_CTYPE"
如何设置自己的LANG和LC_ALL/LC_CTYPE变量
您可以在自己的目录中手动设置它,如下所示:
$ vi ~/.bashrc
或全局/etc/profile.d/中的bash/sh/ksh shell:
$ sudo vi /etc/profile.d/my-custom.lang.sh
追加以下
## Indian English ## export LANG=en_IN export LANGUAGE=en_IN:en export LC_COLLATE=C export LC_CTYPE=en_IN.UTF-8
对于美国英语:
## US English ## export LANG=en_US.UTF-8 export LANGUAGE=en_US.UTF-8 export LC_COLLATE=C export LC_CTYPE=en_US.UTF-8
保存并关闭文件。
注销并再次登录。
或只是调用此文件:
$ source /etc/profile.d/my-custom.lang.sh
测试
现在,您可以使用yum命令,而不会出现任何问题:
$ sudo yum update $ sudo yum search nload $ sudo install nload