%includes; ]> &header;

You can (and are encouraged to) mirror the FreeBSD web pages on www.freebsd.org. To do this, you need to obtain and install a program called rsync on your web server. Rsync is a revolutionary tree synchronising program written by Andrew Tridgell and Paul Mackerras at the Australian National University. It was modified to work in an unprivileged client-server mode by Warren Toomey.

Installing Rsync

The source code to rsync can be obtained via anonymous ftp at ftp://minnie.cs.adfa.oz.au/rsync/rsync_client.tar.gz.

To build and install it, do the following:

 % tar vxzf rsync_client.tar.gz
 % cd rsync-1.6.2
 % ./configure
 % make; make install
 % rehash	(for csh users)

Running Rsync

If you keep your mirrored FreeBSD web pages in the directory /usr/FreeBSD-mirror/data and are owned by the user `fred', then run the following command as user `fred':

 % rsync --client -avz www.freebsd.org:www /usr/FreeBSD-mirror/data

This will mirror the FreeBSD web pages into /usr/FreeBSD-mirror/data. You can install this into fred's crontab, so that it runs once a day. The pages on www.freebsd.org are updated daily at about 4:30am California time.

Optimizing Rsync's Performance

There are several gzipped tar files kept in the web hierarchy at www.freebsd.org. Rsync does not deal with these very well; it must transmit each tar file if it is changed. Because these files can easily be created locally, you can get rsync to exclude them. To do this, run the following command as user `fred':

 % rsync --client -avz --exclude '*.tar.gz' www.freebsd.org:www /usr/FreeBSD-mirror/data

You should see a dramatic improvement in rsync's performance. (A better mechanism for dealing with the tar files needs to be established.)

More Information on Rsync

Now that you can use rsync, I would suggest you read the following files:

If you have any questions about rsync, please pass them on to the authors, or join the rsync mailing list (both described in the README).

&footer;