Datasheet
“main” (Installation and Administration) — 2004/6/25 — 13:29 — page 558 — #584
i
i
i
i
i
i
i
i
23.1.5 rsync
When no version control is needed but large directory structures need to
be synchronized over slow network connections, the tool rsync offers well-
developed mechanisms for transmitting only changes within files. This not
only concerns text files, but also binary files. To detect the differences be-
tween files, rsync subdivides the files into blocks and computes checksums
over them.
The effort put into the detection of the changes comes at a price. The sys-
tems to synchronize should be scaled generously for the usage of rsync.
RAM is especially important.
23.2 Determining Factors for Selecting
a Program
23.2.1 Client-Server versus Peer-to-Peer
Two different models are commonly used for distributing data. In the first
model, all clients synchronize their files with a central server. The server
must be accessible by all clients at least occasionally. This model is used by
subversion, CVS, and WebDAV.
The other possibility is to let all networked hosts synchronize their data
among each other as peers. This is the concept followed by unison. rsync
actually works in client mode, but any client can also act as a server.
23.2.2 Portability
subversion, CVS, and unison are also available for many other operating
systems, including various Unix and Windows systems.
23.2.3 Interactive versus Automatic
In subversion, CVS, WebDAV, and Unison,
the data synchronization is started manually by the user. This allows fine
control over the data to synchronize and easy conflict handling. However,
if the synchronization intervals are too long, conflicts are more likely to oc-
cur.
558
23.2. Determining Factors for Selecting a Program










