ssh ログイン時に setlocale の warning が出て vim で日本語が文字化けした


ssh ログイン

-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory

Amazon Linux で kernel をアップデートした影響か、ssh ログイン時に上記のエラーが出力され、 vim でマルチバイトが文字化けするようになった。

locale

locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LC_CTYPE=UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

locale コマンドを打つと LC_CTYPELC_ALL でエラーが出ている。

/etc/sysconfig/i18n

cat /etc/sysconfig/i18n
LANG=en_US.UTF-8
echo 'LC_ALL="en_US.utf-8"' >> /etc/sysconfig/i18n
echo 'LC_CTYPE="en_US.utf-8"' >> /etc/sysconfig/i18n

/etc/sysconfig/i18n ファイルに LC_ALLLC_CTYPE を追記したら解決した。