| This is the README for chrony. |
| |
| What is chrony? |
| =============== |
| |
| chrony is a versatile implementation of the Network Time Protocol (NTP). |
| It can synchronise the system clock with NTP servers, reference clocks |
| (e.g. GPS receiver), and manual input using wristwatch and keyboard. |
| It can also operate as an NTPv4 (RFC 5905) server and peer to provide |
| a time service to other computers in the network. |
| |
| It is designed to perform well in a wide range of conditions, including |
| intermittent network connections, heavily congested networks, changing |
| temperatures (ordinary computer clocks are sensitive to temperature), |
| and systems that do not run continuosly, or run on a virtual machine. |
| |
| Typical accuracy between two machines synchronised over the Internet is |
| within a few milliseconds; on a LAN, accuracy is typically in tens of |
| microseconds. With hardware timestamping, or a hardware reference clock, |
| sub-microsecond accuracy may be possible. |
| |
| Two programs are included in chrony, chronyd is a daemon that can be |
| started at boot time and chronyc is a command-line interface program |
| which can be used to monitor chronyd's performance and to change various |
| operating parameters whilst it is running. |
| |
| What will chrony run on? |
| ======================== |
| |
| The software is known to work on Linux, FreeBSD, NetBSD, macOS and |
| Solaris. Closely related systems may work too. Any other system will |
| likely require a porting exercise. You would need to start from one |
| of the existing system-specific drivers and look into the quirks of |
| certain system calls and the kernel on your target system. |
| |
| How do I set it up? |
| =================== |
| |
| The file INSTALL gives instructions. On supported systems the |
| compilation process should be automatic. You will need a C compiler, |
| e.g. gcc or clang. |
| |
| What documentation is there? |
| ============================ |
| |
| The distribution includes manual pages and a document containing |
| Frequently Asked Questions (FAQ). |
| |
| The documentation is also available on the chrony web pages, accessible |
| through the URL |
| |
| https://chrony.tuxfamily.org/ |
| |
| Where are new versions announced? |
| ================================= |
| |
| There is a low volume mailing list where new versions and other |
| important news relating to chrony is announced. You can join this list |
| by sending mail with the subject "subscribe" to |
| |
| chrony-announce-request@chrony.tuxfamily.org |
| |
| These messages will be copied to chrony-users (see below). |
| |
| How can I get support for chrony? |
| and where can I discuss new features, possible bugs etc? |
| ======================================================== |
| |
| There are 3 mailing lists relating to chrony. chrony-announce was |
| mentioned above. chrony-users is a users' discussion list, e.g. for |
| general questions and answers about using chrony. chrony-dev is a more |
| technical list, e.g. for discussing how new features should be |
| implemented, exchange of information between developers etc. To |
| subscribe to either of these lists, send a message with the subject |
| "subscribe" to |
| |
| chrony-users-request@chrony.tuxfamily.org |
| or |
| chrony-dev-request@chrony.tuxfamily.org |
| |
| as applicable. |
| |
| When you are reporting a bug, please send us all the information you can. |
| Unfortunately, chrony has proven to be one of those programs where it is very |
| 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 |
| pin-point the problem in some cases. Please be patient and plan for this! |
| |
| License |
| ======= |
| |
| chrony is distributed under the GNU General Public License version 2. |
| |
| Authors |
| ======= |
| |
| Richard P. Curnow <rc@rc0.org.uk> |
| Miroslav Lichvar <mlichvar@redhat.com> |
| |
| Acknowledgements |
| ================ |
| |
| In writing the chronyd program, extensive use has been made of RFC 1305 |
| and RFC 5905, written by David Mills. The source code of the NTP reference |
| implementation has been used to check the details of the protocol. |
| |
| The following people have provided patches and other major contributions |
| to the program : |
| |
| Lonnie Abelbeck <lonnie@abelbeck.com> |
| Patch to add tab-completion to chronyc |
| |
| Benny Lyne Amorsen <benny@amorsen.dk> |
| Patch to add minstratum option |
| |
| Andrew Bishop <amb@gedanken.demon.co.uk> |
| Fixes for bugs in logging when in daemon mode |
| Fixes for compiler warnings |
| Robustness improvements for drift file |
| Improve installation (directory checking etc) |
| Entries in contrib directory |
| Improvements to 'sources' and 'sourcestats' output from chronyc |
| Improvements to documentation |
| Investigation of required dosynctodr behaviour for various Solaris |
| versions |
| |
| Stephan I. Boettcher <stephan@nevis1.columbia.edu> |
| Entries in contrib directory |
| |
| Erik Bryer <ebryer@spots.ab.ca> |
| Entries in contrib directory |
| |
| Bryan Christianson <bryan@whatroute.net> |
| Support for macOS |
| Support for privilege separation |
| Entries in contrib directory |
| |
| Juliusz Chroboczek <jch@pps.jussieu.fr> |
| Patch to fix install rule in Makefile if chronyd file is in use |
| |
| Christian Ehrhardt <christian.ehrhardt@canonical.com> |
| Patch to generate a warning message when CAP_SYS_TIME is missing |
| |
| Paul Elliott <pelliott@io.com> |
| Entries in contrib directory |
| |
| Mike Fleetwood <mike@rockover.demon.co.uk> |
| Fixes for compiler warnings |
| |
| Alexander Gretencord <arutha@gmx.de> |
| Changes to installation directory system to make it easier for |
| package builders |
| |
| Andrew Griffiths <agriffit@redhat.com> |
| Patch to add support for seccomp filter |
| |
| Walter Haidinger <walter.haidinger@gmx.at> |
| Access to a Linux installation where v1.12 wouldn't compile |
| Disc space for an independent backup of the sources |
| |
| Juergen Hannken-Illjes <hannken@eis.cs.tu-bs.de> |
| Port to NetBSD |
| |
| John Hasler <john@dhh.gt.org> |
| Project and website at tuxfamily.org |
| Changes to support 64 bit machines (i.e. those where |
| sizeof(unsigned long) > 4) |
| Bug fix to initstepslew directive |
| Fix to remove potential buffer overrun errors |
| Memory locking and real-time scheduler support |
| Fix fault where chronyd enters an endless loop |
| |
| Tjalling Hattink <t.hattink@fugro.nl> |
| Fix scheduler to allow stepping clock from timeout handler |
| Patch to take leap second in PPS refclock from locked source |
| Patch to make reading of RTC for initial trim more reliable |
| |
| Liam Hatton <me@liamhatton.com> |
| Advice on configuring for Linux on PPC |
| |
| Jachym Holecek <jakym@volny.cz> |
| Patch to make Linux real time clock work with devfs |
| |
| HÃ¥kan Johansson <f96hajo@chalmers.se> |
| Patch to avoid large values in sources and sourcestats output |
| |
| Jim Knoble <jmknoble@pobox.com> |
| Fixes for compiler warnings |
| |
| Antti Jrvinen <costello@iki.fi> |
| Advice on configuring for BSD/386 |
| |
| Victor Moroz <vim@prv.adlum.ru> |
| Patch to support Linux with HZ!=100 |
| |
| Kalle Olavi Niemitalo <tosi@stekt.oulu.fi> |
| Patch to add acquisitionport directive |
| |
| Frank Otto <sandwichmacher@web.de> |
| Handling arbitrary HZ values |
| |
| Denny Page <dennypage@me.com> |
| Advice on support for hardware timestamping |
| |
| Chris Perl <cperl@janestreet.com> |
| Patches to improve support for refclocks keeping time in TAI |
| |
| Gautier PHILIPPON <gautier.philippon@ensimag.grenoble-inp.fr> |
| Patch to add refresh command to chronyc |
| |
| Andreas Piesk <apiesk@virbus.de> |
| Patch to make chronyc use the readline library if available |
| |
| Andreas Steinmetz <ast@domdv.de> |
| Patch to make stratum of refclocks configurable |
| |
| Timo Teras <timo.teras@iki.fi> |
| Patch to reply correctly on multihomed hosts |
| |
| Bill Unruh <unruh@physics.ubc.ca> |
| Advice on statistics |
| |
| Stephen Wadeley <swadeley@redhat.com> |
| Improvements to man pages |
| |
| Wolfgang Weisselberg <weissel@netcologne.de> |
| Entries in contrib directory |
| |
| Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
| Many robustness and security improvements |
| |
| Ulrich Windl <ulrich.windl@rz.uni-regensburg.de> for the |
| Information about the Linux 2.2 kernel functionality compared to 2.0 |
| |
| Doug Woodward <dougw@whistler.com> |
| Advice on configuring for Solaris 2.8 on x86 |
| |
| Many other people have contributed bug reports and suggestions. We are sorry |
| we cannot identify all of you individually. |