CentOS 8 は既に通常の CentOS Linux としてはサポートが終了しています。このページは新規構築を推奨するものではなく、過去環境の保守、移行前調査、設定の読み解きに使うためのレガシー Linux 手順です。新規構築では、現在サポートされているディストリビューションを利用してください。
この記事では、CentOS 8 の英語環境を日本語表示へ変更する場合に確認する項目を扱います。locale はアプリケーションの表示、文字コード、メッセージの言語に影響しますが、キーボード配列やタイムゾーンとは別の設定です。サーバー用途では英語のまま運用する判断もあるため、変更前に目的をはっきりさせておきます。
現在の locale を確認する
まず現在のシステム locale と、利用できる日本語 locale を確認します。CentOS 8 では localectl と locale の両方を見ると、systemd 側の設定と現在のシェル環境の違いを確認しやすくなります。
localectl status
locale
locale -a | grep -i ja日本語 locale を設定する
日本語表示にする場合は、LANG=ja_JP.UTF-8 を設定します。設定後すぐに全プロセスへ反映されるわけではないため、ログインし直すか、対象サービスを再起動してから表示を確認します。
localectl set-locale LANG=ja_JP.UTF-8
localectl status
locale一時的に環境変数で確認する
システム全体を変える前に、現在のシェルだけで日本語 locale の見え方を確認することもできます。恒久設定ではないため、影響範囲を小さくして確認したいときに使います。
export LANG=ja_JP.UTF-8
locale
dateキーマップとタイムゾーンは別に確認する
locale を日本語にしても、キーボード配列やタイムゾーンは自動では変わりません。コンソールで日本語キーボードを使う場合や、時刻表示を日本時間にしたい場合は、それぞれ別の設定として確認します。
localectl status
localectl list-keymaps | grep jp
timedatectl日本語キーマップを使う場合
物理コンソールや仮想コンソールで日本語配列を使う場合は、keymap も確認します。SSH 接続だけで運用するサーバーでは端末側の入力環境に依存することが多いため、サーバー側で変更が必要かを分けて考えます。
localectl set-keymap jp106
localectl status英語 locale に戻す
ログ検索やエラーメッセージの調査では、英語 locale の方が情報を探しやすいことがあります。日本語表示が不要になった場合や、アプリケーションの挙動確認で英語に戻したい場合は、en_US.UTF-8 へ戻します。
localectl set-locale LANG=en_US.UTF-8
localectl status
localeサーバー運用での注意
- ログやエラーメッセージを検索しやすくするため、英語 locale のままにする運用もある。
- 日本語表示が必要な端末や管理者向けには
ja_JP.UTF-8が便利。 - 文字化けする場合は、サーバー側だけでなく端末側の文字コードも確認する。
- サービス単位の表示言語は、サービス再起動後に確認する。
- EOL 後の CentOS 8 では、新規標準ではなく既存環境の読み解きとして扱う。
確認するポイント
localectl statusとlocaleの結果が期待通りか。- 日本語 locale の変更が必要な範囲は、システム全体なのか現在のシェルだけなのか。
- キーボード配列とタイムゾーンを locale と混同していないか。
- ログ調査や運用手順で英語メッセージが必要にならないか。
まとめ
CentOS 8 の locale 設定は、表示言語と文字コードを決める基本設定です。日本語表示が必要な場合は localectl で ja_JP.UTF-8 を設定しますが、サーバー運用では英語のままにする判断もあります。キーマップ、タイムゾーン、端末側の文字コードを切り分けて確認することが大切です。
関連する記事
参考書籍
書籍
Linux のコマンドライン操作を基礎から確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。

