This
is a time server daemon and is normally invoked
at boot time from the
rc 8
file.
It synchronizes the host's time with the time of other
machines in a local area network running
timed 8 .
These time servers will slow down the clocks of some machines
and speed up the clocks of others to bring them to the average network time.
The average network time is computed from measurements of clock differences
using the
ICMP
timestamp request message.
The service provided by
timed
is based on a master-slave
scheme.
When
timed 8
is started on a machine, it asks the master for the network time
and sets the host's clock to that time.
After that, it accepts synchronization messages periodically sent by
the master and calls
adjtime 2
to perform the needed corrections on the host's clock.
It also communicates with
date 1
in order to set the date globally,
and with
timedc 8 ,
a timed control program.
If the machine running the master crashes, then the slaves will elect
a new master from among slaves running with the
M
flag.
A
timed
running without the
M
or
F
flags will remain a slave.
The
t
flag enables
timed
to trace the messages it receives in the
file
/var/log/timed.log .
Tracing can be turned on or off by the program
timedc 8 .
The
d
flag is for debugging the daemon.
It causes the program to not put itself into the background.
Normally
timed
checks for a master time server on each network to which
it is connected, except as modified by the options described below.
It will request synchronization service from the first master server
located.
If permitted by the
M
flag, it will provide synchronization service on any attached networks
on which no current master server was detected.
Such a server propagates the time computed by the top-level master.
The
n
flag, followed by the name of a network which the host is connected to
(see
networks 5 ) ,
overrides the default choice of the
network addresses made by the program.
Each time the
n
flag appears, that network name is added to a list of valid networks.
All other networks are ignored.
The
i
flag, followed by the name of a network to which the host is connected
(see
networks 5 ) ,
overrides the default choice of the network addresses made by the program.
Each time the
i
flag appears, that network name is added to a list of networks to ignore.
All other networks are used by the time daemon.
The
n
and
i
flags are meaningless if used together.
Timed
checks for a master time server on each network to which
it is connected, except as modified by the
n
and
i
options described above.
If it finds masters on more than one network, it chooses one network
on which to be a "slave," and then periodically checks the other
networks to see if the masters there have disappeared.
One way to synchronize a group of machines is to use an NTP daemon to
synchronize the clock of one machine to a distant standard or a radio
receiver and
F Ar hostname
to tell its timed daemon to trust only itself.
Messages printed by the kernel on the system console occur with
interrupts disabled.
This means that the clock stops while they are printing.
A machine with many disk or network hardware problems and consequent
messages cannot keep good time by itself. Each message typically causes
the clock to lose a dozen milliseconds. A time daemon can
correct the result.
Messages in the system log about machines that failed to respond
usually indicate machines that crashed or were turned off.
Complaints about machines that failed to respond to initial time
settings are often associated with
multi-homed
machines that looked for time masters on more than one network and eventually
chose to become slaves on other networks.