Linuxでシステムロケールを変更または設定する方法
ロケールは、アプリケーションおよびLinuxシステム上のシェルセッションの言語、国、および文字エンコード設定(またはその他の特別なバリアント設定)を定義する一連の環境変数です。これらの環境変数は、システムライブラリおよびシステム上のロケール対応アプリケーションによって使用されます。
ロケールは、Linuxシステムで設定した言語または地域/国に従ってフォーマットされた時刻/日付形式、曜日、数字、通貨、その他のさまざまな値などに影響します。
この記事では、現在インストールされているシステムロケールの表示方法とLinuxでのシステムロケールの設定方法について説明します。
Linuxでシステムロケールを表示する方法
現在インストールされているロケールに関する情報を表示するには、ロケールまたは localectl ユーティリティを使用します。
$ locale LANG=en_US.UTF-8 LANGUAGE=en_US LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= $ localectl status System Locale: LANG=en_US.UTF-8 LANGUAGE=en_US VC Keymap: n/a X11 Layout: us X11 Model: pc105
環境変数に関する詳細情報( LC_TIME など)を表示できます。これには時刻と日付の形式が格納されています。
$ locale -k LC_TIME abday="Sun;Mon;Tue;Wed;Thu;Fri;Sat" day="Sunday;Monday;Tuesday;Wednesday;Thursday;Friday;Saturday" abmon="Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec" mon="January;February;March;April;May;June;July;August;September;October;November;December" am_pm="AM;PM" d_t_fmt="%a %d %b %Y %r %Z" d_fmt="%m/%d/%Y" t_fmt="%r" t_fmt_ampm="%I:%M:%S %p" era= era_year="" era_d_fmt="" alt_digits= era_d_t_fmt="" era_t_fmt="" time-era-num-entries=0 time-era-entries="S" week-ndays=7 week-1stday=19971130 week-1stweek=1 first_weekday=1 first_workday=2 cal_direction=1 timezone="" date_fmt="%a %b %e %H:%M:%S %Z %Y" time-codeset="UTF-8" alt_mon="January;February;March;April;May;June;July;August;September;October;November;December" ab_alt_mon="Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec"
利用可能なすべてのロケールのリストを表示するには、次のコマンドを使用します。
$ locale -a C C.UTF-8 en_US.utf8 POSIX
Linuxでシステムロケールを設定する方法
システムをローカルで変更または設定する場合は、ロケールの更新プログラムを使用してください。 LANG 変数を使用すると、システム全体のロケールを設定できます。
次のコマンドは、 LANG を en_IN.UTF-8 に設定し、 LANGUAGE の定義を削除します。
$ sudo update-locale LANG=LANG=en_IN.UTF-8 LANGUAGE OR $ sudo localectl set-locale LANG=en_IN.UTF-8
特定のロケールパラメータを設定するには、適切な変数を編集します。例えば。
$ sudo update-locale LC_TIME=en_IN.UTF-8 OR $ sudo localectl set-locale LC_TIME=en_IN.UTF-8
グローバルロケール設定は、次のファイルにあります。
- /etc/default/locale – on Ubuntu/Debian
- /etc/locale.conf – on CentOS/RHEL
これらのファイルは、VimやNanoなどのお気に入りのコマンドラインエディタを使って手動で編集し、システムのロケールを設定することもできます。
シングルユーザー用のグローバルロケールを設定するには、〜/ .bash_profile ファイルを開いて次の行を追加するだけです。
LANG="en_IN.utf8" export LANG
詳細については、ロケール、ロケールの更新、 localectl のマニュアルページを参照してください。
$ man locale $ man update-locale $ man localectl
それで全部です!この短い記事では、Linuxでシステムをローカルに表示および設定する方法を説明しました。質問がある場合は、下記のフィードバックフォームを使用してご連絡ください。