Mac升级至High Sierra后SSH连接CentOS遇setlocale警告的解决方法
解决Mac升级High Sierra后SSH连接CentOS出现
-bash: warning: setlocale: LC_ALL: cannot change locale (en_us.utf-8)的问题 最近刚踩过这个坑!把Mac从Sierra升级到High Sierra后,用终端SSH连接CentOS 6或7时,每次都会弹出这个烦人的警告:
-bash: warning: setlocale: LC_ALL: cannot change locale (en_us.utf-8)
根源修复方案(亲测有效)
一开始试了几个临时办法都没彻底解决,后来才发现问题出在本地Mac的.bash_profile配置文件里——里面设置的区域环境变量是全小写的en_us.utf-8,不符合系统要求的标准格式。修复步骤超简单:
- 打开终端,编辑用户目录下的
.bash_profile:nano ~/.bash_profile - 找到类似这样的环境变量设置行:
export LC_ALL=en_us.utf-8 - 将其修改为标准的大小写格式:
export LC_ALL=en_US.UTF-8 - 保存并退出nano编辑器(按
Ctrl+O确认保存,回车后按Ctrl+X退出),然后让配置立即生效:source ~/.bash_profile
完成后再SSH连接CentOS,那个烦人的警告就彻底消失了!
我尝试过的其他参考方案
除了上面的根源修复,我还试了网上提到的几种方法,虽然没解决我的问题,但说不定能帮到其他人:
- 在CentOS服务器端修改
/etc/environment文件,添加区域设置(需要root权限):
在文件里添加:sudo nano /etc/environment
保存后可以重启SSH服务或者重新登录服务器试试。LC_LANG=en_US.utf8 LC_ALL=en_US.utf8 - 尝试调整Mac客户端的系统语言区域设置,但对我的情况没有效果(原文内容未完成,此处如实说明)
内容的提问来源于stack exchange,提问作者Gerald Me
相关产品推荐
相关产品推荐

