目次
はじめに
Linuxサーバーを正確に運用するには、システム時刻の管理が非常に重要です。バックアップ、ログ記録、証明書管理など、多くの機能は正しい時刻に依存しています。
この記事では、date や hwclock コマンドによる時刻の設定から、chrony や ntpd を用いたNTPサーバーとの同期方法まで、初心者にもわかりやすく解説します。
1. システム時刻とハードウェアクロックの違い
| 時刻の種類 | 説明 |
|---|---|
| システム時刻(System Clock) | OSが管理している時刻(RAM上) |
| ハードウェアクロック(RTC) | マザーボードの電池で保持される時刻。電源OFF中も動作する |
2. dateコマンドでシステム時刻を確認・設定する
現在の時刻を表示する
date
時刻を設定する(例:2025年5月7日 14:30)
sudo date -s "2025-05-07 14:30:00"
3. hwclockコマンドでハードウェアクロックを操作する
ハードウェアクロックの確認
sudo hwclock --show
システム時刻をハードウェアクロックに反映
sudo hwclock --systohc
ハードウェアクロックをシステム時刻に反映
sudo hwclock --hctosys
4. タイムゾーンの設定
タイムゾーン一覧の場所
ls /usr/share/zoneinfo/
タイムゾーンを設定(例:Asia/Tokyo)
sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
確認と変更(systemd環境)
timedatectl # 現在のタイムゾーン表示
sudo timedatectl set-timezone Asia/Tokyo
tzselectで対話的に設定
tzselect
5. NTPによる時刻同期(ntpd と ntpdate)
ntpdサービスの使用(古典的)
sudo apt install ntp # Debian系
sudo systemctl enable ntpd
sudo systemctl start ntpd
設定ファイルは /etc/ntp.conf にあります。
手動で時刻同期(即時)
sudo ntpdate ntp.nict.jp
※ ntpdate は推奨されない場合があり、代替に chrony が使われます。
6. chronyによる時刻同期(推奨)
chrony は最近のLinuxディストリビューションで推奨されるNTPクライアントです。
chronyのインストールと起動
sudo apt install chrony # Debian系
sudo systemctl enable chronyd
sudo systemctl start chronyd
設定ファイル(/etc/chrony/chrony.conf)
server pool.ntp.org iburst
状態確認
chronyc tracking
chronyc sources
7. 公開NTPサーバーの利用
信頼できる公開NTPサーバーの一例:
pool.ntp.org(全世界)ntp.nict.jp(日本の情報通信研究機構)ntp.jst.mfeed.ad.jp
設定ファイルに以下のように記述します:
server ntp.nict.jp iburst
8. ntpq コマンドで同期状況を確認
ntpd 使用時に、同期状況を確認するコマンド:
ntpq -p
- NTPサーバー一覧と、それぞれの遅延やオフセットなどが表示されます。
まとめ
| 操作内容 | コマンドまたはファイル |
|---|---|
| システム時刻の表示・設定 | date |
| ハードウェアクロックの操作 | hwclock |
| タイムゾーン設定 | /etc/localtime, timedatectl |
| 即時時刻同期 | ntpdate, chronyc |
| 自動時刻同期サービス | ntpd, chronyd |
| 状態確認 | ntpq -p, chronyc sources |

コメント