Installation

From The Open Source Backup Wiki (Amanda, MySQL Backup, BackupPC)
Jump to navigationJump to search

Pre-built Amanda RPMs

Pre-built Amanda RPMs are available from

  • Zmanda Downloads web site. Amanda 2.5.0 binary RPMs, Source tarball and RPM are available for Red Hat Enterprise 5.0, 4.0 and 3.0; Fedora Core 3, 4, 5 and 6; SuSE Linux Enterprise Server 9, 10 and Open Suse 10.0. Amanda windows client (using Cygwin) is also available.
    • backup_server RPM should be installed on Amanda backup server. It contains Amanda server and client.
    • backup_client RPM should be installed on Amanda client (computer that is backed up by Amanda server). It contains only Amanda client.
    • Check Zmanda Downloads page for instructions how to perform signature verification.
    • Some of the Amanda configuration steps are performed automatically by Amanda RPMs from Zmanda downloads page.
    • For instructions on using Windows client, please see Windows client page.
  • Redhat and Fedora distributions : 2.4.5 Amanda rpms are available as part of RHEL 4, Fedora core 3 and Fedora core 4 distributions. There are two binary RPMS - amanda-server

and amanda-client. You can also get it from the distribution media.

  • Suse distribution

There is only one binary RPM - amanda You can also get it from the distribution media.

  • Other Linux distributions

Most linux distributions (debian, mandrake, turbolinux) package also contain Amanda. Search for packages in RPM site or use apt-get (if you are using debian or ubuntu)

Installation

  • Choose the appropriate client and server package for the machine.
  • You should run installation command as super-user ("root")
  • Use the following command to install the package:
/bin/rpm -ivh <rpm name(s)>

Upgrade

  • To upgrade from earlier version of the package, use the following command:
/bin/rpm -Fvh <rpm name(s)>

Verification

After installation or upgrade, you can verify if the package has been installed correctly on the machine.

  • Use the following command to verify the installation:
/bin/rpm -Vp <rpm name(s)>

Uninstall

  • Find the package name to un-install. Use the following command to find the packages installed on the machine.
/bin/rpm -qa | grep amanda 
  • Use the following command to un-install the package:
/bin/rpm -e <rpm name(s)>

Getting Amanda Sources

There are multiple ways to get Amanda sources:

  1. Download source rpms or source tar ball from Zmanda downloads page.
  2. You can get source tar ball from Sourceforge project page
  3. You can get intermediate Amanda builds or patches from Zmanda community builds page.
  4. You can checkout a copy from the Amanda source tree. Amanda uses subversion tree after Amanda 2.5.1 release. Amanda 2.5.1 and older releases used CVS tree.

Subversion tree

Amanda project's SourceForge Subversion repository (top of trunk) can be checked out through SVN with the following command:

 svn co https://svn.sourceforge.net/svnroot/amanda/amanda/trunk amanda 

For more information on Subversion commands, see the Version control with Subversion manual.

CVS tree

Amanda project's SourceForge CVS repository can be checked out as "anonymous" user with the following command. The module you wish to check out must be specified as the modulename. When prompted for a password for "anonymous" user, simply press the Enter key.

 cvs -d:pserver:[email protected]:/cvsroot/amanda login 
 cvs -z3 -d:pserver:[email protected]:/cvsroot/amanda co <modulename>
 
 <modulename> has to be "amanda"

All CVS commands executed within the module's directory does not need the -d parameter.

Building Amanda binaries

If you have different platforms, you only need to install the whole Amanda package on the tape server host (the one with tape drive). On the backup client hosts (the ones you are going to dump), you only need to compile some of the Amanda programs (See Backup client configuration).

Dependencies

Amanda can optionally make use of the following packages to back up different types of clients or clients with different filesystem dumping programs.

  • GNU-tar: Use GNU tar 1.15 or later version on Amanda clients. Earlier versions of GNU tar (some versions of 1.13 and 1.14) are known to have problems.
GNU tar can be downloaded from http://www.gnu.org/software/tar/tar.html#downloading
  • Samba: Samba allows Unix systems to talk to Windows clients. Amanda can back up Microsoft Windows clients using samba. Read Backup PC hosts using Samba for configuration tips and known limitations.
  • Perl: If you wish to make use of some of the scripts that come with Amanda, you will need to install Perl.
http://www.perl.org/get.html.
  • Awk: One of the programs included in this package is amplot, which reads a data file that Amanda generates for each dump and translates that information in it into a nice picture that can be used to determine how your installation is doing and if any parameters need to be changed. To use amplot, you need a version of awk that understands command line variable substitutions, such as nawk or gawk, which is available from ftp://ftp.gnu.org/pub/gnu/gawk/gawk-3.1.1.tar.gz
  • readline library: amrecover command optionally uses the readline library for its command-line edition mechanisms. (If you use a package-based distribution, check for the package readline-devel-X.Y.rpm.) This library itself requires either termcap, curses or ncurses. termcap is preferred, and both libraries can be obtained from:
           ftp://ftp.gnu.org/pub/gnu/readline/readline-5.0.tar.gz
           ftp://ftp.gnu.org/pub/gnu/termcap/termcap-1.3.1.tar.gz
  • Build tools (autoconf, automake, bison): If you are an Amanda developer, you may need to install the following tools. Autoconf and automake are required if you are going to rebuild the Makefiles and auto configuration scripts. Bison is only needed if you are going to work on the index server and client code.
           ftp://ftp.gnu.org/pub/gnu/autoconf/autoconf-2.53.tar.gz 
           ftp://ftp.gnu.org/pub/gnu/automake/automake-1.6.3.tar.gz 
           ftp://ftp.gnu.org/pub/gnu/bison/bison-1.27.tar.gz 
           ftp://ftp.gnu.org/pub/gnu/flex/flex-2.5.4a.tar.gz

Building Amanda source

You need to generate the "configure" script, by running the "./autogen" script in the top level directory of the amanda sources. When you download a source package or a snapshot, the configure script is already generated (and you can compile on a system without the autoconf tools installed).

Compile time parameters

Read about the different configuration options available for building and running Amanda. To see the options, do both:

  1. Run ./configure --help to see the available options that configure takes.
  2. Read the file example/config.site which gives longer descriptions to the same options.


Configure command line options

  • Choose which user and group you will run the dumps under. Common choices for user are `bin' or another user specifically created for Amanda, such as `amanda'; common choices for group are `operator' or `disk'. If you do not specify --with-user=<username> and --with-group=<groupname>, configure will abort.
  • Choose the default name for your configuration, such as `csd' or `DailySet1'). This name is used by the Amanda commands to choose one of multiple possible configurations. You may specify it using the --with-config=<confgname>.
  • Decide where Amanda will live. You need to choose a root directory for Amanda. Let this root directory be called $prefix. Unless you change the default behavior with the appropriate command line options, Amanda will install itself as. Listed below you find the appropriate configure-option for each directory to change the location of this part of Amanda.
--sbindir=$prefix/sbin					Amanda server side programs
--libexecdir=$prefix/libexec				Amanda backup client programs
--libdir=$prefix/lib					Amanda dynamic libraries
--with-configdir=$prefix/etc/amanda			Runtime configuration files
--with-gnutar-listdir=$prefix/var/amanda/gnutar-lists	Directory for GNU-tar lists (client)
--mandir=$prefix/man					Directory for manual pages

Note that the GNU-tar listdir should be a local filesystem on each client that is going to be backed up with GNU-tar. If it really must be NFS-mounted, make sure the filesystem is exported so that the client has root access to it.

  • Decide if you are compiling Amanda on a server only or a client only platform. If you have a particular operating system that will only be a Amanda client and will never run as the master tape host, then add the --without-server option to configure. In the unlikely case that you have a particular operating system that will serve as the tape host and you do not wish to back up any machines that run this operating system, add the --without-client option to the configure options.


Now configure Amanda. There are two ways of doing this. If you are running Amanda on a single OS, then probably the first method works better for you. If you need to support multiple platforms, then the second method will work better.

  1. Run configure as non-root-user with the appropriate command line options. You will probably want to remember the command line options for future builds of Amanda.
  2. Edit examples/config.site and install it in the directory $prefix/etc or $prefix/share. When configure runs the next time it will look for this file and use it to configure Amanda.

Installing Amanda binaries

  • Back at the top-level source directory, build the sources:
make
su root; make install

Make sure that you don't build the software as root, you may run the first make-command as the AMANDA-user, for example. On the other hand you have to run make install as root to get the binaries installed with the proper permissions. If you want to change the compiler flags, you can do so like this:

make CFLAGS="-O3 -Wall"
  • If you have built with USE_VERSION_SUFFIXES, you will want to create symlinks to the version you wish to use, eg: ln -s amdump-x.y.z amdump This is not done automatically by the install process, so that you can have multiple AMANDA versions co-existing, and choose yourself which to make the default version. The script contrib/set_prod_link.pl may save you some keystrokes.
  • Run ldconfig as root to update the paths to the recently installed shared libraries.


OS specific installation notes