CentOS 下解决ssh登陆 locale 警告

最近登陆一台CentOS 6机器,发现每次登陆都提示以下警告:html

-bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_MESSAGES: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_NUMERIC: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_TIME: cannot change locale (en_US.UTF-8): No such file or directory

这种警告固然不能容忍,因此要fix it.segmentfault

# tee /etc/environment <<- 'EOF'
 LANG=en_US.utf-8
 LC_ALL=
 EOF

# source /etc/environment
/* 生成 en_US.UTF-8 locale文件 CentOS没有locale-gen命令*/
# localedef -v -c -i en_US -f UTF-8 en_US.UTF-8

输入如下命令,从新登陆就不会出现这个问题了。
可是究竟是什么缘由致使这样的警告?
首先咱们须要知道什么是locale ,这篇文章说的挺好。bash

首先看咱们的登陆警告提示:-bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory.由于咱们已经设置了默认地区_语言.字符集为 en_US.UTF-8,可是在系统中没有定义这个问题。code

咱们能够经过运行 locale -a 查看系统当前支持的locale定义。在上面咱们看到,咱们经过运行“localedef -v -c -i en_US -f UTF-8 en_US.UTF-8” 生成相应的locale配置文件。以后系统就不会报错了。htm

 

本文摘自:https://segmentfault.com/a/1190000004378075blog

只为本身记录而已utf-8

相关文章
相关标签/搜索