ロケールエラーを修正する方法

ロケールエラーを修正する方法

を使って Ubuntu を新規インストールしましたdebootstrap。するとsudo aptitude upgrade、次のエラー メッセージが表示されます。

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = "en_US:en",
    LC_ALL = (unset),
    LANG = "en_US.ISO-8859-1"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

誰かこの問題を解決する方法を教えてください。これに似た投稿をオンラインでたくさん見かけますが、どれも問題を解決していないようです。

使っていますUbuntu 14.04 LTS。ありがとうございます。


ご参考までに:

$ locale -a
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.iso88591
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

そして

$ locale
LANG=en_US.ISO-8859-1
LANGUAGE=en_US:en
LC_CTYPE="en_US.ISO-8859-1"
LC_NUMERIC="en_US.ISO-8859-1"
LC_TIME="en_US.ISO-8859-1"
LC_COLLATE="en_US.ISO-8859-1"
LC_MONETARY="en_US.ISO-8859-1"
LC_MESSAGES="en_US.ISO-8859-1"
LC_PAPER="en_US.ISO-8859-1"
LC_NAME="en_US.ISO-8859-1"
LC_ADDRESS="en_US.ISO-8859-1"
LC_TELEPHONE="en_US.ISO-8859-1"
LC_MEASUREMENT="en_US.ISO-8859-1"
LC_IDENTIFICATION="en_US.ISO-8859-1"
LC_ALL=

答え1

Ubuntu デスクトップは UTF-8 エンコードで設定する必要があります。何らかの理由で、システムは latin1 ロケール en_US.ISO-8859-1 を設定しようとします。これを変更する必要があります。

おそらく設定は です/etc/default/locale

どこで起こっても、それを

LANG=en_US.UTF-8

そうしないと、さまざまなロケール関連の驚きに遭遇することになります。

答え2

ロケールの問題に対する永続的な解決策は、 内のロケール変数をエクスポートすることです。の代わりに ファイルを使用して、システム上のすべてのユーザーに変更を適用すること~/.bash_profileもできます。/etc/profile.bash_profile

echo "export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
" >> ~/.bash_profile

新しいシェルを起動するか、手動で起動することを忘れないでくださいsource ~/.bash_profile

答え3

debootstrapロケールを作成しません。そのため、ロケールとして別のものを使用します。次のコマンドを使用します。

sudo locale-gen en_US.ISO-8859-1

これが役に立つことを願っています!

答え4

インスタンス/マシンLC_ALL="en_US.UTF-8"を追加して再起動します/etc/environment

詳細については、このブログをご覧ください。

http://www.pixelninja.me/how-to-fix-invalid-locale-setting-in-ubuntu-14-04-in-the-cloud/

関連情報