気軽に楽しくプログラムと遊ぶ

自分が興味があってためになるかもって思う情報を提供しています。

ssh時はローカルのlocaleを接続先に引き継いでしまう

タイトルの通りだけど、ssh時はローカルで設定したlocaleを引き継いでしまい、 接続先はen_USだったはずなのに、ja_JPになるということがある。

ssh -v でデバッグすると、接続先にロケール情報を引き継いでいることを確認できる。

[接続元]$ ssh -vi ***.pem ec2-user@***.***.***.***
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to ***.***.***.*** [***.***.***.***] port 22.
debug1: Connection established.
debug1: identity file test-cm.pem type -1
debug1: identity file test-cm.pem-cert type -1
・
・
・
debug1: Sending environment.
debug1: Sending env LANG = ja_JP.UTF-8

SSH接続時のLANG設定がOS設定値と異なる時の対処方法 | DevelopersIO

解決方法

/etc/ssh_configのEnvをssh時に送信する設定をコメントアウトするとlocale設定を引き継がなくなる。

 Host *
 #   SendEnv LANG LC_*