ntpdate - set the date and time via NTP (Network Time Protocol)
/usr/sbin/ntpdate [-bdqsuv] [-a key#] [-e authdelay] [-k keyfile] [-o ver-
sion] [-p samples] [-t timeout] server1 server2 server3...
-b Tells ntpdate to step the system time immediately to match NTP. Use
this option only when booting the system.
-d Prints configuration and debugging information.
-q Queries the server(s) and prints the information received; the date and
time are not set.
-s Tells ntpdate to log its actions through the syslog(3) facility rather
than to the standard output. This is useful when running the program
-u Tells ntpdate to use an unprivileged port to send the packets from.
This is useful when you are 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
-v Runs in verbose mode.
Specifies that all packets should be authenticated using the key number
Specifies an authentication processing delay, in seconds (see xntpd(8)
for details). This number is usually small enough to be negligible for
ntpdate's purposes, though specifying a value may improve timekeeping
on very slow CPU's.
Specifies that authentication keys will be read from keyfile instead of
the default /etc/ntp.keys file. This file should be in the format
described in xntpd(8).
Forces ntpdate to poll as a version implementation. By default ntpdate
claims to be an NTP version 3 implementation in its outgoing packets.
Some older software will decline to respond to version 3 queries.
Acquires a specified number of samples from each server. The range of
values for samples is from 1 and 8, inclusive. The default is 4.
Waits timeout seconds for a response. Any value entered will be rounded
to a multiple of 0.2 seconds. The default is 1 second, a value suit-
able for polling across a LAN.
The ntpdate command sets the local date and time by polling the Network
Time Protocol server(s) on the host(s) given as arguments to determine the
correct time. It must be run as root on the local host. A number of sam-
ples are obtained from each of the servers specified and the standard NTP
clock filter and selection algorithms are applied to select the best of
these. The ntpdate command is run from /sbin/init.d/settime to set the
time of day at boot time, if NTP is configured. (See ntpsetup(8) for
information on configuring NTP.) Note that ntpdate's reliability and preci-
sion will improve dramatically with greater numbers of servers. While a
single server may be used, better performance and integrity will be
obtained by providing at least three or four servers, if not more.
Time adjustments are made by ntpdate in one of the following ways:
+ If ntpdate determines your clock is off by more than 0.5 seconds, it
steps the time by calling settimeofday(2).
+ If the error is less than 0.5 seconds, however, it will by default
slew the clock's time by a call to adjtime(2) with the offset.
The latter technique is less disruptive and more accurate when the offset
is small, and 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 since this will tend to keep a badly drifting clock more
accurate (at some expense to stability, though this tradeoff is usually
Ntpdate will decline to set the date if an NTP server daemon (for example,
xntpd(8)) is running on the same host. When running ntpdate on a regular
basis from cron(8) as an alternative to running a daemon, doing so once
every hour or two will result in precise enough timekeeping to avoid step-
ping the clock.
Because of significant changes in NTP version 3, you should check all
scripts that use the ntpdate command for correct usage and output.
A common problem is polling a server using the wrong query version number
or wrong authentication key. If either occurs, ntpdate prints the follow-
ing error message:
18 Apr 10:20:28 ntpdate(1192]: no server
suitable for synchronization found
At boot time, if NTP is not configured, the ntpdate prints the following
WARNING: ntpdate cannot succeed, please check your
1. The following command line sets the date and time after polling server
host1.dec.com as a version 2 implementation:
/usr/sbin/ntpdate -o 2 host1.dec.com
2. The following command line sets the date and time after polling server
host2.dec.com. All packets are authenticated using authentication key
/usr/sbin/ntpdate -a 1 host2.dec.com
Specifies the command path
Contains the encryption keys used by ntpdate
Commands: ntpq(8), xntpd(8), xntpdc(8)