2011年11月7日月曜日

CentOS(6.0)でロケール関係の設定

スズキです。

CentOS(5.x)では下記のように設定して問題なかったのですが、
CentOSで初期起動時にLANGを設定
下記のCentOS(6.0)ではうまくいきませんでした…
SUZ-LAB謹製 CentOS AMI (6.0.3 32bit ap-northeast-1)

まず、利用できるロケールを確認します。

# locale -a | grep ja_JP
ja_JP
ja_JP.eucjp
ja_JP.ujis
ja_JP.utf8

次に、下記のように、LANGが"ja_JP.utf8"になるように設定します。

# cat /etc/sysconfig/i18n
LANG="ja_JP.utf8"

そして再起動後、下記のようにロケールの状態を確認すると、
警告メッセージが出てしまいました…

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

解決策としては、LC_CTYPEも"ja_JP.utf8"になるように設定すると、

# cat /etc/sysconfig/i18n
LANG="ja_JP.utf8"
LC_CTYPE="ja_JP.utf8"

再起動後、下記のように警告メッセージが出なくなります。

# locale
LANG=ja_JP.utf8
LC_CTYPE=ja_JP.utf8
LC_NUMERIC="ja_JP.utf8"
LC_TIME="ja_JP.utf8"
LC_COLLATE="ja_JP.utf8"
LC_MONETARY="ja_JP.utf8"
LC_MESSAGES="ja_JP.utf8"
LC_PAPER="ja_JP.utf8"
LC_NAME="ja_JP.utf8"
LC_ADDRESS="ja_JP.utf8"
LC_TELEPHONE="ja_JP.utf8"
LC_MEASUREMENT="ja_JP.utf8"
LC_IDENTIFICATION="ja_JP.utf8"
LC_ALL=

"SUZ-LAB謹製 CentOS AMI"にも反映しなければ…
--------
http://www.suz-lab.com

0 コメント: