'\" t
.\"     Title: chronyd
.\"    Author: [see the "AUTHORS" section]
.\" Generator: Asciidoctor 1.5.6.1
.\"      Date: 2018-04-04
.\"    Manual: System Administration
.\"    Source: chrony @CHRONY_VERSION@
.\"  Language: English
.\"
.TH "CHRONYD" "8" "2018-04-04" "chrony @CHRONY_VERSION@" "System Administration"
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.ss \n[.ss] 0
.nh
.ad l
.de URL
\\$2 \(laURL: \\$1 \(ra\\$3
..
.if \n[.g] .mso www.tmac
.LINKSTYLE blue R < >
.SH "NAME"
chronyd \- chrony daemon
.SH "SYNOPSIS"
.sp
\fBchronyd\fP [\fIOPTION\fP]... [\fIDIRECTIVE\fP]...
.SH "DESCRIPTION"
.sp
\fBchronyd\fP is a daemon for synchronisation of the system clock. It can
synchronise the clock with NTP servers, reference clocks (e.g. a GPS receiver),
and manual input using wristwatch and keyboard via \fBchronyc\fP. It can also
operate as an NTPv4 (RFC 5905) server and peer to provide a time service to
other computers in the network.
.sp
If no configuration directives are specified on the command line, \fBchronyd\fP
will read them from a configuration file. The compiled\-in default location of
the file is \fI@SYSCONFDIR@/chrony.conf\fP.
.sp
Information messages and warnings will be logged to syslog.
.SH "OPTIONS"
.sp
\fB\-4\fP
.RS 4
With this option hostnames will be resolved only to IPv4 addresses and only
IPv4 sockets will be created.
.RE
.sp
\fB\-6\fP
.RS 4
With this option hostnames will be resolved only to IPv6 addresses and only
IPv6 sockets will be created.
.RE
.sp
\fB\-f\fP \fIfile\fP
.RS 4
This option can be used to specify an alternate location for the configuration
file (default \fI@SYSCONFDIR@/chrony.conf\fP).
.RE
.sp
\fB\-n\fP
.RS 4
When run in this mode, the program will not detach itself from the terminal.
.RE
.sp
\fB\-d\fP
.RS 4
When run in this mode, the program will not detach itself from the terminal,
and all messages will be written to the terminal instead of syslog. When
\fBchronyd\fP was compiled with debugging support, this option can be used twice to
print also debugging messages.
.RE
.sp
\fB\-l\fP \fIfile\fP
.RS 4
This option specifies a file which should be used for logging instead of syslog
or terminal.
.RE
.sp
\fB\-q\fP
.RS 4
When run in this mode, \fBchronyd\fP will set the system clock once and exit. It
will not detach from the terminal.
.RE
.sp
\fB\-Q\fP
.RS 4
This option is similar to the \fB\-q\fP option, except it only prints the offset
without making any corrections of the clock and it allows \fBchronyd\fP to be
started without root privileges.
.RE
.sp
\fB\-r\fP
.RS 4
This option will try to reload and then delete files containing sample
histories for each of the servers and reference clocks being used. These
histories are created by using the \fBdump\fP command in
\fBchronyc\fP, or by setting the \fBdumponexit\fP
directive in the configuration file. This option is useful if you want to stop
and restart \fBchronyd\fP briefly for any reason, e.g. to install a new version.
However, it should be used only on systems where the kernel can maintain clock
compensation whilst not under \fBchronyd\fP\(cqs control (i.e. Linux, FreeBSD, NetBSD,
Solaris, and macOS 10.13 or later).
.RE
.sp
\fB\-R\fP
.RS 4
When this option is used, the \fBinitstepslew\fP
directive and the \fBmakestep\fP directive used with
a positive limit will be ignored. This option is useful when restarting
\fBchronyd\fP and can be used in conjunction with the \fB\-r\fP option.
.RE
.sp
\fB\-s\fP
.RS 4
This option will set the system clock from the computer\(cqs real\-time clock (RTC)
or to the last modification time of the file specified by the
\fBdriftfile\fP directive. Real\-time clocks are
supported only on Linux.
.sp
If used in conjunction with the \fB\-r\fP flag, \fBchronyd\fP will attempt to preserve
the old samples after setting the system clock from the RTC. This can be used
to allow \fBchronyd\fP to perform long term averaging of the gain or loss rate
across system reboots, and is useful for systems with intermittent access to
network that are shut down when not in use. For this to work well, it relies
on \fBchronyd\fP having been able to determine accurate statistics for the
difference between the RTC and system clock last time the computer was on.
.sp
If the last modification time of the drift file is later than both the current
time and the RTC time, the system time will be set to it to restore the time
when \fBchronyd\fP was previously stopped. This is useful on computers that have no
RTC or the RTC is broken (e.g. it has no battery).
.RE
.sp
\fB\-t\fP \fItimeout\fP
.RS 4
This option sets a timeout (in seconds) after which \fBchronyd\fP will exit. If the
clock is not synchronised, it will exit with a non\-zero status. This is useful
with the \fB\-q\fP or \fB\-Q\fP option to shorten the maximum time waiting for
measurements, or with the \fB\-r\fP option to limit the time when \fBchronyd\fP is
running, but still allow it to adjust the frequency of the system clock.
.RE
.sp
\fB\-u\fP \fIuser\fP
.RS 4
This option sets the name of the system user to which \fBchronyd\fP will switch
after start in order to drop root privileges. It overrides the
\fBuser\fP directive (default \fI@DEFAULT_USER@\fP).
.sp
On Linux, \fBchronyd\fP needs to be compiled with support for the \fBlibcap\fP library.
On macOS, FreeBSD, NetBSD and Solaris \fBchronyd\fP forks into two processes.
The child process retains root privileges, but can only perform a very limited
range of privileged system calls on behalf of the parent.
.RE
.sp
\fB\-F\fP \fIlevel\fP
.RS 4
This option configures a system call filter when \fBchronyd\fP is compiled with
support for the Linux secure computing (seccomp) facility. In level 1 the
process is killed when a forbidden system call is made, in level \-1 the SIGSYS
signal is thrown instead and in level 0 the filter is disabled (default 0).
.sp
It\(cqs recommended to enable the filter only when it\(cqs known to work on the
version of the system where \fBchrony\fP is installed as the filter needs to allow
also system calls made from libraries that \fBchronyd\fP is using (e.g. libc) and
different versions or implementations of the libraries may make different
system calls. If the filter is missing some system call, \fBchronyd\fP could be
killed even in normal operation.
.RE
.sp
\fB\-P\fP \fIpriority\fP
.RS 4
On Linux, this option will select the SCHED_FIFO real\-time scheduler at the
specified priority (which must be between 0 and 100). On macOS, this option
must have either a value of 0 (the default) to disable the thread time
constraint policy or 1 for the policy to be enabled. Other systems do not
support this option.
.RE
.sp
\fB\-m\fP
.RS 4
This option will lock \fBchronyd\fP into RAM so that it will never be paged out.
This mode is only supported on Linux.
.RE
.sp
\fB\-x\fP
.RS 4
This option disables the control of the system clock. \fBchronyd\fP will not try to
make any adjustments of the clock. It will assume the clock is free running and
still track its offset and frequency relative to the estimated true time. This
option allows \fBchronyd\fP to run without the capability to adjust or set the
system clock (e.g. in some containers) in order to operate as an NTP server. It
is not recommended to run \fBchronyd\fP (with or without \fB\-x\fP) when another process
is controlling the system clock.
.RE
.sp
\fB\-v\fP
.RS 4
With this option \fBchronyd\fP will print version number to the terminal and exit.
.RE
.SH "FILES"
.sp
\fI@SYSCONFDIR@/chrony.conf\fP
.SH "SEE ALSO"
.sp
\fBchronyc(1)\fP, \fBchrony.conf(5)\fP
.SH "BUGS"
.sp
For instructions on how to report bugs, please visit
.URL "https://chrony.tuxfamily.org/" "" "."
.SH "AUTHORS"
.sp
chrony was written by Richard Curnow, Miroslav Lichvar, and others.