Using AMANDA
This is an excerpt from the
book Unix Backup & Recovery. This
page is only part of the AMANDA chapter that is available here
for free.
Introduction
AMANDA, the Advanced Maryland
Automated Network Disk Archiver, is a public domain utility developed at
the University of Maryland. It is as advanced as a free backup utility
gets, and has quite a large user community. AMANDA allows you to
set up a single master backup server to back up multiple hosts to a single
backup drive. (It also works with a number of stackers.) AMANDA uses
native dump and/or GNUtar, and can back up a large number of workstations
running multiple versions of Unix. Recent versions can also use SAMBA
to back up Microsoft Windows (95/98/NT/2000)-based hosts. More information
about AMANDA can be found at http://www.amanda.org.
AMANDA was written primarily
by James da Silva at the Department of Computer Science of the University
of Maryland around 1992. The goal was to be able to back up large numbers
of client workstations to a single backup server machine.
AMANDA was driven by the
introduction of large capacity tape drives, such as ExaByte 8mm and DAT
4mm. With these drives, and the increased number of personal workstations,
it no longer made sense to back up individual machines to separate media.
Coordinating access and providing tape hardware was prohibitive in effort
and cost. A typical solution to this problem reaches out to each client
from the tape host and dumps areas one by one across the network. But this
usually cannot feed the tape drive fast enough to keep it in streaming
mode, causing a severe performance penalty.
Since AMANDA is optimized
to take advantage of tape drives, we will use the word tape throughout
this section. However, that doesn’t mean that you couldn’t use it
with an optical or CD-R drive.
The AMANDA approach is to
use a “holding disk” on the tape server machine, do several dumps in parallel
into files in the holding disk, and have an independent process take data
out of the holding disk. Because most dumps are small partials, even a
modest amount of holding disk space can provide an almost optimal flow
of dump images onto tape.
AMANDA also has a unique
approach to scheduling dumps. A “dump cycle” is defined for each area to
control the maximum time between full dumps. AMANDA takes that information,
statistics about past dump performance, and estimates on the size of dumps
for this run to decide which backup level to do. This gets away from the
traditional static “it's Friday so do a full dump of /usr on client A”
approach and frees AMANDA to balance the dumps so the total run time is
roughly constant from day to day.
AMANDA is freely-available
software maintained by the AMANDA Users Group. Based on membership of AMANDA-related
mailing lists, there are probably well over 1500 sites using it.
This chapter is based on
AMANDA version 2.4.2. Updated versions of this section will be available
with the AMANDA source code.
|