MacでCentOSにSSHログインしてyumを実行したら「Failed to set locale, defaulting to C」と出た
環境
- Mac OSX 10.9.5 Mavericks
- iTerm2
yum installできそうだけど怪しい。。。
Fabricをインストールする関係でpipでpycryptoをインストールするためにpython-develが必要で、yumコマンド実行しようとしたら出てきた。
$ yum list installed | grep python-devel Failed to set locale, defaulting to C $ locale locale: Cannot set LC_CTYPE to default locale: No such file or directory locale: LC_ALL?????????????????????: ?????????????????????? LANG=ja_JP.UTF-8 LC_CTYPE=UTF-8 # !?
解決策 LC_CTYPE=UTF-8を正しくする
調べてみると、LC_CTYPEはクライアントからサーバー側に送られているよう。
以下2つのエントリを参照されたし。
centos に gitolite 導入, あとロケール問題 - Please Sleep
確かにローカルマシンでlocaleコマンド打ってもLC_CTYPE=UTF-8と出る。
となると問題はターミナルアプリなので設定を見直す。
Profiles -> Terminal -> Set locale variables automaticallyのチェックを外す。
注意点
tmuxのセッションなどを作りなおしてもダメだったので、iTerm2ごと再起動した。
$ locale LANG="ja_JP.UTF-8" LC_COLLATE="ja_JP.UTF-8" LC_CTYPE="ja_JP.UTF-8" LC_MESSAGES="ja_JP.UTF-8" LC_MONETARY="ja_JP.UTF-8" LC_NUMERIC="ja_JP.UTF-8" LC_TIME="ja_JP.UTF-8" LC_ALL=
これでメッセージは出なくなった。