Author: mdke
Date: Fri Sep 8 20:42:57 2006
New Revision: 3271
Modified:
trunk/generic/serverguide/C/network-applications.xml
Log:
Andreas' patch
Modified: trunk/generic/serverguide/C/network-applications.xml
==============================================================================
--- trunk/generic/serverguide/C/network-applications.xml (original)
+++ trunk/generic/serverguide/C/network-applications.xml Fri Sep 8
20:42:57 2006
@@ -3514,5 +3514,96 @@
</para>
</sect3>
</sect2>
+ </sect1>
+
+ <sect1 id="NTP" status="complete">
+ <title>Time Synchronisation with NTP</title>
+ <para>
+This page describes methods for keeping your computer's time accurate. This is
useful for servers, but is not necessary (or desirable) for desktop machines.
+</para>
+ <para>
+NTP is a TCP/IP protocol for synchronising time over a network. Basically a
client requests the current time from a server, and uses it to set its own
clock.
+</para>
+ <para>
+Behind this simple description, there is a lot of complexity - there are tiers
of NTP servers, with the tier one NTP servers connected to atomic clocks (often
via GPS), and tier two and three servers spreading the load of actually
handling requests across the internet. Also the client software is a lot more
complex than you might think - it has to factor out communication delays, and
adjust the time in a way that does not upset all the other processes that run
on the server. But luckily all that complexity is hidden from you!
+</para>
+ <para>
+Ubuntu has two ways of automatically setting your time: ntpdate and ntpd.
+</para>
+
+<sect2 id="ntpdate" status="complete">
+<title>ntpdate</title>
+ <para>
+Ubuntu comes with ntpdate as standard, and will run it once at boot time to
set up your time according to Ubuntu's NTP server. However, a server's clock
is likely to drift considerably between reboots, so it makes sense to correct
the time ocassionally. The easiest way to do this is to get cron to run it
every day. With your favourite editor, create a file
+<code>/etc/cron.daily/ntpdate</code>
+ containing:
+</para>
+<screen>ntpdate ntp.ubuntu.com
+</screen>
+<para/>
+</sect2>
+ <sect2 id="ntpd" status="complete">
+<title>ntpd</title>
+ <para>
+ntpdate is a bit of a blunt instrument - it can only adjust the time once a
day, in one big correction. The ntp daemon ntpd is far more subtle. It
calculates the drift of your system clock and continuously adjusts it, so there
are no large corrections that could lead to inconsistent logs for instance. The
cost is a little processing power and memory, but for a modern server this is
negligible.
+</para>
+<para>To set up ntpd: </para>
+<screen>sudo apt-get install ntp-simple
+</screen>
+<para/>
+</sect2>
+<sect2 id="timeservers" status="complete">
+<title>Changing Time Servers</title>
+ <para>
+In both cases above, your system will use Ubuntu's NTP server at
+<code>ntp.ubuntu.com</code>
+ by default. This is OK, but you might want to use several servers to increase
accuracy and resilience, and you may want to use time servers that are
geographically closer to you. to do this for ntpdate, change the contents of
+<code>/etc/cron.daily/ntpdate</code>
+ to:
+</para>
+<screen>ntpdate ntp.ubuntu.com pool.ntp.org
+</screen>
+ <para>
+And for ntpd edit
+<code>/etc/ntp.conf</code>
+ to include additional server lines:
+</para>
+<screen>ntp.ubuntu.com
+server pool.ntp.org
+</screen>
+ <para>
+You may notice
+<code>pool.ntp.org</code>
+ in the examples above. This is a really good idea which uses round-robin DNS
to return an NTP server from a pool, spreading the load between several
different servers. Even better, they have pools for different regions - for
instance, if you are in New Zealand, so you could use
+<code>nz.pool.ntp.org</code>
+ instead of
+<code>pool.ntp.org</code>
+. Look at
+<ulink url="http://www.pool.ntp.org/">http://www.pool.ntp.org/</ulink>
+ for more details.
+</para>
+ <para>
+You can also Google for NTP servers in your region, and add these to your
configuration. To test that a server works, just type
+<code>sudo ntpdate ntp.server.name</code>
+ and see what happens.
+</para>
+<para/>
+</sect2>
+ <sect2 id="relatedpages" status="complete">
+<title>Related Pages</title>
+ <itemizedlist>
+ <listitem>
+ <para>
+<ulink url="http://ntp.isc.org/bin/view/Support/WebHome">NTP Support</ulink>
+</para>
+</listitem>
+ <listitem>
+ <para>
+<ulink url="http://www.ntp.org/ntpfaq/NTP-a-faq.htm">The NTP FAQ and
HOWTO</ulink>
+</para>
+</listitem>
+</itemizedlist>
+<para/>
+</sect2>
</sect1>
</chapter>
|