0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

CentOS 設定変更備忘録(ロケール設定/キーボード設定/日時設定/タイムゾーン設定/NTP設定/HWC同期設定)

Posted at

前置き

VM環境にCentOS8.5を構築しました。

しかし、インストール中に画面をスリープさせた影響なのかロケール設定を日本に設定する前に構築が完了したため、言語が英語になっており日時情報もずれており、キーボード入力もUS仕様になっていました。
普段使い用に諸々の設定を日本語仕様に修正する備忘録です。

基本的にターミナルを使ったCLI上から設定情報を変更する手順を備忘録として残します。

VM環境がインターネットへ接続出来ていることが条件です。
事前にpingコマンド等で接続確認してください。

# Google DNSへping確認
ping 8.8.8.8

ロケール設定変更

1. ロケール設定確認

現時点での設定状況を確認する

localectl status
# 出力結果

   System Locale: LANG=en_US.UTF-8
       VC Keymap: us
      X11 Layout: us

usになっていました。

2.使用可能なロケールの一覧を確認

ja_JP.UTF-8 が一覧に含まれていることを確認します。

localectl list-locales
# 出力結果

C.utf8
en_AG
en_AU
en_AU.utf8
en_BW
en_BW.utf8
en_CA
en_CA.utf8
en_DK
en_DK.utf8
en_GB
en_GB.iso885915
en_GB.utf8
en_HK
en_HK.utf8
・
・
・

jaがありませんでしたので、日本語適用させるためのパッケージを適応させる必要があります。

glibc-langpack-ja パッケージをインストール

日本語ロケールを使用するために、glibc-langpack-ja パッケージをインストールします。

sudo dnf install glibc-langpack-ja
# 出力結果
・
・
Installed:
  glibc-langpack-ja-2.28-164.el8.x86_64                                                                                               

Complete!
[taki@localhost ~]$ 

日本語ロケールを生成する

glibc-langpack-ja パッケージをインストールしたら、日本語のロケールが生成可能になるため生成します。

sudo localectl set-locale LANG=ja_JP.UTF-8

構築直後のCentOSでdnfまたはyumコマンド実行時にエラーが発生した場合下記を確認
サポートが切れているCentOSを使用した際にリポジトリの参照先がエラーを起こす可能性があるため下記リンク先の記事に従って確認してください。
下記記事は私が対応した備忘録です。

[CentOS構築後yum,dnfコマンドエラーによりパッケージのDLが出来ない問題の対処備忘録]
https://qiita.com/tacky0127/items/7f9d3898eb4226fc6b68

ロケールを反映させる

ロケールの設定が変更された後、再ログインまたはシステムの再起動が必要です。

sudo reboot

設定の確認

再起動後に、設定が正しく反映されているか確認します。

localectl status

image.png

キーボード設定変更

VC Keymapの変更(仮想コンソールのキーボード配列)

仮想コンソール(テキストモード)でのキーボード配列をjaに変更するには、以下のコマンドを実行します。

sudo localectl set-keymap jp

X11 Layoutの変更(GUIでのキーボードレイアウト)

GUI環境でのキーボードレイアウトをjaに変更するには、以下のコマンドを実行します。

sudo localectl set-x11-keymap jp

設定の確認

変更後、再度設定を確認して正しく反映されているかを確認します。

VC KeymapとX11 Layoutがjpまたはjaとなっていれば、設定は正しく変更されています。

localectl status

image.png

再起動または再ログイン

設定を反映させるためには、再ログインまたは再起動が必要になる場合があります。
これで、キーボード配列が日本語に設定されます。

sudo reboot

設定が反映されてなかった時!

reboot後に設定が反映されていなかった場合、下記のファイルの設定内容を確認してください。

キーボード設定ファイルを確認

/etc/vconsole.confファイルを開いて、キーボードレイアウトが正しく設定されているか確認します。

cat /etc/vconsole.conf

以下のように表示されていれば問題ありません。

KEYMAP=jp

もし違っていたら、編集して jp に変更します。

sudo nano /etc/vconsole.conf

X11(GUI)の設定を確認

X11のキーボード設定が適用されていない可能性があるので、/etc/X11/xorg.conf.d/00-keyboard.confを確認します。もしこのファイルが存在しない場合、手動で作成します。

sudo cat /etc/X11/xorg.conf.d/00-keyboard.conf

以下のように表示されているか確認してください。
もしファイルが無かったり、記載が異なっていたら修正してください。

Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "jp"
EndSection

編集する時は下記で実施

sudo nano /etc/X11/xorg.conf.d/00-keyboard.conf

上記設定ファイルにて問題がなければsettingから設定を確認します。

GUI上システム設定変更

設定ファイル上でJaが表示されていれば下記画面で設定変更ができるはずです。

Settingsを開く
Region & language選択
Input Sourcesを確認
→Japaneseがなければ+ボタンを押して追加してください。
追加後Japaneseを選択する
→キーボード入力した際に変更されてるか確認してください

image.png

日時設定変更

構築したVMの日時がずれていました。
下記コマンドで状態を確認できます。
確認したところTime zoneがAmericaになっていました。
日本時間へ修正します。

timedatectl status
# 出力結果の詳細

現在のシステム時刻(Local time)
UTC時刻(Universal time)
ハードウェアクロック(RTC time)
タイムゾーン(Time zone)
NTPの状態(NTP synchronized)

image.png

タイムゾーンの修正

sudo timedatectl set-timezone Asia/Tokyo

再度、timedatectl statusを実行して、タイムゾーンが Asia/Tokyo になっていることを確認します。

timedatectl status
# 出力結果

               Local time: Wed 2024-09-18 17:50:23 JST
           Universal time: Wed 2024-09-18 08:50:23 UTC
                 RTC time: Wed 2024-09-18 08:50:23
                Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

NTPの確認

NTPサーバーを使用して自動的に時刻を同期することが推奨されます。以下のコマンドでNTPが有効か確認し、有効でなければ有効化します。

# NTP動作確認
timedatectl show | grep NTP
# NTP有効化
sudo timedatectl set-ntp true

手動で日時を設定(必要な場合のみ)

NTPを使用せず、手動で時刻を設定したい場合は、以下のコマンドを使用します。
まず、timedatectlで正しい日時を設定できます。

例:2024年9月18日14時30分 に設定する場合

sudo timedatectl set-time '2024-09-18 14:30:00'

ハードウェアクロックの同期

システムの時刻が正しく設定されたら、ハードウェアクロック(RTC)もシステム時刻に同期させておきます。

sudo hwclock --systohc

設定再確認

設定後、再度timedatectl statusコマンドを実行して、日時が正しく設定されているか確認してください。

timedatectl status

以上で終了です。お疲れ様でした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?