Update documentation

This commit is contained in:
Miroslav Lichvar 2009-12-02 15:35:15 +01:00
parent 41580fe589
commit e248a57d00
4 changed files with 103 additions and 82 deletions

16
INSTALL
View file

@ -32,13 +32,17 @@ for Bourne-family shells, or
for C-family shells. for C-family shells.
If the software cannot (yet) be built on your system, an error message If the software cannot (yet) be built on your system, an error message
will be shown. Otherwise, the files `options.h' and `Makefile' will will be shown. Otherwise, `Makefile' will be generated.
be generated.
By default, chronyc will be built to make use of the readline library. If you If editline or readline library is available, chronyc will be built
don't want this, specify the --disable-readline flag to configure. If you have with line editing support. If you don't want this, specify the
readline and/or ncurses installed in a non-standard location, please refer to --disable-readline flag to configure. Please refer to the chrony.txt
the chrony.txt file for information. file for more information.
If a `timepps.h' header is available, chronyd will be built with PPS
API reference clock driver. If the header is installed in a location
that isn't normally searched by the compiler, you can add it to the
searched locations by setting CPPFLAGS variable to -I/path/to/timepps.
Now type Now type

12
NEWS
View file

@ -1,3 +1,15 @@
New in version 1.24
===================
* Support for reference clocks (SHM, SOCK, PPS drivers)
* IPv6 support
* Linux capabilities support (to drop root privileges)
* Memory locking support on Linux
* Real-time scheduler support on Linux
* Leap second support on Linux
* Support for editline
* Various bug fixes and improvements
New in version 1.23 New in version 1.23
=================== ===================

68
README
View file

@ -18,8 +18,8 @@ accordingly. It also works out the rate at which the system clock
gains or loses time and uses this information to keep it accurate gains or loses time and uses this information to keep it accurate
between measurements from the reference. between measurements from the reference.
The reference time can be derived from either Network Time Protocol The reference time can be derived from Network Time Protocol (NTP)
(NTP) servers (preferred), or wristwatch-and-keyboard (via chronyc). servers, reference clocks, or wristwatch-and-keyboard (via chronyc).
The main source of information about the Network Time Protocol is The main source of information about the Network Time Protocol is
http://www.eecis.udel.edu/~ntp. http://www.eecis.udel.edu/~ntp.
@ -28,9 +28,9 @@ intermittent access to reference sources, for example computers which
use a dial-up account to access the Internet. Of course, it will work use a dial-up account to access the Internet. Of course, it will work
on computers with permanent connections too. on computers with permanent connections too.
In addition, the Linux 2.0.x (for x >= 32), 2.2.x and 2.3.x versions In addition, on Linux it can monitor the system's real time clock
can monitor the system's real time clock performance, so the system performance, so the system can maintain accurate time even across
can maintain accurate time even across reboots. reboots.
Typical accuracies available between 2 machines are Typical accuracies available between 2 machines are
@ -38,6 +38,8 @@ On an ethernet LAN : 100-200 microseconds, often much better
On a V32bis dial-up modem connection : 10's of milliseconds (from one On a V32bis dial-up modem connection : 10's of milliseconds (from one
session to the next) session to the next)
With a good reference clock the accuracy can reach one microsecond.
chronyd can also operate as an RFC1305-compatible NTP server and peer. chronyd can also operate as an RFC1305-compatible NTP server and peer.
@ -46,9 +48,10 @@ What will chrony run on?
Chrony can be successfully built and 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 (i386). 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 and Real time clock support is limited to 2.0.32 onwards and to 2.2, 2.3,
2.4 series only. PowerPC is also known to be supported. 2.4 and 2.6 series only. i386, x86_64, PowerPC are known to be
supported.
2. Solaris 2.5/2.5.1/2.6/2.7/2.8 (various platforms) 2. Solaris 2.5/2.5.1/2.6/2.7/2.8 (various platforms)
@ -69,8 +72,7 @@ How do I set it up?
The file INSTALL gives instructions. On supported systems the The file INSTALL gives instructions. On supported systems the
compilation process should be automatic. compilation process should be automatic.
You will need an ANSI C compiler -- gcc is recommended. Versions You will need an ANSI C compiler -- gcc is recommended.
2.7.2/2.7.2.2 are known to work.
The manual (in texinfo and text formats) describes how to set the The manual (in texinfo and text formats) describes how to set the
software up for the less straightforward cases. software up for the less straightforward cases.
@ -90,7 +92,7 @@ What can chrony not do?
======================= =======================
Compared to the `reference' RFC1305 implementation xntpd, chronyd does Compared to the `reference' RFC1305 implementation xntpd, chronyd does
not support hardware reference clocks or broadcast modes. not support broadcast modes.
Where are new versions announced? Where are new versions announced?
================================= =================================
@ -125,28 +127,19 @@ chrony-dev-request@chrony.tuxfamily.org
as applicable. as applicable.
Note that due to family commitments (a 3 year-old and a 1 year-old), I
no longer have the time to give to supporting chrony that I once had.
Therefore, the chrony-users list should be your main route for support,
rather than mailing me directly. Even if it's me that responds to your
question on the list, at least *ALL* subscribers then benefit from
seeing the discussion, rather than me taking up lots of time on
supporting people on a one-to-one basis. If you do mail me directly,
don't be surprised if I cc: the response to the mailing list.
But how can I contact the author if I need to? Author
============================================== ======
You can email me at <rc@rc0.org.uk>. If that fails, you could try to Richard P. Curnow <rc@rc0.org.uk>
find me through one of the mailing lists. It would be nice if:
- you include the word 'chrony' in the subject line (so my mail reader
can sort my mail by topic)
- you don't send complete log files, encoded binaries etc, without Maintainers
editing such material down to just the relevant bits - a few tens of ===========
lines at most. (My dial-up connection handles large messages rather
slowly ...). John Hasler <john@dhh.gt.org>
Miroslav Lichvar <mlichvar@redhat.com>
Acknowledgements Acknowledgements
================ ================
@ -199,6 +192,8 @@ John Hasler <john@dhh.gt.org>
sizeof(unsigned long) > 4) sizeof(unsigned long) > 4)
Bug fix to initstepslew directive Bug fix to initstepslew directive
Fix to remove potential buffer overrun errors. Fix to remove potential buffer overrun errors.
Memory locking and real-time scheduler support
Fix fault where chronyd enters an endless loop
Liam Hatton <me@liamhatton.com> Liam Hatton <me@liamhatton.com>
Advice on configuring for Linux on PPC Advice on configuring for Linux on PPC
@ -212,6 +207,13 @@ Jim Knoble <jmknoble@pobox.com>
Antti Jrvinen <costello@iki.fi> Antti Jrvinen <costello@iki.fi>
Advice on configuring for BSD/386 Advice on configuring for BSD/386
Miroslav Lichvar <mlichvar@redhat.com>
Reference clock support
IPv6 support
Linux capabilities support
Leap second support
Various bug fixes and improvements
Victor Moroz <vim@prv.adlum.ru> Victor Moroz <vim@prv.adlum.ru>
Patch to support Linux with HZ!=100 Patch to support Linux with HZ!=100
@ -224,6 +226,9 @@ Frank Otto <sandwichmacher@web.de>
Andreas Piesk <apiesk@virbus.de> Andreas Piesk <apiesk@virbus.de>
Patch to make chronyc use the readline library if available Patch to make chronyc use the readline library if available
Timo Teras <timo.teras@iki.fi>
Patch to reply correctly on multihomed hosts
Wolfgang Weisselberg <weissel@netcologne.de> Wolfgang Weisselberg <weissel@netcologne.de>
Entries in contrib directory Entries in contrib directory
@ -240,9 +245,4 @@ Doug Woodward <dougw@whistler.com>
Many other people have contributed bug reports and suggestions. I'm Many other people have contributed bug reports and suggestions. I'm
sorry I can't identify all of you individually. sorry I can't identify all of you individually.
Version control information
===========================
$Header: /cvs/src/chrony/README,v 1.30 2003/09/21 23:11:06 richard Exp $
vim:tw=72 vim:tw=72

View file

@ -125,8 +125,9 @@ different quirks in its behaviour.
The software is known to work in the following environments: The software is known to work in the following environments:
@itemize @bullet @itemize @bullet
@item Linux/i386 and Linux/ppc. The software is known to work on Linux 2.0.x, @item Linux on i386, x86_64 and PowerPC architectures. The software is known
2.2.x and 2.4.x. Prior to 2.0.31, the real time clock can't be used. to work on Linux 2.0.x and newer. Prior to 2.0.31, the real time clock can't
be used.
@item NetBSD @item NetBSD
@item BSD/386 @item BSD/386
@ -268,29 +269,19 @@ version 2, reproduced in @xref{GPL}.
@node Bug reporting @node Bug reporting
@section Bug reporting and suggestions @section Bug reporting and suggestions
If you think you've found a bug in chrony, or have a suggestion, please let me If you think you've found a bug in chrony, or have a suggestion, please let us
know. My primary current email address is @email{rc@@rc0.org.uk}. If that know. You can join chrony users mailing list by sending a message with the
fails, you could try finding me through one of the chrony mailing lists, or by subject subscribe to @email{chrony-users-request@@chrony.tuxfamily.org}. Only
looking up my name on a search engine. subscribers can post to the list.
I can't promise a timescale to fix a bug; it depends a lot on the how complex When you are reporting a bug, please send us all the information you can.
the bug is to track down, as I have a lot of other calls on my time : 2 young
children, my job, and indeed other free/open source software projects.
However, I do intend to look into problems when time allows.
Another source of information to try is the chrony users mailing list. You can
join this by sending a message with the subject subscribe to
@email{chrony-users-request@@chrony.tuxfamily.org}. Only subscribers can post to
the list.
When you are reporting a bug, please send me all the information you can.
Unfortunately, chrony has proven to be one of those programs where it is very Unfortunately, chrony has proven to be one of those programs where it is very
difficult to reproduce bugs in a different environment. So I may have to difficult to reproduce bugs in a different environment. So we may have to
interact with you quite a lot to obtain enough extra logging and tracing to interact with you quite a lot to obtain enough extra logging and tracing to
pin-point the problem in some cases. Please be patient and plan for this! pin-point the problem in some cases. Please be patient and plan for this!
Of course, if you can debug the problem yourself and send me a source code Of course, if you can debug the problem yourself and send us a source code
patch to fix it, I will be very grateful! patch to fix it, we will be very grateful!
@c }}} @c }}}
@c {{{ S:Contributions @c {{{ S:Contributions
@ -301,7 +292,7 @@ Although chrony is now a fairly mature and established project, there are still
areas that could be improved. If you can program in C and have some expertise areas that could be improved. If you can program in C and have some expertise
in these areas, you might be able to fill the gaps. in these areas, you might be able to fill the gaps.
Particular areas I know need addressing are : Particular areas that need addressing are :
@enumerate @enumerate
@item Porting to other Unices @item Porting to other Unices
@ -323,7 +314,7 @@ setsid() etc with so that chronyd can be automatically started in the system
bootstrap. bootstrap.
@end enumerate @end enumerate
@item Hardware clock support @item More drivers for reference clock support
@item Automation of the trimrtc and writertc mechanisms @item Automation of the trimrtc and writertc mechanisms
@ -386,13 +377,16 @@ setenv CFLAGS -O
for C-family shells. for C-family shells.
If the software cannot (yet) be built on your system, an error message If the software cannot (yet) be built on your system, an error message
will be shown. Otherwise, the files @file{options.h} and will be shown. Otherwise, @file{Makefile} will be generated.
@file{Makefile} will be generated.
By default, chronyc will be built to make use of the readline library. If you If editline or readline library is available, chronyc will be built with line
don't want this, specify the --disable-readline flag to configure. If you have editing support. If you don't want this, specify the --disable-readline flag
readline and/or ncurses installed in a non-standard location, please refer to to configure. Please refer to @pxref{line editing support} for more information.
@pxref{readline support} for information.
If a @file{timepps.h} header is available, chronyd will be built with PPS API
reference clock driver. If the header is installed in a location that isn't
normally searched by the compiler, you can add it to the searched locations by
setting @code{CPPFLAGS} variable to @code{-I/path/to/timepps}.
Now type Now type
@ -444,32 +438,43 @@ network environment in which the computer operates. Typical scenarios
are described in the following section of the document. are described in the following section of the document.
@c }}} @c }}}
@menu @menu
* readline support:: If readline or ncurses in in a non-standard place * line editing support:: If libraries are in a non-standard place
* package builders:: Extra options useful to package builders * package builders:: Extra options useful to package builders
@end menu @end menu
@c {{{ readline support @c {{{ line editing support
@node readline support @node line editing support
@section Support for the readline library @section Support for line editing libraries
By default, chronyc is built to make use of the readline library. This allows Chronyc can be built with support for line editing, this allows you to use the
you to use the cursor keys to replay and edit old commands. If you don't want cursor keys to replay and edit old commands. Two libraries are supported which
to use readline (in which case chronyc will use a minimal command line provide such functionality, editline and GNU readline.
interface), invoke configure like this:
Please note that readline since version 6.0 is licensed under GPLv3+ which is
incompatible with chrony's license GPLv2. You should use editline instead if
you don't want to use older readline versions.
The configure script will automatically enable the line editing support if one
of the supported libraries is available. If they are both available, the
editline library will be used.
If you don't want to use it (in which case chronyc will use a minimal command
line interface), invoke configure like this:
@example @example
./configure --disable-readline other-options... ./configure --disable-readline other-options...
@end example @end example
If you have readline and/or ncurses installed in locations that aren't normally searched by the compiler and linker, you need extra options if you want readline to be used: If you have editline, readline or ncurses installed in locations that aren't
normally searched by the compiler and linker, you need to use extra options:
@table @samp @table @samp
@item --with-readline-includes=directory_name @item --with-readline-includes=directory_name
This defines the name of the directory above the one where @file{readline.h} This defines the name of the directory above the one where @file{readline.h}
is. @file{readline.h} is assumed to be in a @file{readline} subdirectory of is. @file{readline.h} is assumed to be in @file{editline} or @file{readline}
the named directory. subdirectory of the named directory.
@item --with-readline-library=directory_name @item --with-readline-library=directory_name
This defines the directory containing the @file{libreadline.a} or This defines the directory containing the @file{libedit.a} or @file{libedit.so}
@file{libreadline.so} file. file, or @file{libreadline.a} or @file{libreadline.so} file.
@item --with-ncurses-library=directory_name @item --with-ncurses-library=directory_name
This defines the directory containing the @file{libncurses.a} or This defines the directory containing the @file{libncurses.a} or