MacOS下SSH服务器时提示cannot change locale (UTF-8) No such file or directory

问题描述

使用iterm2,ssh远程登录其他机器时,提示:setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory

且登录后无法正常显示中文字符。

原因

在zshrc下存在环境变量:

1
2
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

MacOS下ssh客户端在登录时,会尝试设置本地的LANG到远端服务器中。

远端Linux服务器没有UTF-8的字符集,就导致了setlocale的警报。

解决方案

修改ssh配置文件,sudo vim /etc/ssh/ssh_config ,注释如下内容

1
2
Host *
SendEnv LANG LC_*

MacOS下SSH服务器时提示cannot change locale (UTF-8) No such file or directory
http://example.com/2023/03/05/MacOS下SSH服务器时提示cannot-change-locale-UTF-8-No-such-file-or-directory/
作者
Rae
发布于
2023年3月5日
许可协议