LPICの勉強や実務などにおいて、CentOS7の言語表示を英語から日本語に、または日本語から英語に変えたい場面があると思います。
CentOSをはじめとしたLinuxでは言語表示の切り替えがコマンドで簡単にできるようになってます。
今回はCentOS7で言語設定(英語・日本語)を切り替える方法を説明します。
目次
結論
CentOS7で英語、日本語の切り替えをしたい場合は、以下のコマンドでやるのがおすすめです。
localectl set-locale LANG=[ロケール名]
英語と日本語のロケール名は以下の通りです。
言語 | ロケール名 |
---|---|
英語 | en_US.utf8 |
日本語 | ja_JP.utf8 |
utf8
の表記は、utf-8
やUTF-8
でもOKです。
環境
- OS:CentOS7
- root権限で実施
[root@host01]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
CentOS7の言語設定:localectl コマンド
英語から日本語へ切り替える
localectl
やlocalectl status
コマンドで現在の言語設定を確認できます。
[root@host01]# localectl
System Locale: LANG=en_US.utf8
VC Keymap: us
X11 Layout: n/a
[root@host01]# localectl status
System Locale: LANG=en_US.utf8
VC Keymap: us
X11 Layout: n/a
localectl set-locale
コマンドで言語設定を日本語に設定します。
ですが即時反映はされません。
[root@host01]# localectl set-locale LANG=ja_JP.utf8
[root@host01]# date
Tue Sep 15 17:06:51 JST 2020
設定を即時反映させるためには再起動するか、以下のコマンドを実行します。
[root@host01]# source /etc/locale.conf
[root@host01]# date
2020年 9月 15日 火曜日 18:56:52 JST
日本語から英語へ切り替える
localectl
やlocalectl status
コマンドで現在の言語設定を確認できます。
[root@host01]# localectl
System Locale: LANG=ja_JP.utf8
VC Keymap: us
X11 Layout: n/a
[root@host01]# localectl status
System Locale: LANG=ja_JP.utf8
VC Keymap: us
X11 Layout: n/a
localectl set-locale
コマンドで言語設定を英語に設定します。
ですが即時反映はされません。
[root@host01]# localectl set-locale LANG=en_US.utf8
[root@host01]# date
2020年 9月 15日 火曜日 19:11:27 JST
設定を即時反映させるためには再起動するか、以下のコマンドを実行します。
[root@host01]# source /etc/locale.conf
[root@host01]# date
Tue Sep 15 19:11:47 JST 2020
一時的に言語設定を変更する:export コマンド
現在の言語設定は環境変数LANGでecho $LANG
のコマンドで確認することができます。
英語はen_US.utf8
、日本語は ja_JP.utf8
です。
日付を表示するdate
コマンドなどでも現在の言語設定が日本語か英語か確認することができます。
英語と日本語をexportコマンドで切り替えることができます。
ログオフまたは再起動すると元の設定に戻ってしまいます。
英語から日本語へ切り替える
言語設定を確認します。
環境変数LANGやdate
コマンドで確認できます。
[root@host01]# echo $LANG
en_US.utf8
[root@host01]# date
Tue Sep 15 16:41:20 JST 2020
export LANG=[ロケール名]
コマンドで言語設定を日本語に変更します。
date
コマンドで確認すると日本語に変更できているのが確認できます。
[root@host01]# export LANG=ja_JP.utf8
[root@host01]# date
2020年 9月 15日 火曜日 16:41:54 JST
ログオフ後に再ログインすると言語設定が元に戻っていることが確認できます。
[root@host01]# exit
ログアウト
[vagrant@host01]$ su -
Password:
Last login: Tue Sep 15 16:41:17 JST 2020 on pts/1
[root@host01]# date
Tue Sep 15 16:42:35 JST 2020
日本語から英語へ切り替える
言語設定を確認します。
環境変数LANGやdate
コマンドで確認できます。
[root@host01]# echo $LANG
ja_JP.utf8
[root@host01]# date
2020年 9月 15日 火曜日 17:06:26 JST
export LANG=[ロケール名]
コマンドで言語設定を英語に変更します。
date
コマンドで確認すると英語に変更できているのが確認できます。
[root@host01]# export LANG=en_US.utf8
[root@host01]# date
Tue Sep 15 17:06:51 JST 2020
ログオフ後に再ログインすると言語設定が元に戻っていることが確認できます。
[root@host01]# exit
logout
[vagrant@host01]$ su -
Password:
Last login: Tue Sep 15 16:42:06 JST 2020 on pts/1
[root@host01]# date
2020年 9月 15日 火曜日 17:07:07 JST
【非推奨】ファイルを直接編集して変更する方法
localectl set-locale
より手間もかかり、viの操作に慣れている必要もあるので、おすすめはしませんが、ファイルを直接編集して言語設定を変更する方法もあります。
~/.bash_profile
を開きます。
[root@host01]# vi ~/.bash_profile
~/.bash_profile
に以下のコードを追加して保存します。
export LANG=ja_JP.utf8
以下のコマンドで設定を即時反映させると言語設定が切り替わります。
[root@host01]# source ~/.bash_profile
[root@host01]# date
2020年 9月 15日 火曜日 17:07:07 JST
まとめ
- CentOS7で言語設定を切り替えるコマンドは
localectl set-locale [ロケール名]
- 一時的に言語設定を切り替えるには
export LANG=[ロケール名]
- ファイル
~/.bash_profile
を直接編集する方法もあるが非推奨