diff --git a/INSTALL b/INSTALL index 6d5bcf3..8184235 100644 --- a/INSTALL +++ b/INSTALL @@ -81,12 +81,14 @@ Now that the software is successfully installed, the next step is to set up a configuration file. The contents of this depend on the network environment in which the computer operates. Typical scenarios are described in the manual. The simplest case is for a computer with -a permanent Internet connection - suppose you want to use the NTP -server ntp1.foobar.com as your time reference. You would create an -/etc/chrony.conf file containing +a permanent Internet connection - suppose you want to use public NTP +servers from the pool.ntp.org project as your time reference. You would +create an /etc/chrony.conf file containing - server ntp1.foobar.com - driftfile /etc/chrony.drift + server 0.pool.ntp.org + server 1.pool.ntp.org + server 2.pool.ntp.org + driftfile /var/lib/chrony/drift and then run /usr/local/sbin/chronyd. diff --git a/README b/README index 9a3561f..8a56d76 100644 --- a/README +++ b/README @@ -21,12 +21,12 @@ between measurements from the reference. The reference time can be derived from Network Time Protocol (NTP) servers, reference clocks, or wristwatch-and-keyboard (via chronyc). The main source of information about the Network Time Protocol is -http://www.eecis.udel.edu/~ntp. +http://www.ntp.org. It is designed so that it can work on computers which only have intermittent access to reference sources, for example computers which -use a dial-up account to access the Internet. Of course, it will work -on computers with permanent connections too. +use a dial-up account to access the Internet or laptops. Of course, it +will work well on computers with permanent connections too. In addition, on Linux it can monitor the system's real time clock performance, so the system can maintain accurate time even across @@ -48,10 +48,7 @@ What will chrony run on? Chrony can be successfully built and run on -1. Linux v1.2.13, v2.0.x, 2.1.x (partially), 2.2.x, 2.3.x, 2.4.x, 2.6.x. -Real time clock support is limited to 2.0.32 onwards and to 2.2, 2.3, -2.4 and 2.6 series only. i386, x86_64, PowerPC are known to be -supported. +1. Linux 2.2.x, 2.3.x, 2.4.x, 2.6.x, 3.x 2. Solaris 2.5/2.5.1/2.6/2.7/2.8 (various platforms) @@ -88,12 +85,6 @@ through the URL http://chrony.tuxfamily.org/ -What can chrony not do? -======================= - -Compared to the `reference' RFC1305 implementation xntpd, chronyd does -not support broadcast modes. - Where are new versions announced? ================================= @@ -252,5 +243,3 @@ Doug Woodward Many other people have contributed bug reports and suggestions. I'm sorry I can't identify all of you individually. - -vim:tw=72 diff --git a/chrony.1 b/chrony.1 index 4f681b5..651d8be 100644 --- a/chrony.1 +++ b/chrony.1 @@ -32,16 +32,16 @@ between measurements from the reference. The reference time can be derived from either Network Time Protocol (NTP) servers, reference clocks, or wristwatch-and-keyboard (via \fIchronyc\fR). The main source of information about the Network Time Protocol is -\fIhttp://www.eecis.udel.edu/~ntp\fR. +\fIhttp://www.ntp.org\fR. It is designed so that it can work on computers which only have intermittent access to reference sources, for example computers which -use a dial-up account to access the Internet. Of course, it will work -on computers with permanent connections too. +use a dial-up account to access the Internet or laptops. Of course, it +will work well on computers with permanent connections too. -In addition, for Linux 2.0.x (for x >= 32) or 2.2 onwards, chronyd can monitor -the system's real time clock performance, so the system can maintain accurate -time even across reboots. +In addition, on Linux it can monitor the system's real time clock +performance, so the system can maintain accurate time even across +reboots. Typical accuracies available between 2 machines are diff --git a/chrony.conf.5.in b/chrony.conf.5.in index 1792b5f..db33d09 100644 --- a/chrony.conf.5.in +++ b/chrony.conf.5.in @@ -31,7 +31,7 @@ useful configuration file would look something like server g.h.i keyfile @SYSCONFDIR@/chrony.keys commandkey 1 - driftfile @SYSCONFDIR@/chrony.drift + driftfile @CHRONYVARDIR@/drift .SH "SEE ALSO" diff --git a/chrony.texi.in b/chrony.texi.in index 8d83c38..c36884d 100644 --- a/chrony.texi.in +++ b/chrony.texi.in @@ -570,6 +570,9 @@ customers. stratum 1 and stratum 2 servers. You should find one or more servers that are near to you --- check that their access policy allows you to use their facilities. + +@item Use public servers from +@uref{http://www.pool.ntp.org/, the pool.ntp.org project}. @end itemize Assuming that you have found some servers, you need to set up a @@ -595,7 +598,7 @@ server d.e.f server g.h.i keyfile @SYSCONFDIR@/chrony.keys commandkey 1 -driftfile @SYSCONFDIR@/chrony.drift +driftfile @CHRONYVARDIR@/drift @end example @c }}} @c {{{ S:Infrequent connection @@ -629,38 +632,24 @@ server d.e.f server g.h.i @end example -However, the following issues need to be addressed: - -@enumerate 1 -@item -Your computer probably doesn't have DNS access whilst offline to turn -the machine names into IP addresses. -@item -Your computer will keep trying to contact the servers to obtain +However, your computer will keep trying to contact the servers to obtain timestamps, even whilst offline. If you operate a dial-on-demand system, things are even worse, because the link to the internet will keep getting established. -@end enumerate For this reason, it would be better to specify this part of your configuration file in the following way: @example -server 1.2.3.4 offline -server 5.6.7.8 offline -server 9.10.11.12 offline +server a.b.c offline +server d.e.f offline +server g.h.i offline @end example -Because numeric IP addresses have been used, the first problem is -overcome. The @code{offline} keyword indicates that the servers start +The @code{offline} keyword indicates that the servers start in an offline state, and that they should not be contacted until @code{chronyd} receives notification that the link to the internet is present. -An alternative is to use the names of the NTP servers, and put entries for them -into your @file{/etc/hosts} file. This will be OK as long as @samp{files} -comes before @samp{dns} in the @samp{hosts} line of the -@file{/etc/nsswitch.conf} file. - In order to notify @code{chronyd} of the presence of the link, you will need to be able to log in to it with the program chronyc. To do this, @code{chronyd} needs to be configured with an administrator password. To set up an @@ -668,7 +657,7 @@ administrator password, you can create a file @file{@SYSCONFDIR@/chrony.keys} containing a single line @example -1 xyzzy +1 ALongAndRandomPassword @end example and add the following line to @file{@SYSCONFDIR@/chrony.conf} (the order of the @@ -681,12 +670,12 @@ commandkey 1 The smallest useful configuration file would look something like @example -server 1.2.3.4 offline -server 5.6.7.8 offline -server 9.10.11.12 offline +server a.b.c offline +server d.e.f offline +server g.h.i offline keyfile @SYSCONFDIR@/chrony.keys commandkey 1 -driftfile @SYSCONFDIR@/chrony.drift +driftfile @CHRONYVARDIR@/drift @end example The next section describes how to tell @code{chronyd} when the internet link @@ -750,7 +739,7 @@ be (assuming the clients are in the 192.168.165.x subnet and that the master's address is 192.168.169.170) @example -driftfile @SYSCONFDIR@/chrony.drift +driftfile @CHRONYVARDIR@/drift commandkey 25 keyfile @SYSCONFDIR@/chrony.keys initstepslew 10 client1 client3 client6 @@ -764,7 +753,7 @@ the configuration file might be @example server master -driftfile @SYSCONFDIR@/chrony.drift +driftfile @CHRONYVARDIR@/drift logdir /var/log/chrony log measurements statistics tracking keyfile @SYSCONFDIR@/chrony.keys @@ -900,34 +889,24 @@ To illustrate how a dial-up home computer might be configured, example configuration files are shown in this section. For the @file{@SYSCONFDIR@/chrony.conf} file, the following can be used as an -example. @emph{NOTE : The @code{server} directives are only applicable -to customers of Demon Internet; users of other ISPs will need to use -their own ISP's NTP servers or public NTP servers.} +example. @example -server 158.152.1.65 minpoll 5 maxpoll 10 maxdelay 0.4 offline -server 158.152.1.76 minpoll 5 maxpoll 10 maxdelay 0.4 offline -server 194.159.253.2 minpoll 5 maxpoll 10 maxdelay 0.4 offline +server 0.pool.ntp.org minpoll 5 maxpoll 10 maxdelay 0.4 offline +server 1.pool.ntp.org minpoll 5 maxpoll 10 maxdelay 0.4 offline +server 2.pool.ntp.org minpoll 5 maxpoll 10 maxdelay 0.4 offline logdir /var/log/chrony log statistics measurements tracking -driftfile @SYSCONFDIR@/chrony.drift +driftfile @CHRONYVARDIR@/drift keyfile @SYSCONFDIR@/chrony.keys commandkey 25 maxupdateskew 100.0 dumponexit -dumpdir /var/log/chrony -rtcfile @SYSCONFDIR@/chrony.rtc +dumpdir @CHRONYVARDIR@ +rtcfile @CHRONYVARDIR@/rtc @end example -With Freeserve as the ISP, the following server lines can be used: - -@example -server 194.152.64.68 minpoll 5 maxpoll 10 maxdelay 0.4 offline -server 194.152.64.35 minpoll 5 maxpoll 10 maxdelay 0.4 offline -server 194.152.64.34 minpoll 5 maxpoll 10 maxdelay 0.4 offline -@end example - -@code{pppd} is used for connecting to my ISP. This runs two scripts +@code{pppd} is used for connecting to the internet. This runs two scripts @file{/etc/ppp/ip-up} and @file{/etc/ppp/ip-down} when the link goes online and offline respectively. @@ -940,17 +919,9 @@ The relevant part of the @file{/etc/ppp/ip-up} file is and the relevant part of the @file{/etc/ppp/ip-down} script is @example -@BINDIR@/chronyc -a < password aardvark -200 OK -chronyc> cyclelogs -200 OK -chronyc> exit +% chronyc -a cyclelogs % ls -l /var/log/chrony -rw-r--r-- 1 root root 0 Jun 8 18:17 measurements.log -rw-r--r-- 1 root root 12345 Jun 8 18:17 measurements1.log diff --git a/chronyd.8.in b/chronyd.8.in index 94471e6..3e88fa5 100644 --- a/chronyd.8.in +++ b/chronyd.8.in @@ -125,8 +125,7 @@ from \fIhttp://go.to/chrony\fR .BR chrony(1), .BR chronyc(1), .BR chrony.conf(5), -.BR clock(8), -.BR xntpd(8), +.BR hwclock(8), .BR ntpd(8) .SH AUTHOR