LANDISK HACKING DIARY | ||
Since2005/8/17 | ||
TOPへ戻る | ||
INDEX | |||||||||
1. locale の設定 2. エラーメッセージを英語で表示する 3. 参考文献 |
|||||||||
locale の設定 | |||||||||
今更だが、Localeを正しく設定し、/share 以下にある日本語ファイル名が Windowsとdebian環境、双方の環境で文字化けしないようにする。初めに、デフォルトでは、locales がインストールされていないのでapt-get しておく。
次に、debian 環境で使用するデフォルトのlocale をEUC-JP にするのか、UTF-8 にするのかを選択する。これは、samba の/etc/samba/smb.conf で設定したコーディングの設定と同じにする必要がある。筆者の場合は、以下のようにUTF-8に設定してある。LANDISKのデフォルトでは、SJIS でファイルを書き込むので、debian 環境の samba でcharset を UTF-8に設定して起動しているとWindowsからもdebian 環境からも文字化けが発生する。なので、この文字化けを修正するためには、一旦debian環境を抜け、LANDISK環境のsambaを起動させた後、日本語ファイル名のデータをローカルHDDに待避させておく。待避を終えたら、debian 環境でもう1度samba をUTF-8で起動させ、先ほど保存したデータをコピーし直す作業を行う。
ここまでの時点では、debian 環境のsamba はUTF-8 で起動させ、また、/mnt/hda3/share 以下にあるデータも UTF-8 で保存しなおしたことを前提として話しを進めていく。まず、/etc/local.gen を見てみる。通常ならば、ここにはコメントアウトされたもの以外はなにも書き込まれていないはずだ。
以下で、locale の設定を行うことで、/etc/locale.gen には自動で書き込まれるようになる。 locale の設定には2通りの方法がある。両方とも簡単なので覚えておこう。 ■dpkg-reconfigureコマンドの場合 dpkg-reconfigure コマンドを実行すると以下のように生成したいロケールを選択する画面になる。とりあえず、ja_JP.EUC-JPとja_JP.UTF-8 を選択しておけばいいだろう。
次にデフォルトのlocale を何にするか問われるので、ここでは、ja_JP.UTF-8 を選択しておく。OKを選択してENTERすると、locale の生成が始まる。UTF-8 の生成には4~5分要した。
最後に環境変数LANGを、UTF-8 に変更しておく。これでdebian 環境内で正常に日本語ファイル名を読むことができる。/etc/locale.gen にも以下のように書き込まれるはずだ。
■locale-gen コマンドの場合 locale-gen コマンドを使う場合は、直接、/etc/locale.gen を編集する。その後、locale-gen コマンドを実行する。
また、ログイン時に自動的に環境変数LANGをexport するように、.profile に以下の行を加えておく。
|
|||||||||
エラーメッセージを英語で表示する | |||||||||
locale コマンドで現在の詳細なロケールが表示されます。注意したいのは、環境変数LC_ALLがセットされている場合は、LC_CTYPEやLC_MESSAGESの元の設定は無効となる。環境変数LC_ALLがセットされていない場合は、LC_CTYPE や LC_MESSAGESのデフォルトの値は環境変数LANGの値となる。
以下のようににdeb パッケージをインストールする際に表示されるエラーメッセージなどは日本語よりも英語の方が返って見やすかったりします。
このエラーメッセージを英語に設定するには、LC_MESSAGEの値を変更します。但し、man ページも日本語表示されてしまいます。
perl で確認した際に以下のようなエラーメッセージが発生する場合は、ロケールが正しい位置に存在しない可能性があります。/usr/lib/locale あるいは、 /usr/share/locale 以下を確認し、使用したいロケールが本当にインストールされているのかどうかを確認しておきましょう。インストールされていない場合は、dpkg-reconfigure locales を実行する。
|
|||||||||
参考文献 | |||||||||
■Linux における日本語ロケールに関する指針 |
TOPへ戻る | ||
Copyright © KORO All Rights Reserved. |