このページではLinuxインストールした自宅サーバー公開サーバー向けの日本語文字セットを設定する方法についてビギナー向けに解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
CentOS4.8インストール後の設定

インストール後の設定

ログインシステムの変更

ユーザーアカウントの作成

X-Windowと通信の確認

簡易テキストエディタ"nano"

ネットワークの詳細設定

日本語文字セットの設定

sshクライアントの導入

yumによるアップデート

不要デーモンの停止

公開のためのルーター設定

ダイナミックDNSの登録と設定

ダイナミックDNSの自動更新


互換性重視の"EUC"か先進の"UTF-8"か

LinuxOS の日本語の扱いに関しては、ずっと長い間 EUC が標準として扱われてきました。

しかしながら2003年11月に登場した FedoraCore から、標準文字セットが UTF-8 に変更されたのを皮切りに、他の ディストリビューション でもUTF-8が標準文字セットとして採用されるようになってきています。

CentOS では、CentOS3は RedHatLinux がベースとする RHEL3 クローン ですのでEUCが標準でしたが、CentOS4はFedoraCoreをベースするRHEL4のクローンですからUTF-8が標準になっています。

ただ、この違いはCentOSを CUI コマンド 操作を行うときの日本語表記に影響を与えるだけで、 サーバー として最も重要なサーバー アプリケーション の振る舞いなどには ほとんど影響を与えません

従って、サーバーアプリケーションの設定や運用に関して言えば、標準文字セットがEUCだろうとUTF-8だろうと一向に構わないということです。

この標準文字セットが実用上最も影響を及ぼすのは、 TELNET SSH などを利用してサーバーにリモート接続して操作する場合です。

これらの プロトコル を使ったリモート操作では、サーバーから クライアント 、及びクライアントからサーバーに送られる文字セットの種類が一致していなければ、送受信する文字に日本語が含まれるといわゆる 文字化け が発生してしまうことになるからです。

例えば、サーバー(CentOS4)側の文字セットと、クライアント側の SSHクライアント の文字セットの設定が共にUTF-8あるいは共にEUCの場合、クライアント側のリモート操作画面では、

サーバーとクライアントの文字セットが一致する場合(TeraTermPro)
サーバーとクライアントの文字セットが一致する場合(TeraTermPro)

のように表示されますが、サーバー側の設定がUTF-8、クライアント側の設定がEUCの場合には、

サーバーとクライアントの文字セットが一致しない場合(TeraTermPro)
サーバーとクライアントの文字セットが一致しない場合(TeraTermPro)

のように文字化けが発生してしまうことになります。

要はどちらの文字セットを使うかを決めて、サーバーとクライアントの環境を統一してしまえば良いだけの話なのですが、ではUTF-8とEUCのどちらを選択しておくべきなのでしょうか。

EUCは、UTF-8に取って代わられる可能性のある文字セットですから将来的にはサポートされなくなるでしょう。

だたしEUCは現在では最も普及した実績のある文字セットですから、実績と安定性を重視するサーバーの世界では、これが簡単に消滅することはまず考えられません。

例えばCentOS4のソースコードレベルでのサポート期限である2012年までは間違いなく利用可能ですし、おそらくはその数年後くらいまでは大丈夫でしょう。

一方のUTF-8は、これからの標準となる文字セットですから、将来的にはこちらを選んでおくのが良い選択です。

UTF-8はEUCと違い、世界中の言語を一つの文字セットで統一可能な仕組みをもっていますから、そういう意味でも先進的といえるでしょう。

ただしまだEUCほど普及している規格ではないため、クライアントアプリケーションの中にはUTF-8を扱うことのできないものも数多く存在します。

という訳ですからこの コンテンツ では、

「現時点ではEUCを標準文字セットとして選択すべきで、UTF-8は当分保留しておく。」

ことをおすすめします。

ただしその場合、CentOS4の標準文字セットはUTF-8になっていますので設定を変更しなければなりません。その方法については以下のパートで解説します。

もちろん、標準文字セットをUTF-8のまま使用する場合は以下の設定は必要ありません。

このページの先頭へ↑

CentOS4の文字セットをUTF-8からEUCに変更する

設定は、

"/etc/sysconfig/i18n"

及び

"/etc/man.config"

という二つの設定ファイルの内容を編集して行います。

前者は CentOS4 システム自体の設定ファイルです。

後者は、 コマンド のマニュアルページの文字セット Linuxのコマンドについて に関する設定ファイルです。

これらの設定ファイルは、 "root" ユーザー以外には変更できません。

まず、適当な ユーザーアカウント でCentOS4のシステムに ログイン した後、 su コマンド でユーザーアカウントを "root" に変更し、 "/etc/sysconfig/i18n" nano エディタで開きます nanoエディタでファイルを開く

[tanaka@web1 ~]$ su -Enter
Password: "root"のパスワードを入力します。 Enter
[root@web1 ~]# nano /etc/sysconfig/i18nEnter


CentOS4システムの標準文字セットはこの テキスト ファイルの先頭行、

LANG="ja_JP.UTF-8"

によって設定されていますので、この行を、

LANG="ja_JP.eucJP"

に書き換えてください。

テキストファイルの内容が変更されていなければ、 Ctrl+x だけで終了できます。

設定が終わったら、 Ctrl + x y Enter で設定ファイルを保存し、 nano エディタを終了します。

引き続き "/etc/man.config" nano エディタで開きます nanoエディタでファイルを開く

[root@web1 ~]# nano /etc/man.configEnter


コマンドのマニュアルページの文字セットは、このテキストファイルの 108行目 の記述で設定されていますので、nanoエディタの検索機能 nanoエディタの検索機能について を使って該当行を探します。

この行は、マニュアルページのデータを表示する「ページャー」と呼ばれる アプリケーション を指定するためのものですが、この、

PAGER     /usr/bin/less -iRs

PAGER     /usr/bin/less -irs

と書き換えてください。

テキストファイルの内容が変更されていなければ、 Ctrl+x だけで終了できます。

設定が終わったら、 Ctrl + x y Enter で設定ファイルを保存し、 nano エディタを終了します。

CentOS5で
サーバー構築なら
これがベストかな?

以上で設定の変更は終了しましたが、現在ログイン中の環境にはこのこの変更は適用されませんので、設定の変更を有効にするためには一度 ログアウト してください。

[root@web1 ~]# exitEnter
[tanaka@web1 ~]$ exitEnter

次回のログインからは設定の変更が有効になります。

このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
www.centos.org - The Community ENTerprise Operating System