To use rdist, one system in the network is designated as the master host.
The master host contains the master copy of source files that are distributed
to remote hosts.
rdist software is installed as part of the operating
system. It must reside in the /usr/bin directory on the master host and on the remote hosts
that are to be updated. It must be owned by root and must have its access
permissions set to rwsr-xr-x. The rdist process on the master host starts an rdist process on each remote host.
rdist uses remsh as the mechanism for distributing files over the network.
In order to use rdist, you must set up remsh on each of the remote hosts. See “Setting Up remsh”.
A file on a remote host is updated if the size or modification
time of the file differs from the master copy. Programs that are
being executed on the remote host can be updated. The next time
the program is run, the new version of the program is executed.
The owner, group, mode, and modification time of the files on the
master host are preserved on the remote host, if possible. The ownership
of the files is preserved only if the remote user is a superuser.
Otherwise, the files are owned by the remote user. Command line
options are provided to control this behavior.
By default, the list of files updated on each remote host
is printed to standard output on the master host. You can mail the
list of updated files for a particular remote host to a specified
mail recipient.
Figure 10-1 “Distributing Files
with rdist” shows the distribution of source
files filea1, filea2, and filea3 from master host A to remote hosts B and C.
Note that the rdist process does not prompt for passwords. The user
on the master host who starts rdist (usually a system or network administrator) must
have an account on the remote host and must be allowed remote command
execution. (The working directory on the remote host is the user's
home directory.) Or, you can specify a user name on a remote host
for rdist to use that has the appropriate permissions for
accessing files on that remote host. This is described in “Creating the Distfile”.
rdist on the master host reads commands from a distfile,
an ASCII file that specifies the files or directories to be copied,
the remote hosts to be updated, and the operations to be performed
for the update. A distfile can be specified when invoking rdist on the master host. Otherwise, rdist looks in the current working directory for a file
named distfile to use as input; if distfile does not exist in the current working directory, then rdist looks for Distfile.