LANG="ja_JP.UTF-8"設定がサーバ再起動時正しく反映されない・・・
Linux環境変数LANGをLANG="ja_JP.UTF-8"に設定したにも関わらず
Linnxサーバを再起動するとLANGが「en_US.UTF-8」になってしまいます。
これはなぜでしょうか
環境はLinux Redhat5
環境変数をファイル内で設定するには,「/etc/profile」,「~/.bash_profile」,
「~/.bashrc」の3つがあると思いますが、これらのファイルにはLANG設定がありません。
/etc/sysconfig/i18nと/etc/sysconfig/auditdに以下のLANG設定がありました。
# cat /etc/sysconfig/i18n
LANG="ja_JP.UTF-8"
# grep LANG /etc/sysconfig/*
/etc/sysconfig/auditd:# AUDITD_LANG to the empty string or the string "none".
/etc/sysconfig/auditd:AUDITD_LANG="en_US"
/etc/sysconfig/httpd:# change the locale in which the server runs, the HTTPD_LANG
/etc/sysconfig/httpd:#HTTPD_LANG=C
/etc/sysconfig/i18n:LANG="ja_JP.UTF-8"
以上
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>サーバ再起動時にTomcatが自動起動するので、Tomcatのstartup.shにサーバ再起動時のLANGを内容をファイルに吐き出すようにしています。
startup.shについてはよく判りませんが…
ps auxでサーバ起動時に起動したままのプロセスを探して、
/proc/PID/environ
を見ると…LANG=en_US.UTF-8ですね。
>/etc/profile.d/lang.shも確認したんですが、特に原因を確定できませんでした。
44行目でシェル変数CONSOLETYPEをシェル変数consoletypeに入れています。
続くif文で、シェル変数consoletypeの長さを調べて、0だった場合に
/sbin/consoletype stdout
の結果を入れています。
# 起動中だと、この結果は"vt"になる…のでしょう。
で、66行目からの処理でen_US.UTF-8に設定している…のかと。
# その後で、サービスの起動スクリプトが走っている…のか?
>sshでログインしてTomcatを再起動するとLANGがLANG="ja_JP.UTF-8"に変換しています。
/sbin/consoletype stdoutがptyですから…書き換えたりすることはないのでしょう。
/etc/sysconfig/i18nに
CONSOLETYPE=pty
を書き加えてからリブートしてみたらどうなりますかね?
……こんなんなりました↓(ちなみにPID=1673はsyslogdです)
[root@localhost ~]# cat /proc/1673/environ
CONSOLE=/dev/consoleSELINUX_INIT=YESTERM=linuxINIT_VERSION=sysvinit-2.86PATH=/sbin:/usr/sbin:/bin:/usr/binrunlevel=3RUNLEVEL=3PWD=/LANG=ja_JP.UTF-8previous=NPREVLEVEL=NSHLVL=3HOME=/_=/sbin/syslogd[root@localhost ~]#
ところで…en_US.UTF-8だと何か問題ありますか?
No.1
- 回答日時:
>Linnxサーバを再起動するとLANGが「en_US.UTF-8」になってしまいます。
どこで見ています?
GNOMEの端末エミュレータですか?
sshやTELNETなどのネットワーク越しですか?
コンソールからですか?
コンソールからログインすると、/etc/sysconfig/i18n で
LANG="ja_JP.UTF-8" としていても、en_US.UTF-8になります。
# コンソールでは日本語表示できませんし。
/etc/profile.d/lang.sh
で、それらしい設定を行っている部分があります。
当方、CentOS5.5ですが、
/etc/profile.d/lang.sh の66行目からの処理で、コンソールのタイプで判定してLANGを上書き処理しています。
回答ありがとうございます。
サーバ再起動後の確認はシェールを作って、
サーバ再起動時にTomcatが自動起動するので、Tomcatのstartup.shにサーバ再起動時のLANGを内容をファイルに吐き出すようにしています。
/etc/profile.d/lang.shも確認したんですが、特に原因を確定できませんでした。
sshでログインしてTomcatを再起動するとLANGがLANG="ja_JP.UTF-8"に変換しています。
現時点では
根本的な対策ではないですが、
サーバ再起動時にTomcatが再起動されるので、Tomcatのstartup.shにLANG="ja_JP.UTF-8"を追加して対応する予定です。
回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI CGIで出力するhtmlの<!DOCTYPE html>等のタグは要りますか? 2 2023/02/05 21:26
- レディース 下はパンツでしょうか? 3 2022/04/20 00:24
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- HTML・CSS CSSが上手く反映されないみたいです 2 2022/11/21 16:19
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- HTML・CSS flex の各子要素を横幅 100% にしたい 1 2022/09/22 21:25
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- JavaScript HTMLでJavaScriptを使ってパスワードの強化判定のプログラムを作成しています。 一通り作っ 2 2022/10/19 01:41
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
LANG="ja_JP.UTF-8"設定がサー...
-
Linuxを入れたばかりなのにタイ...
-
chownでファイル所有者なのに別...
-
hostsファイルの書き換えが反映...
-
ドラック&ドロップ出来ない時...
-
Fatal server error?
-
LinuxのOS稼動時間(uptime)を...
-
システムファイルバッファサイ...
-
LASTコマンド、wtmpに...
-
hosts に 記載がなければ追加...
-
Mac OS X でバッチファイルのよ...
-
現在、vsftpを使用しており、ロ...
-
Apache起動時に秘密鍵パスフレ...
-
嫌ってるのに真似してきたりマ...
-
Winmerge ファイルの中身は同じ...
-
同期センターのマークが出てま...
-
コマンドプロンプトによるフォ...
-
Excellにて→ファイルエラー:デ...
-
ファイルの先頭行を全て削除したい
-
バッチファイルで変数の中身を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
hosts に 記載がなければ追加...
-
~/.bash_profileがログイン時に...
-
ドラック&ドロップ出来ない時...
-
VLC media playerを常にデフォ...
-
Macでrtf書類を開くアプリケー...
-
LANG="ja_JP.UTF-8"設定がサー...
-
ward(mac)の<標準>ツールバー...
-
jpgファイルが開かない
-
Wine 黒い画面
-
Scriptを教えて下さい。(10.4)
-
Squidの起動エラーについて
-
chownでファイル所有者なのに別...
-
BINDで独自ドメインの名前解決...
-
コマンドプロンプトの標準テキ...
-
【UNIX】/var/adm/wtmpx という...
-
USBメモリからのソフトの自動起動
-
音楽のファイルを開く時にデフ...
-
Fatal server error?
-
imovieでAVCHDを書き出すとして...
-
キーチェーンアクセスの解除方...
おすすめ情報