Installing from Source

On platforms other than Debian, Cedar Backup is installed from a Python source distribution. [14] You will have to manage dependencies on your own.

Tip

Many UNIX-like distributions provide an automatic or semi-automatic way to install packages like the ones Cedar Backup requires (think RPMs for Mandrake or RedHat, Gentoo's Portage system, the Fink project for Mac OS X, or the BSD ports system). If you are not sure how to install these packages on your system, you might want to check out Appendix B, Dependencies. This appendix provides links to upstream source packages, plus as much information as I have been able to gather about packages for non-Debian platforms.

Installing Dependencies

Cedar Backup requires a number of external packages in order to function properly. Before installing Cedar Backup, you must make sure that these dependencies are met.

Cedar Backup is written in Python 2 and requires version 2.7 or greater of the language. Python 2.7 was originally released on 4 Jul 2010, and is the last supported release of Python 2. As of this writing, all current Linux and BSD distributions include it. You must install Python 2 on every peer node in a pool (master or client).

Additionally, remote client peer nodes must be running an RSH-compatible server, such as the ssh server, and master nodes must have an RSH-compatible client installed if they need to connect to remote peer machines.

Master machines also require several other system utilities, most having to do with writing and validating CD/DVD media. On master machines, you must make sure that these utilities are available if you want to to run the store action:

  • mkisofs

  • eject

  • mount

  • unmount

  • volname

Then, you need this utility if you are writing CD media:

  • cdrecord

or these utilities if you are writing DVD media:

  • growisofs

All of these utilities are common and are easy to find for almost any UNIX-like operating system.

Installing the Source Package

Python source packages are fairly easy to install. They are distributed as .tar.gz files which contain Python source code, a manifest and an installation script called setup.py.

Once you have downloaded the source package from the Cedar Solutions website, [13] untar it:

$ zcat CedarBackup2-2.0.0.tar.gz | tar xvf -
         

This will create a directory called (in this case) CedarBackup2-2.0.0. The version number in the directory will always match the version number in the filename.

If you have root access and want to install the package to the standard Python location on your system, then you can install the package in two simple steps:

$ cd CedarBackup2-2.0.0
$ python setup.py install
         

Make sure that you are using Python 2.7 or better to execute setup.py.

You may also wish to run the unit tests before actually installing anything. Run them like so:

python util/test.py
         

If any unit test reports a failure on your system, please email me the output from the unit test, so I can fix the problem. [15] This is particularly important for non-Linux platforms where I do not have a test system available to me.

Some users might want to choose a different install location or change other install parameters. To get more information about how setup.py works, use the --help option:

$ python setup.py --help
$ python setup.py install --help
         

In any case, once the package has been installed, you can proceed to configuration as described in Chapter 5, Configuration.