Ubuntu Linux

Linuxで「perl: warning: Setting locale failed.」というエラーメッセージが表示されたので原因や解決法などについての覚え書き。

 

 

環境

ローカルホストからSSHでリモートホストにログインしている環境。

ローカル: Desktop (Ubuntu 16.04)

リモート: Raspberry Pi3 Model B (Raspbian)

エラーメッセージ

リモートホストで perl を実行すると Perl が下記のようなエラーメッセージを吐いた。

ロケール設定を確認しなおすように警告されている。

SSH ではなく VNC を使ったリモートデスクトップにて perl -v を実行するとエラーは発生しなかった。

解決

方法A: locale-gen

リモートホストで /etc/locale.gen を開いて確認する。

en_US.UTF-8 UTF-8 以外の値がコメントアウトされていたので ja_JP.UTF-8 UTF-8 のコメントを解除して locale-gen を実行すると Perl のエラーが解決した。

方法B: ssh_config

locale.gen を編集して locale-gen をする方法で解決したがこちらの方法でもエラーは消えた。

ローカルホストの ssh_config を開き SendEnv LANG LC_* をコメントアウトして保存する。

再度 SSH でリモートホストにログインして perl -v を実行するとエラーは解決した。

 

【Linux】perl: Setting locale failed の解決
Tagged on:     

コメントを残す