# man > ntpdate

> **TLDR:** Synchronize and set the date and time via NTP.
>
- Synchronize and set date and time:
  `sudo ntpdate {{host}}`
- Query the host without setting the time:
  `ntpdate -q {{host}}`
- Use an unprivileged port in case a firewall is blocking privileged ports:
  `sudo ntpdate -u {{host}}`
- Force time to be stepped using `settimeofday` instead of `slewed`:
  `sudo ntpdate -b {{host}}`

*Source: tldr-pages*

---

[_ntpdate_(8)](https://www.chedong.com/phpMan.php/man/ntpdate/8/markdown)                             System Manager's Manual                            [_ntpdate_(8)](https://www.chedong.com/phpMan.php/man/ntpdate/8/markdown)

## NAME
       ntpdate - set the date and time via NTP

## SYNOPSIS
       **ntpdate **[**-46bBdqsuv**] [**-a _**key_] [**-k _**keyfile_] [**-o _**version_] [**-t _**timeout_] _server_ [**...**]

## DESCRIPTION
       **ntpdate  **sets  the  local  date and time by polling the Network Time Protocol (NTP) server(s)
       given as the _server_ argument(s) to determine the correct time.  It must be run as root on the
       local host (unless the option **-q **is used).  A number of samples are obtained from each of the
       servers specified and a subset of the NTP clock filter and selection algorithms  are  applied
       to select the best of these. Note that the accuracy and reliability of ntpdate depends on the
       number of servers, the number of polls each time it is run and the interval between runs.

       ntpdate  can  be  run  manually as necessary to set the host clock, or it can be run from the
       host startup script to set the clock at boot time.  This is useful in some cases to  set  the
       clock  initially before starting the NTP daemon ntpd. It is also possible to run ntpdate from
       a cron script. However, it is important to note that ntpdate with contrived cron  scripts  is
       no  substitute  for  the NTP daemon, which uses sophisticated algorithms to maximize accuracy
       and reliability while minimizing resource use. Finally, since ntpdate does not discipline the
       host clock frequency as does ntpd, the accuracy using ntpdate is limited.

       Time adjustments are made by ntpdate in one of two ways. If ntpdate determines the  clock  is
       in  error  more than 0.5 second it will simply step the time by calling the system settimeof‐
       day() routine. If the error is less than 0.5 seconds, it will slew the time  by  calling  the
       system  adjtime() routine. The latter technique is less disruptive and more accurate when the
       error is small, and works quite well when ntpdate is run by cron every hour or two.

       ntpdate will, if the **-u **flag was not specified, decline to set the date if an NTP server dae‐
       mon (e.g., ntpd) is running on the same host. When running ntpdate on a  regular  basis  from
       cron  as  an  alternative to running a daemon, doing so once every hour or two will result in
       precise enough timekeeping to avoid stepping the clock.

       Note that in contexts where a host name is expected, a **-4 **qualifier preceding the  host  name
       forces  DNS  resolution  to the IPv4 namespace, while a **-6 **qualifier forces DNS resolution to
       the IPv6 namespace.

## OPTIONS
### -4     
              space.

### -6     
              space.

### -a _
              thentication  as  the  argument keyntpdate. The keys and key identifiers must match in
              both the client and server key files. The default is  to  disable  the  authentication
              function.

### -B     
              fault.

### -b     
              (default) using the adjtime() system call. This option should be used when called from
              a startup file at boot time.

### -d     
              just  the  local  clock and using an unprivileged port. Information useful for general
              debugging will also be printed.

### -k _
              Specify the path for the authentication key file as the string keyfile. The default is
              /etc/ntpsec/ntp.keys. This file should be in the format described in ntpd.

### -o _
              Specify the NTP version for outgoing packets as the integer version, which can  be  1,
              2, 3 or 4. The default is 4. This allows ntpdate to be used with older NTP versions.

### -q     

### -s     
              ity. This is designed primarily for convenience of cron scripts.

### -t _
              Specify the maximum time waiting for a server response as the value timeout,  in  sec‐
              onds and fraction. The value is rounded to a multiple of 0.2 seconds. The default is 1
              second, a value suitable for polling across a LAN.

### -u     
              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 un‐
              privileged ports.

### -v     
              logged.

## DIAGNOSTICS
       **ntpdate**'s exit status is zero if it found a server and updates the clock, and nonzero  other‐
       wise.

## FILES
       _/etc/ntp.keys_
              - encryption keys used by ntpdate.

## AUTHOR
       David L. Mills (<mills@udel.edu>)
       This man page was converted from HTML to roff by Fabrizio Polacco <<fpolacco@debian.org>>

## SEE ALSO
       [**ntpdate-debian**(8)](https://www.chedong.com/phpMan.php/man/ntpdate-debian/8/markdown)

                                                                                          [_ntpdate_(8)](https://www.chedong.com/phpMan.php/man/ntpdate/8/markdown)
