Linuxの時刻について
2種類の時刻について
UTC(Coordinated Universal Time:協定世界時)
原子時計を基に定められた世界共通の標準時で、天体観測を基にしたGMT(グリニッジ標準時)とほぼ同じ
ローカルタイム
国や地域に共通の地域標準時であり、日本の場合はJST(Japan Standard Time:日本標準時)
UTCとJSTでは9時間の時差がある(JSTがUTCより9時間進んでいる)
時計について
Linuxシステムには主要な時計が2つ存在する。
ハードウェアクロック
BIOS側で設定されている
CPU内部で動作しているすべてのコントロールプログラムから独立しており、マシンの電源が OFF のときにも動作する。
システムクロック
OS側で設定されている
Linuxカーネルの内部に存在している時計。タイマー割り込みによって駆動されているため、Linuxが起動している間しか動作しない。
Linuxではシステムクロックがすべての基準となる時計。
ハードウェアクロックの基本的な役割は、システムが動いていない間にも時計を動かしつづけること。
Linuxシステムは起動時に一度だけハードウェアクロックを参照し、システムクロックを設定する。
その後はハードウェア・クロックは用いない。
hwclock
ハードウェアクロックの読み取りとハードウェアクロックとシステムクロックの同期を行う
オプション
オプションなし | 現在のハードウェア時刻を表示する |
--hctosys | ハードウェアクロックをシステムクロックに設定 |
--systohc | システムクロックをハードウェアクロックに設定 |
--debug | 詳細表示する |
date
システムクロックを表示する。
+書式
で指定した形式で表示できる
スーパーユーザーは、-sで時刻を変更することができる
ntpdate
指定されたNTPサーバーに対し時刻を問い合わせ、その時間をシステムクロックに設定する。
ntpdが稼働していると、ntpdateは使えなくなる
オプション
-q | NTPサーバーへ時刻の問い合わせのみを行い、 システムクロックの時刻は変更はしない |
-s | 実行結果をsyslogに出力する |
syslogについて
/etc/syslog.confに記載されているとおり、/var/log/messagesに出力される
ntpd
昔書いたので、補足。
ntp.confについて
記載 | 内容 |
---|---|
restrict | ACLの指定 |
server | 参照クロックのアドレスを指定 |
fudge | クロックドライバについてのstratumなどの追加情報を指定 |
driftfile | NTPサーバの参照時刻からのインターバルタイマーの発振周波数のずれ(drift)をPPM(parts-per-million:0.0001%)単位で記録するファイル |