Mirroring/Copying the Unix Archive

Last update: May 16, 2000

1.
Introduction to the Unix Archive
2.
Mirroring the Unix Archive
3.
Distributing the Unix Archive on Media
4.
Making a CD Image of the Unix Archive
5.
Duplicating Unix Archive CDs
6.
Providing the Unix Archive On-line

Welcome to this document which describes how you can mirror the Unix Archive from minnie.cs.adfa.edu.au, either to provide an on-line mirror of the archive, or so that you can distribute copies of the archive on CD-ROM or other media.

If you do become such a Unix Archive Volunteer, Warren will add you to a volunteers mailing list so that we can discuss any problems or issues, suggest new approaches and keep each other informed of relevant events.

If you don't have the disk space to mirror the archive, but you do have a CD writer, then skip down to the section on duplicating Unix Archive CDs.

  
Introduction to the Unix Archive

The Unix Archive is a collection of files related to the UNIX system. Currently, the archive occupies around 1 Gigabyte of storage. Access to the archive requires a UNIX source license. These can now be obtained for free from SCO's web site; however, you must ensure that a person has a UNIX source license before you can give them access to your copy of the archive. This is achieved by a common pool of username/password pairs to be used on all Unix Archive mirrors.

The main areas of the Unix Archive are:

Miscellaneous areas in the archive are:

The latter area is of most interest to you! Please note that none of these four areas should be made available to normal UNIX source license holders.


On minnie.cs.adfa.edu.au, different groups of users can access the Unix Archive with FTP, rsync or by normal Unix login. There are three categories of Archive users:

Once you have mirrored the archive, you will need to setup similar protections for the same reasons. In fact, if you use rsync, you will probably want to have the same group names or group-ids owning the Archive files on your system. See the man page for rsync for details on how it deals with file ownership.

  
Mirroring the Unix Archive

There are two main ways of mirroring the 1 Gig of files in the Unix Archive: by rsync or by FTP. The rsync method is the preferred way, as it minimises data transfer.

The archive changes very slowly. If you are mirroring to provide an FTP mirror, you will only need to mirror the archive once a week or fortnight. If you are mirroring to distribute the archive by CD-ROM or other media, you will only need to mirror every few months.

Mirroring via Rsync

Mirroring the Unix Archive by rsync is pretty simple. First, obtain a recent copy of the rsync program from ftp://samba.anu.edu.au/pub/rsync. Any version from 2.3 up will be fine. Compile and install the program on your Unix system.

Now obtain an rsync username & password by e-mail from Warren. You'll need to demonstrate a willingness to mirror as often as required, and to only give access to UNIX license holders. Because Warren can't send back the password unencrypted, you should either tell him your fax number, or tell him where he can obtain your PGP key.

Once you have your username & password, make a directory to hold the Unix Archive on your system; remember, you need at least 1G of free disk space. Cd into this directory and run the command:

rsync -avuz user@minnie.cs.adfa.edu.au::TUHS  .

replacing user with your username in the command. You will then be prompted for your rsync password, and eventually you will have a synchronised copy of the Unix Archive on your system. If you run the rsync as root and have put the group-names pupsarc and pupswork in your /etc/group file, then the rsync will set the appropriate group ownerships. Otherwise, you'll end up with files having group-ids 25 and 26.

You can avoid the password prompt by setting the environment variable RSYNC_PASSWORD to the password you want to use or using the --password-file option. This may be useful when scripting rsync.

Hint: if you have a copy of the Unix Archive on CD-ROM, then you should copy it all into your Archive directory before you run rsync for the first time. This will greatly reduce the data transfer, saving time and money.

Mirroring via Ongoing Rsync

Once you have obtained a copy of the Unix Archive, edit .mirror/rsync_exclude and uncomment the last two lines. This will stop rsync from destroying any local changes you make in .mirror.

Edit .mirror/.depend and set USER and RSERVER to the remote rsync server that you used above, and the username you used. From now on, you can mirror the archive by going into .mirror and doing make sync.

Mirroring via FTP

You can also mirror the Unix Archive by FTP, assuming you already have password-protected FTP access to the Unix Archive on minnie. Find a suitable FTP mirroring program, and use it to mirror the whole archive. Examples mirroring programs I know of are ftpmirror, jmirror, mirror, pavuk, and spegla.

There are some drawbacks with this approach. Firstly, you probably will lose the file permissions and ownerships. Secondly, you'll have to copy whole files if they change; rsync only copies differences. Finally, you won't be able to mirror the .mirror directory, and you'll have to get a copy of that some other way, e.g by a tarball e-mailed from Warren.

  
Distributing the Unix Archive on Media

If you are prepared to distribute the Unix Archive on media such as CD-ROM or tapes, then your geographic location (but not name) will be added to the web page describing how people can obtain archive copies.

Once a person gets their SCO license, they will go to http://minnie.cs.adfa.edu.au/cgi-bin/pups_req.cgi and order a copy of all or part of the Archive on some medium from some geographical area. The script will make sure that one of the volunteers can actually copy the requested media within that area.

When a person fills in an archive request on this web page for your geographic area, you will receive e-mail with the following information:

The e-mail will tell you if the details supplied by the person match any known UNIX source license. If they don't, check by e-mail with Warren before continuing. You can also check the list of license holders in .mirror/License_Holders.

Once you are satisfied that the request is okay, you can then contact the person by e-mail. You should get further details on the request, tell them how much the request will cost them, and arrange a method of payment. Strictly speaking, you should work on a cost recovery basis, and not make a profit from the operation. However, you should charge for media, your own time, maintenance of equipment, postage and handling. The requester might get several offers, so don't do anything until they confirm that you are the chosen one.

Once you send off the request, then go to the web page http://minnie.cs.adfa.edu.au/cgi-bin/pups_vol.cgi, find the matching request, and tick it off, so it is removed from the list. I will scan this list periodically, and remind the mailing list if a request has been pending too long.

I have no idea how many requests you will receive. You might like to burn a number of CDs in one go, and then you can send them off as requests come in.

  
Making a CD Image of the Unix Archive

The Unix Archive is much bigger than one CD-ROM, so I've had to select which things in the archive get put onto the CD copies. If you go into the .mirror directory and do a make image, then a Rock Ridge image of most of the archive will be created. Read through the Makefile to see what sections from the archive are excluded. Also read through and modify .depend, as this sets the location of the local Unix Archive and the output image.

To build the CD image, you will have to get a copy of the mkisofs program, compile it and install it on your system. This can be obtained as part of the cdrecord software. You'll also need a spare 650Megs of disk space to create the CD image. You can use any CD writing software & hardware to burn this Rock Ridge image onto a blank CD. It would be a good idea to verify the CD's contents after you do your first make image.

As the Unix Archive changes and grows, I'll have to modify the Makefile in .mirror. I'll let you know via the mailing list when this happens.

  
Unix Archive CD Artwork

The file .mirror/cdcover.ps contains the artwork for the CD case, in PostScript format. Each day, the date in the file is changed on minnie.cs.adfa.edu.au, so this should reflect the date of your last archive synchronisation.

If you need the artwork in a format other than PostScript, then please e-mail Warren with the details.

  
Duplicating Unix Archive CDs

If you don't have disk space to mirror the archive, but do have a CD writer, then you can still help out by buying a Unix Archive CD from another volunteer. As requests for the CD come in, you can duplicate your CD and send them on to people, on a cost recovery basis as described above.

You should keep your Archive CD up to date by obtaining a new copy from the other volunteers when the archive contents change significantly. You may find that you can get the CD for free, because you are helping us out!

If you decide to take this approach, e-mail Warren once you have obtained your CD, and he will add you to the list of CD volunteers.

  
Providing the Unix Archive On-line

If you are prepared to make an on-line mirror of the archive, you'll be expected to have it on-line continuously. Archive users will be informed of your site and how to access it.

Warren will provide you with a one-off list of usernames and passwords for access to the archive. These will be used by users who are known to have appropriate UNIX source licenses. Make sure that these users can't access the .build, .miscfiles .mirror or .other directories. You can provide access any way you want: FTP, HTTP, rsyncd etc.

Make sure you mirror the archive weekly or fortnightly!

Finally...

If, after reading this, you still have questions, or have suggestions on how things can be improved, then please send them in to Warren or to the Archive Volunteers mailing list, so that we can help each other out and improve what we do by consensus.

And from me, many thanks for being a Unix Archive Volunteer.


Warren Toomey
2000-06-27