LoginSignup
6
5

More than 5 years have passed since last update.

片手落ちNTP設定

Last updated at Posted at 2015-11-07

【システムクロックだけntpで設定していい気になっていた】

サーバにはシステムクロックとハードウェアクロックがある

システムクロック→OSが管理しているクロック。電源が落ちると消えてしまう。(OSのメモリ上に存在する)

ハードウェアクロック→マザーボード上にあるクロック。ボード上の電池で動いており、OSが落ちても時刻が保持される。

それぞれ独立して動いているのだが、
OSはシャットダウンすると当然システムクロックの時刻を失うため、次回起動時にはハードウェアクロックを読みに行き、そこから時刻をもらって起動する。

なので、システムクロックとハードウェアクロックは同期させる必要がある。特にシステムクロックだけ設定して、やったぜ!みたいな気になっていると後で痛い目を見る。

まず、時刻を確認する。

date

システムクロックだけ設定するならこう

date -s "yyyy/mm/dd hh:mm:ss"

これでシステムクロックが設定された。

続けて、ntp同期しているかどうか見てみる。

ntpq -p
項目 説明
remote サーバ名 ✳︎がついているのが同期中のサーバ。+がついているのが同期はしていないが参照可能なサーバ。何もついていないサーバとは同期してない。×はfalseticker検査で対象から除外されたサーバー(NTPのアルゴリズム自体が信頼できないと判断された)
refid remoteで表示されたサーバの1つ上のstratum。remoteのサーバの参照先。不明なら0.0.0.0
st stratum。大きいほど階層が下。信頼性の意味では、小さいほうがいい
t 階層の種類
when remote から最後にパケットを受け取ってからの時間
poll ポーリング間隔。サーバと同期している間隔のこと(秒)
reach 到達可能レジスタデータ(8進数)
delay 時間の遅延見積もり(ミリ秒)
offset remote との時刻のずれ(ミリ秒)
jitter remote の分散(ミリ秒)ntpの時刻ズレを統計的に現したもの。小さいほどよい。

システムクロックが合ってなれば、

ntpdate サーバ名

で時刻同期させる。サーバどうこうの話は他のサイトを参照ください。

ハードウェアクロック

ハードウェアクロックが合っているかどうか見る

hwclock

合っていなければ、

hwclock --systohc

で同期させる。

UTCとローカルタイム

hwclockは、自分が世界標準時刻を使用しているか、ローカルタイムを使用しているか分かるらしい

6
5
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
6
5