ntpdate(1M) System Administration Commands ntpdate(1M)
ntpdate - set the date and time by way of NTP
/usr/sbin/ntpdate [-bBdoqsuv] [-a key#] [-e authdelay]
[-k keyfile] [-m] [-o version] [-p samples]
[-t timeout] [-w] server...
The ntpdate utility sets the local date and time. To determine the correct time, it polls the Network Time Protocol (NTP) servers on the
hosts given as arguments. This utility must be run as root on the local host. It obtains a number of samples from each of the servers and
applies the standard NTP clock filter and selection algorithms to select the best of these.
The reliability and precision of ntpdate improve dramatically with a greater number of servers. While a single server may be used, better
performance and greater resistance to inaccuracy on the part of any one server can be obtained by providing at least three or four servers,
if not more.
The ntpdate utility makes time adjustments in one of two ways. If it determines that your clock is off by more than 0.5 seconds it simply
steps the time by calling gettimeofday(3C). If the error is less than 0.5 seconds, by default, it slews the clock's time with the offset,
by way of a call to adjtime(2). The latter technique is less disruptive and more accurate when the offset is small; it works quite well
when ntpdate is run by cron every hour or two. The adjustment made in the latter case is actually 50% larger than the measured offset. This
adjustment tends to keep a badly drifting clock more accurate, at some expense to stability. This tradeoff is usually advantageous. At boot
time, however, it is usually better to step the time. This can be forced in all cases by specifying the -b option on the command line.
The ntpdate utility declines to set the date if an NTP server daemon like xntpd(1M) is running on the same host. It can be run on a regular
basis from cron(1M) as an alternative to running a daemon. Doing so once every one to two hours results in precise enough timekeeping to
avoid stepping the clock.
The following options are supported:
-a key# Authenticate transactions, using the key number, key#.
-b Step the time by calling gettimeofday(3C).
-B Force the time to always be slewed using the adjtime(2) system call, even if the measured offset is greater than +-128 ms.
The default is to step the time using settimeofday(3C) if the offset is greater than +-128 ms. If the offset is much
greater than +-128 ms in this case, that it can take a long time (hours) to slew the clock to the correct value. During
this time the host should not be used to synchronize clients.
-d Display what will be done without actually doing it. Information useful for general debugging is also printed.
-e authdelay Specify an authentication processing delay, authdelay in seconds. See xntpd(1M) for details. This number is usually small
enough to be negligible for purposes of ntpdate. However, specifying a value may improve timekeeping on very slow CPU's.
-k keyfile Read keys from the file keyfile instead of the default file, /etc/inet/ntp.keys. keyfile should be in the format described
-m Join multicast group specified in server and synchronize to multicast NTP packets. The standard NTP group is 220.127.116.11.
-o version Force the program to poll as a version 1 or version 2 implementation. By default ntpdate claims to be an NTP version 3
implementation in its outgoing packets. However, some older software declines to respond to version 3 queries. This option
can be used in these cases.
-p samples Set the number of samples ntpdate acquires from each server. samples can be between 1 and 8 inclusive. The default is 4.
-q Query only. Do not set the clock.
-s Log actions by way of the syslog(3C) facility rather than to the standard output -- a useful option when running the pro-
gram from cron(1M).
-t timeout Set the time ntpdate spends, waiting for a response. timeout is rounded to a multiple of 0.2 seconds. The default is 1 sec-
ond, a value suitable for polling across a LAN.
-u Use an unprivileged port to send the packets from. This option is useful when you are behind a firewall that blocks incom-
ing traffic to privileged ports, and you want to synchronize with hosts beyond the firewall. The -d option always uses
-v Be verbose. This option causes ntpdate's version identification string to be logged.
-w Wait until able to synchronize with a server. When the -w option is used together with -m, ntpdate waits until able to join
the group and synchronize.
/etc/inet/ntp.keys Contains the encryption keys used by ntpdate.
See attributes(5) for descriptions of the following attributes:
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|Availability |SUNWntpu |
cron(1M), xntpd(1M), adjtime(2), gettimeofday(3C), settimeofday(3C)syslog(3C), attributes(5)
The technique of compensating for clock oscillator errors to improve accuracy is inadequate. However, to further improve accuracy would
require the program to save state from previous runs.
SunOS 5.11 29 Sep 1999 ntpdate(1M)