aboutnagaishiの日記

テレコム屋さん出身で、現在はweb企業の社内インフラやっています。インフラ周りを中心に業務の備忘録として使用します。

ssh接続時とperlコマンドの際にlocaleでwarningがでる時の対処法

仮想マシンssh接続する際及びperl実行時にwarningがでた。 以下サイトを参考にして解決。 Failed to set locale, defaulting to C

warining内容

$ vagrant ssh
Last login: Mon Dec 29 02:40:06 2014 from 10.0.2.2
-bash: warning: setlocale: LC_CTYPE: cannot change locale (ja_JP.UTF-8): No such file or directory
-bash: warning: setlocale: LC_COLLATE: cannot change locale (ja_JP.UTF-8): No such file or directory
-bash: warning: setlocale: LC_MESSAGES: cannot change locale (ja_JP.UTF-8): No such file or directory
-bash: warning: setlocale: LC_NUMERIC: cannot change locale (ja_JP.UTF-8): No such file or directory
-bash: warning: setlocale: LC_TIME: cannot change locale (ja_JP.UTF-8): No such file or directory
$ perl -version
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "ja_JP.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

対処法

/etc/ssh_configのSendEnv LANG LC_*行をコメントアウト

LC_CTYPEssh接続先に送信しないようにする。

その他

以下サイトに仕組み及び複数の対処法が示されている。 上記対処法ができない場合こちらを参考にするといいかも。 Mac から Ubuntu に ssh ログインするとなんかロケール云々で怒られるやつ