ntpdが動いている環境で、ntpdateを実行する

ntpdateで手動で時刻同期をする際に、既にntpdが動いている環境では、以下のようなメッセージが出力され、ntpdateによる時刻同期が行われない。

# ntpdate 172.xxx.xxx.xxx
21 Sep 17:07:34 ntpdate[9564]: the NTP socket is in use, exiting


で、これまでは手動で時刻合わせを行う場合は、素直に一時的にntpdをstopさせて、ntpdateを実行して手動な時刻動機を行った後、ntpdをstart・・・みたいなことをしていたのですが、そんなことをしなくても"-u"オプションをつけてntpdateを実行すれば、ntpdをわざわざ止めなくても良いことに今更気付いた。

# ntpdate -u 172.xxx.xxx.xxx
21 Sep 17:07:41 ntpdate[9566]: adjust time server 172.xxx.xxx.xxx offset 0.000062 sec

この通り。

参考

-u     Direct ntpdate to use an unprivileged port for outgoing packets.
       This is most useful when behind a firewall that blocks  incoming
       traffic  to  privileged  ports, and you want to synchronise with
       hosts beyond the firewall. Note that the -d option  always  uses
       unprivileged ports.

manを眺めていると、"-u"オプションでは非特権ポートを利用すると書かれてある。なるほど。123(NTP)は使わないということね。