Carpe Diem

備忘録。https://github.com/jun06t

NTPサーバの構築

時刻合わせのサーバです。正直個人サーバにはあまり必要性はない気もします。大規模なシステムになったら同期とか必要になって入れた方がいいのかな? 詳細はNTPサーバ補足を参考にしてください。 インストールから $ sudo aptitude install ntp $ sudo emacs -nw /etc/ntp.conf 19行目の以下をコメント化 #server 0.ubuntu.pool.ntp.org #server 1.ubuntu.pool.ntp.org #server 2.ubuntu.pool.ntp.org #server 3.ubuntu.pool.ntp.org #server ntp.ubuntu.com 代わりの同期をとるサーバーを指定。以下を追記します。これはクライアントとしての、上位サーバへの問い合わせ指定です。 server ntp1.jst.mfeed.ad.jp server ntp2.jst.mfeed.ad.jp server ntp3.jst.mfeed.ad.jp 48行目:時刻同期を許可する範囲を追記。私の環境では内部IPが192.168.11.0~192.168.11.255なので次のように設定します。これはサーバとしての下位サーバに対する設定です。 restrict 192.168.11.0 mask 255.255.255.0 nomodify notrap 設定が完了したら再起動 $ sudo /etc/init.d/ntp restart * Stopping NTP server ntpd [ OK ] * Starting NTP server ntpd [ OK ] 動作確認をします。 $ ntpq -p      remote           refid      st t when poll reach   delay   offset  jitter ==============================================================================  ntp1.jst.mfeed. 210.173.160.86   2 u    1   64    1    6.341  3594.18   0.000  ntp2.jst.mfeed. .INIT.          16 u    -   64    0    0.000    0.000   0.000  ntp3.jst.mfeed. .INIT.          16 u    -   64    0    0.000    0.000   0.000 ◆すぐに時刻を更新したい場合 NTPは実はすぐには時刻更新はされません。すぐに更新したい時は ntpdate というコマンドを使用します。 これはNTPサーバが起動していると使えないので一旦停止します。 $ sudo service ntp stop $ ntpdate ntp1.jst.mfeed.ad.jp 終わったらNTPサーバを起動してOKです。 $ sudo service ntp start ◆相互に同期させたい 上位サーバから時刻を受け取ったり、下位サーバへ時刻を与えたり、という一方的な同期方法は先程のやり方でした。 サーバ同士でお互いに同期させたい場合は peer という制御フラグを使用します。 NTPサーバは階層的に複数設置されていますが、peer設定は同階層サーバ間での時刻のずれを修復(収束)させるものです。 $ sudo emacs -nw /etc/ntp.conf peer 同期したいサーバIP とします。 ソース NTPサーバー構築