タイムゾーンの設定
[root@localhost lib64]# timedatectl list-timezones
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
...
[root@localhost lib64]# timedatectl set-timezone Asia/Tokyo
[root@localhost lib64]# timedatectl
Local time: Wed 2024-08-07 16:51:52 JST
Universal time: Wed 2024-08-07 07:51:52 UTC
RTC time: Tue 2024-08-13 22:05:24
Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: no
NTP service: active
RTC in local TZ: no
timedatectlの説明
- localal time: OSが持っている時間 = システムクロック。dataコマンドで表示される時間
- Universal time: 世界標準時 = イギリスの現在時刻
- RTC time: Real Time Clockの略。リアルタイムクロック = ハードウェアクロック = マザーボードが保持している時刻
- System clock synchronized: NTPで時刻取得を行っているかどうか。noであればNTPによる時刻取得は行っていない。NTPの設定を行えばyesに変わる
- NTP service: inactiveであればNTPサービスが起動してない。NTPサービスを起動すればactiveに変わる
- RTC in local TZ: デフォルトはno。timedatectl set-local-rtc trueコマンドでyesに変わる。yesにするとハードウェアクロックをシステムクロックに同期する。基本的にnoのままでよい
NTP(chrony)の設定
chrony(クローニー)とは、RHEL7からntpdに代わって導入された時刻同期サーバー/クライアントで、ntpdとは異なる時刻同期アルゴリズムを採用されており、より効率良く正確な時刻同期を提供する。
ネットワークの問題(切断や遅延)、温度変化等の環境問題や、時刻の同期が継続的に実行されない環境(仮想マシン等)であっても時刻がずれないような工夫がされている。
- NTPのバージョンが異なる
- ハードウェアクロックとの同期が可能(ntpdは不可)
- slewモードのslewレート
- stepモードとslewモード(デフォルトはstepモード)。slewレートを変更可能
- 使用ポートが変更可能(デフォルトは123、なおNTPは123固定)
chronyのインストール
[root@localhost lib64]# dnf install chrony
Rocky Linux 9 - BaseOS 1.4 kB/s | 4.1 kB 00:02
Rocky Linux 9 - AppStream 2.5 kB/s | 4.5 kB 00:01
Rocky Linux 9 - AppStream 1.3 MB/s | 8.0 MB 00:06
Rocky Linux 9 - Extras 1.8 kB/s | 2.9 kB 00:01
Rocky Linux 9 - Extras 6.4 kB/s | 15 kB 00:02
Package chrony-4.5-1.el9.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
[root@localhost lib64]# vi /etc/chrony.conf
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (https://www.pool.ntp.org/join.html).
#pool 2.rocky.pool.ntp.org iburst # コメントアウト
pool ntp.nict.jp iburst # 追記
...
[root@localhost lib64]# chronyc makestep
200 OK
[root@localhost lib64]# systemctl restart chronyd
[root@localhost lib64]# systemctl enable chronyd
[root@localhost lib64]# chronyc sources
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^- ntp-b2.nict.go.jp 1 6 17 11 +1968us[+1968us] +/- 4857us
^- ntp-a3.nict.go.jp 1 6 17 10 -140us[ -140us] +/- 3514us
^* ntp-a2.nict.go.jp 1 6 17 11 +851us[ +656us] +/- 4069us
^- ntp-k1.nict.jp 1 6 17 11 +711us[ +711us] +/- 8111us
[root@localhost lib64]# date
Wed Aug 14 10:30:06 JST 2024
- NTPサーバー名の前に「*」または「+」が表示されていれば時刻同期中
[補足] curl: (60) 証明書エラー対応
chronyのインストール時に以下のエラーが出力される。
事象
[root@localhost lib64]# dnf install chrony
Rocky Linux 9 - BaseOS 0.0 B/s | 0 B 00:06
Errors during downloading metadata for repository 'baseos':
[main]
- Curl error (60): SSL peer certificate or SSH remote key was not OK for https://mirrors.rockylinux.org/mirrorlist?arch=x86_64&repo=BaseOS-9 [SSL certificate problem: certificate is not yet valid]
Error: Failed to download metadata for repo 'baseos': Cannot prepare internal mirrorlist: Curl error (60): SSL peer certificate or SSH remote key was not OK for https://mirrors.rockylinux.org/mirrorlist?arch=x86_64&repo=BaseOS-9 [SSL certificate problem: certificate is not yet valid]
原因
SSLで証明書の検証で失敗
対応(暫定)
証明書の検証を無視する設定を入れる
[root@localhost lib64]# vi /etc/yum.conf
...
sslverify=false # 追記