Mac远程ssh出现LC_CTYPE错误的解决
这篇讲的是用 Mac 终端 SSH 到 Linux 服务器时,总弹出 `-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8)` 的烦人提示。很多人第一反应是去服务器端改 locale 配置,但发现改了也没用。 文章点破了关键:问题的根源其实在 Mac 本地。因为 SSH 连接时,Mac 会自作主张地把本地的 `LANG` 和 `LC_*` 环境变量“发送”给远程服务器,覆盖了服务器自己的设置。所以,无论服务器怎么配置,只要 Mac 发了个它不支持的 locale,这边就会报错。 解决方案非常直接:在 Mac 的 `/etc/ssh_config` 配置文件里,找到 `SendEnv LANG LC_*` 这一行,把它注释掉。这样 SSH 连接时就不会再把本地的 locale 变量传过去了,警告自然消失。对于经常跨 Mac 和 Linux 环境工作的开发者来说,这个小技巧能立刻还你一个清静的终端。