多くのソフトウェアはロケールに応じてデータの表記や処理を行います
manコマンド等は代表的なもので、ロケールに応じて内容が日本語で表示(日本語manページがインストールされていれば)されたり英語で表示されたりします
このページでは、システムのロケールの設定の確認と変更方法について記載します
詳細はこちら→ CentOS7でのロケール(locale)の確認及び変更 – Zero Configuration
現在の設定内容の確認方法
現在の設定内容を確認するには以下のコマンドを実行します
# locale LANG=ja_JP.UTF-8 LC_CTYPE="ja_JP.UTF-8" LC_NUMERIC="ja_JP.UTF-8" LC_TIME="ja_JP.UTF-8" LC_COLLATE="ja_JP.UTF-8" LC_MONETARY="ja_JP.UTF-8" LC_MESSAGES="ja_JP.UTF-8" LC_PAPER="ja_JP.UTF-8" LC_NAME="ja_JP.UTF-8" LC_ADDRESS="ja_JP.UTF-8" LC_TELEPHONE="ja_JP.UTF-8" LC_MEASUREMENT="ja_JP.UTF-8" LC_IDENTIFICATION="ja_JP.UTF-8" LC_ALL=
LANG=ja_JP.UTF-8ですね
設定を変更する
localeの設定ファイルは/etc/sysconfig/i18nですのでこれを変更することにより設定が変更されます
ちなみにi18nとはinternationalisationの略。iとnの間に18文字あるからi18nらしいです
設定ファイルの中身は?
/etc/sysconfig/i18nの中身は以下の様になっています
# cat /etc/sysconfig/i18n LANG="ja_JP.UTF-8" SYSFONT="latarcyrheb-sun16"
“LANG=xxxx”の部分を変更することになります
LANGで指定できる値は?
LANGで指定できる値はlocaleコマンドの”-a”オプションで調べることができます
たくさんでてくるので、日本語に絞り込んでみます
# locale -a | grep -i ja ja_JP ja_JP.eucjp ja_JP.ujis ja_JP.utf8 japanese japanese.euc
LANGに指定できる値のうち、日本語関係については上記のうちのいずれかが指定できることになります
変更してみる
では、”ja_JP.eucjp”に変更してみたいと思います
変更は、前述の設定ファイル /etc/sysconfig/i18n の内容を以下の様に書き換えます
LANG="ja_JP.eucjp" SYSFONT="latarcyrheb-sun16"
これで、次回ログインからLANG=ja_JP.eucjpな環境になります
ログアウトせずに、すぐに反映したい場合は以下の様に実行してください
# . /etc/sysconfig/i18n
変更されているか確認
正しく変更されているかlocaleコマンドで確認してみましょう
# locale LANG=ja_JP.eucjp LC_CTYPE="ja_JP.eucjp" LC_NUMERIC="ja_JP.eucjp" LC_TIME="ja_JP.eucjp" LC_COLLATE="ja_JP.eucjp" LC_MONETARY="ja_JP.eucjp" LC_MESSAGES="ja_JP.eucjp" LC_PAPER="ja_JP.eucjp" LC_NAME="ja_JP.eucjp" LC_ADDRESS="ja_JP.eucjp" LC_TELEPHONE="ja_JP.eucjp" LC_MEASUREMENT="ja_JP.eucjp" LC_IDENTIFICATION="ja_JP.eucjp" LC_ALL=
うまく設定変更されたようです