黑帽联盟

 找回密码
 会员注册
查看: 1465|回复: 1
打印 上一主题 下一主题

[基础服务] CentOS下解决ssh登录 locale 警告

[复制链接]

895

主题

38

听众

3322

积分

管理员

Rank: 9Rank: 9Rank: 9

  • TA的每日心情

    前天 13:01
  • 签到天数: 1643 天

    [LV.Master]伴坛终老

    今天做虚拟化的时候,本地ssh登录虚拟出来的机器,报了如下错误:
    -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 director

    这种警告当然不能容忍,所以要fix it.

    解决方法:
    vim /etc/environment

    LANG=en_US.utf-8
    LC_ALL=

    保存以上内容

    执行以下语句:
    source /etc/environment

    输入以下命令,重新登录就不会出现这个问题了。
    localedef -v -c -i en_US -f UTF-8 en_US.UTF-8


    但是到底是什么原因导致这样的警告?
    首先看我们的登录警告提示:-bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory.因为我们已经设置了默认地区_语言.字符集为 en_US.UTF-8,但是在系统中没有定义这个问题。

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

    帖子永久地址: 

    黑帽联盟 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与黑帽联盟享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和黑帽联盟的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、黑帽联盟管理员和版主有权不事先通知发贴者而删除本文

    勿忘初心,方得始终!

    49

    主题

    1

    听众

    248

    积分

    至尊VIP

    Rank: 8Rank: 8

  • TA的每日心情
    奋斗
    2018-7-15 21:02
  • 签到天数: 215 天

    [LV.7]常住居民III

    不懂linux,唉
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 会员注册

    发布主题 !fastreply! 收藏帖子 返回列表 搜索
    回顶部