久しぶりに raspi をセットアップしました。
macOS から ssh したとこころ、ログイン後に
-bash: 警告: setlocale: LC_CTYPE: ロケールを変更できません (UTF-8): そのようなファイルやディレクトリはありません
と怒られてしまいました。
raspi
noh@raspi:~ $ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: ??????????????????????
LANG=ja_JP.UTF-8
LANGUAGE=
LC_CTYPE=UTF-8
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_PAPER="ja_JP.UTF-8"
LC_NAME="ja_JP.UTF-8"
LC_ADDRESS="ja_JP.UTF-8"
LC_TELEPHONE="ja_JP.UTF-8"
LC_MEASUREMENT="ja_JP.UTF-8"
LC_IDENTIFICATION="ja_JP.UTF-8"
LC_ALL=
macOS
onoh@MacBookAir ~ % locale
LANG=""
LC_COLLATE="C"
LC_CTYPE="UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=
調べてみると masOS の ssh_config には
/etc/ssh/ssh_config
Host *
SendEnv LANG LC_*
と書かれています
man ssh_config でみると
It is possible to clear previously set SendEnv variable names by prefixing patterns with -.
など書かれていますが、効果がないので下記のようにすると効果がありました。
~/.ssh/config
Host raspi
SetEnv LC_CTYPE=ja_JP.UTF-8