NAME
amanda.conf - Main configuration file for Amanda, the Advanced Maryland
Automatic Network Disk Archiver
DESCRIPTION
amanda.conf(5) is the main configuration file for Amanda. This manpage
lists the relevant sections and parameters of this file for quick
reference.
The file <CONFIG_DIR>/<config>/amanda.conf is loaded.
SYNTAX
There are a number of configuration parameters that control the
behavior of the Amanda programs. All have default values, so you need
not specify the parameter in amanda.conf if the default is suitable.
COMMENTS
Lines starting with # are ignored, as are blank lines. Comments may be
placed on a line with a directive by starting the comment with a #. The
remainder of the line is ignored.
KEYWORDS AND IDENTIFIERS
Keywords are case insensitive, i.e. mailto and MailTo are treated the
same. Also, the characters ´-´ and ´_´ are interchangeable in all
predefined Amanda keywords: device_property and device-property have
the same meaning.
Identifiers are names which are defined in the configuration itself,
such as dumptypes or interfaces. Identifiers are are case-insensitive,
but sensitive to ´-´ vs. ´_´. Identifiers should be quoted in the
configuration file, although For historical reasons, the quotes are
optional.
Strings are always quoted with double quotes ("), and any double quotes
or backslashes within the string are escaped with a backslash:
tapelist "/path/to/tapelist"
property "escaped-string" "escaping: \\ (backslash) and \" (double-quote)"
To summarize, then:
# QUOTES CASE -/_
logdir "logs" # required sensitive sensitive
send-amreport-on strange # prohibited insensitive insensitive
tapetype "EXABYTE" # optional insensitive sensitive
define dumptype "dt" { # optional insensitive sensitive
"dumptype-common" # optional insensitive sensitive
strategy noincr # prohibited insensitive insensitive
}
VALUE SUFFIXES
Integer arguments may have one of the following (case insensitive)
suffixes, some of which have a multiplier effect:
b byte bytes
Some number of bytes.
bps
Some number of bytes per second.
k kb kbyte kbytes kilobyte kilobytes
Some number of kilobytes (bytes*1024).
kps kbps
Some number of kilobytes per second (bytes*1024).
It is the default multiplier for all size options.
m mb meg mbyte mbytes megabyte megabytes
Some number of megabytes (bytes*1024*1024).
mps mbps
Some number of megabytes per second (bytes*1024*1024).
g gb gbyte gbytes gigabyte gigabytes
Some number of gigabytes (bytes*1024*1024*1024).
t tb tbyte tbytes terabyte terabytes
Some number of terabytes (bytes*1024*1024*1024*1024).
tape tapes
Some number of tapes.
day days
Some number of days.
week weeks
Some number of weeks (days*7).
Note
The value inf may be used in most places where an integer is
expected to mean an infinite amount.
Boolean arguments may have any of the values 1, y, yes, t, true
or on to indicate a true state, or 0, n, no, f, false or off to
indicate a false state. If no argument is given, true is
assumed.
PARAMETER ORDER
In general, the order in which parameters occur in the configuration
file does not matter, with the exception of subsection inheritance. For
example, if dumptype "normal-encrypt" which inherits from dumptype
"normal", then "normal" must appear first in the configuration file.
STRINGS
Quoted strings in Amanda follow a common, C-like syntax. Printable
characters and whitespace are kept as-is, except that the backslash
character (\) is used as an escape character, and a double-quote ends
the string. The allowed escape sequences are
ESCAPE SEQUENCE BECOMES
\\ \
\" "
\n (newline)
\t (tab)
\r (carriage return)
\f (form-feed)
\1 - \7
\01 - \77
\001 - \377 (character specified in octal)
Illegally quoted strings are handled on a "best-effort" basis, which
may lead to unexpected results.
Examples:
finserver "/data/finance/XYZ Corp´s \"real\" finances" finance-high eth0 -1
property "syspath" "C:\\WINDOWS\\SYSTEM"
SUBSECTIONS AND INHERITANCE
Amanda configuration files may include various subsections, each
defining a set of configuration directives. Each type of subsection is
described below. Note that all types of subsections can inherit from
other subsections of the same type by naming the "parent" section in
the "child" subsection. For example:
define dumptype global {
record yes
index yes
}
define dumptype nocomp {
global # inherit the parameters in dumptype ´global´
compress none
}
Note that multiple inheritance is also supported by simply naming
multiple parent sections in a child. Parents are implicitly expanded in
place in a child, and the last occurrence of each parameter takes
precedence. For example,
define tapetype par1 {
comment "Parent 1"
filemark 8k
speed 300bps
length 200M
}
define tapetype par2 {
comment "Parent 2"
filemark 16k
speed 400bps
}
define tapetype child {
par1
par2
filemark 32k
}
In this example, ´child´ will have a filemark of 32k, a speed of
400bps, and a length of 200M.
GLOBAL PARAMETERS
org string
Default: "daily". A descriptive name for the configuration. This
string appears in the Subject line of mail reports. Each Amanda
configuration should have a different string to keep mail reports
distinct.
mailer string
Default found by configure. A mail program that can send mail with
´MAILER -s "subject" user < message_file´.
mailto string
Default: none. A space separated list of recipients for mail
reports. If not specified, amdump will not send any mail.
send-amreport-on [ all | strange | error | never ]
Default: all. Specify which types of messages will trigger an email
from amreport. amreport is used by amdump and amflush.
all
Send an email on any message.
strange
Send an email on strange or error message. A strange message
occurs when the dump succeeded, but returned one or more errors
unknown to Amanda.
error
Send an email only on error messages.
never
Never send an email.
dumpcycle int
Default: 10 days. The number of days in the backup cycle. Each disk
will get a full backup at least this often. Setting this to zero
tries to do a full backup each run.
Note
This parameter may also be set in a specific dumptype (see
below). This value sets the default for all dumptypes so must
appear in amanda.conf before any dumptypes are defined.
runspercycle int
Default: same as dumpcycle. The number of amdump runs in dumpcycle
days. A value of 0 means the same value as dumpcycle. A value of -1
means guess the number of runs from the tapelist(5) file, which is
the number of tapes used in the last dumpcycle days / runtapes.
tapecycle int
Default: 15 tapes. Typically tapes are used by Amanda in an ordered
rotation. The tapecycle parameter defines the size of that
rotation. This parameter must be be larger than the number of tapes
used in a dumpcycle.
The number of tapes per dumpcycle is calculated by multiplying the
number of amdump runs per dump cycle runspercycle (the number of
amdump runs per dump cycle) and runtapes (the number of tapes used
per run). Typically tapecycle is set to two or four times the tapes
per dumpcycle.
Note
Amanda is commonly misconfigured with tapecycle equal to the
number of tapes per dumpcycle. In this misconfiguration,
amanda may erase a full dump before a new one is completed, the
recovery is then impossible. tapecycle must be at least one
tape larger than the number of tapes per dumpcycle.
While Amanda is always willing to use a new tape in its rotation,
it refuses to reuse a tape until at least ´tapecycle -1´ number of
other tapes have been used.
It is considered good administrative practice to set the tapecycle
parameter slightly lower than the actual number of tapes in
rotation. This allows the administrator to more easily cope with
damaged or misplaced tapes or schedule adjustments that call for
slight adjustments in the rotation order.
usetimestamps bool
Default: Yes. This option allows Amanda to track multiple runs per
calendar day. The only reason one might disable it is that Amanda
versions before 2.5.1 can´t read logfiles written when this option
was enabled.
label_new_tapes string
Deprecated, use autolabel option.
Default: not set. When set, this directive will cause Amanda to
automatically write an Amanda tape label to any blank tape she
encounters. This option is DANGEROUS because when set, Amanda will
ERASE any non-Amanda tapes you may have, and may also ERASE any
near-failing tapes. Use with caution.
When using this directive, specify the template for new tape
labels. The template should contain some number of contiguous ´%´
characters, which will be replaced with a generated number. Be sure
to specify enough ´%´ characters that you do not run out of tape
labels. Example: label_new_tapes "DailySet1-%%%"
autolabel string [any] [other_config] [non_amanda] [volume_error]
[empty]
Default: not set. When set, this directive will cause Amanda to
automatically write an Amanda tape label to most volume she
encounters. This option is DANGEROUS because when set, Amanda may
erase near-failing tapes or tapes accidentally loaded in the wrong
slot.
When using this directive, specify the template for new tape
labels. The template should contain some number of contiguous ´%´
characters, which will be replaced with a generated number. Be sure
to specify enough ´%´ characters that you do not run out of tape
labels. Example: autolabel "DailySet1-%%%" empty
any
equivalent to ´other_config non_amanda volume_error empty´
other_config
Label volumes with a valid Amanda label that do not match our
labelstr. Danger: this may erase volumes from other Amanda
configurations without warning!
non_amanda
Label volumes which do not start with data that resembles an
Amanda header. Danger: this may erase volumes from other backup
applications without warning!
volume_error
Label volumes where an error occurs while trying to read the
label. Danger: this may erase arbitrary volumes due to
transient errors.
empty
Label volumes where a read returns 0 bytes.
dumpuser string
Default: "amanda". The login name Amanda uses to run the backups.
The backup client hosts must allow access from the tape server host
as this user via .rhosts or .amandahosts, depending on how the
Amanda software was built.
printer string
Printer to use when doing tape labels. See the lbl-templ tapetype
option.
tapedev string
Default: "null:". The device name, referencing the name of a
"device" section in the configuration file. See amanda-devices(7)
for more information on device names.
If a tape changer is configured (see the tpchanger option), this
option might not be used.
If tapedev is null:, programs such as amdump will run normally but
all images will be thrown away. This should only be used for
debugging and testing, and probably only with the record option set
to no.
device_property string string
These options can set various device properties. See amanda-
devices(7) for more information on device properties and their
syntax. Both strings are always quoted; the first string contains
the name of the property to set, and the second contains its value.
For example, to set a fixed block size of 128k, write:
device_property "BLOCK_SIZE" "128k"
property [append] string string+
These options can set various properties, they can be used by third
party software to store information in the configuration file. Both
strings are quoted; the first string contains the name of the
property to set, and the others contains its values. append
keyword append the values to the list of values for that property.
tpchanger string
Default: not set. The name of the tape changer. If a tape changer
is not configured, this option is not used and should be commented
out of the configuration file.
If a tape changer is configured, choose one of the changer scripts
(e.g. chg-scsi) and enter that here.
changerdev string
Default: "dev/null". A tape changer configuration parameter. Usage
depends on the particular changer defined with the tpchanger
option.
changerfile string
Default: "usr/adm/amanda/log/changer-status". A tape changer
configuration parameter. Usage depends on the particular changer
defined with the tpchanger option.
runtapes int
Default: 1. The maximum number of tapes used in a single run. If a
tape changer is not configured, this option is not used and should
be commented out of the configuration file.
If a tape changer is configured, this may be set larger than one to
let Amanda write to more than one tape.
Note that this is an upper bound on the number of tapes, and Amanda
may use less.
Also note that as of this release, Amanda does not support true
tape overflow. When it reaches the end of one tape, the backup
image Amanda was processing starts over again on the next tape.
maxdumpsize int
Default: runtapes*tape_length. Maximum number of bytes the planner
will schedule for a run.
The default unit is Kbytes if it is not specified.
taperalgo [ first | firstfit | largest | largestfit | smallest | last ]
Default: first. The algorithm used to choose which dump image to
send to the taper.
first
First in, first out.
firstfit
The first dump image that will fit on the current tape.
largest
The largest dump image.
largestfit
The largest dump image that will fit on the current tape.
smallest
The smallest dump image.
last
Last in, first out.
labelstr string
Default: ".*". The tape label constraint regular expression. All
tape labels generated (see amlabel(8)) and used by this
configuration must match the regular expression. If multiple
configurations are run from the same tape server host, it is
helpful to set their labels to different strings (for example,
"DAILY[0-9][0-9]*" vs. "ARCHIVE[0-9][0-9]*") to avoid overwriting
each other´s tapes.
tapetype string
Default: no default. The type of tape drive associated with tapedev
or tpchanger. This refers to one of the defined tapetypes in the
config file (see below), which specify various tape parameters,
like the length, filemark size, and speed of the tape media and
device.
ctimeout int
Default: 30 seconds. Maximum amount of time that amcheck will wait
for each client host.
dtimeout int
Default: 1800 seconds. Amount of idle time per disk on a given
client that a dumper running from within amdump will wait before it
fails with a data timeout error.
etimeout int
Default: 300 seconds. Amount of time per estimate on a given client
that the planner step of amdump will wait to get the dump size
estimates (note: Amanda runs up to 3 estimates for each DLE). For
instance, with the default of 300 seconds and four DLE´s, each
estimating level 0 and level 1 on client A, planner will wait up to
40 minutes for that machine. A negative value will be interpreted
as a total amount of time to wait per client instead of per disk.
connect_tries int
Default: 3. How many times the server will try a connection.
req_tries int
Default: 3. How many times the server will resend a REQ packet if
it doesn´t get the ACK packet.
netusage int
Default: 8000 Kbps. The maximum network bandwidth allocated to
Amanda, in Kbytes per second. See also the interface section.
inparallel int
Default: 10. The maximum number of backups that Amanda will attempt
to run in parallel. Amanda will stay within the constraints of
network bandwidth and holding disk space available, so it doesn´t
hurt to set this number a bit high. Some contention can occur with
larger numbers of backups, but this effect is relatively small on
most systems.
displayunit "k|m|g|t"
Default: "k". The unit used to print many numbers, k=kilo, m=mega,
g=giga, t=tera.
dumporder string
Default: "tttTTTTTTT". The priority order of each dumper:
s: smallest size
S: largest size
t: smallest time
T: largest time
b: smallest bandwidth
B: largest bandwidth
maxdumps int
Default: 1. The maximum number of backups from a single host that
Amanda will attempt to run in parallel. See also the inparallel
option.
Note that this parameter may also be set in a specific dumptype
(see below). This value sets the default for all dumptypes so must
appear in amanda.conf before any dumptypes are defined.
bumpsize int
Default: 10 Mbytes. The minimum savings required to trigger an
automatic bump from one incremental level to the next, expressed as
size. If Amanda determines that the next higher backup level will
be this much smaller than the current level, it will do the next
level. The value of this parameter is used only if the parameter
bumppercent is set to 0.
The default unit is Kbytes if it is not specified.
The global setting of this parameter can be overwritten inside of a
dumptype-definition.
See also the options bumppercent, bumpmult and bumpdays.
bumppercent int
Default: 0. The minimum savings required to trigger an automatic
bump from one incremental level to the next, expressed as
percentage of the current size of the DLE (size of current level
0). If Amanda determines that the next higher backup level will be
this much smaller than the current level, it will do the next
level.
If this parameter is set to 0, the value of the parameter bumpsize
is used to trigger bumping.
The global setting of this parameter can be overwritten inside of a
dumptype-definition.
See also the options bumpsize, bumpmult and bumpdays.
bumpmult float
Default: 1.5. The bump size multiplier. Amanda multiplies bumpsize
by this factor for each level. This prevents active filesystems
from bumping too much by making it harder to bump to the next
level. For example, with the default bumpsize and bumpmult set to
2.0, the bump threshold will be 10 Mbytes for level one, 20 Mbytes
for level two, 40 Mbytes for level three, and so on.
The global setting of this parameter can be overwritten inside of a
dumptype-definition.
bumpdays int
Default: 2 days. To insure redundancy in the dumps, Amanda keeps
filesystems at the same incremental level for at least bumpdays
days, even if the other bump threshold criteria are met.
The global setting of this parameter can be overwritten inside of a
dumptype-definition.
diskfile string
Default: "disklist". The file name for the disklist file holding
client hosts, disks and other client dumping information.
infofile string
Default: "/usr/adm/amanda/curinfo". The file or directory name for
the historical information database. If Amanda was configured to
use DBM databases, this is the base file name for them. If it was
configured to use text formated databases (the default), this is
the base directory and within here will be a directory per client,
then a directory per disk, then a text file of data.
logdir string
Default: "/usr/adm/amanda". The directory for the amdump and log
files.
indexdir string
Default "/usr/adm/amanda/index". The directory where index files
(backup image catalogues) are stored. Index files are only
generated for filesystems whose dumptype has the index option
enabled.
tapelist string
Default: "tapelist". The file name for the active tapelist(5).
Amanda maintains this file with information about the active set of
tapes.
device_output_buffer_size int
Default: 1280k. Controls the amount of memory used by Amanda to
hold data as it is read from the network or disk before it is
written to the output device. Higher values may be useful on fast
tape drives and optical media.
The default unit is bytes if it is not specified.
tapebufs int
Default: 20. This option is deprecated; use the
device_output_buffer_size directive instead. tapebufs works the
same way, but the number specified is multiplied by the device
blocksize prior to use.
reserve int
Default: 100. The part of holding-disk space that should be
reserved for incremental backups if no tape is available, expressed
as a percentage of the available holding-disk space (0-100). By
default, when there is no tape to write to, degraded mode
(incremental) backups will be performed to the holding disk. If
full backups should also be allowed in this case, the amount of
holding disk space reserved for incrementals should be lowered.
autoflush bool
Default: off. Whether an amdump run will flush the dumps from
holding disk to tape.
amrecover_do_fsf bool
Default: on. Amrecover will call amrestore with the -f flag for
faster positioning of the tape.
amrecover_check_label bool
Default: on. Amrecover will call amrestore with the -l flag to
check the label.
amrecover_changer string
Default: not set. Amrecover will use the changer if you use
´settape <string>´ and that string is the same as the
amrecover_changer setting.
columnspec string
default:
"HostName=0:12:12,Disk=1:11:11,Level=1:1:1,OrigKB=1:-7:0,OutKB=1:-7:0,Compress=1:-6:1,DumpTime=1:-7:7,Dumprate=1:-6:1,TapeTime=1:-6:6,TapeRate=1:-6:1"
Defines the width of columns amreport should use. String is a
comma (´,´) separated list of triples. Each triple consists of
three parts which are separated by a equal sign (´=´) and a colon
(´:´) (see the example). These four parts specify:
1. the name of the column, which may be:
Compress (compression ratio)
Disk (client disk name)
DumpRate (dump rate in KBytes/sec)
DumpTime (total dump time in hours:minutes)
HostName (client host name)
Level (dump level)
OrigKB (original image size in KBytes)
OutKB (output image size in KBytes)
TapeRate (tape writing rate in KBytes/sec)
TapeTime (total tape time in hours:minutes)
2. the amount of space to display before the column (used to get
whitespace between columns).
3. the width of the column itself. If set to a negative value, the
width will be calculated on demand to fit the largest entry in
this column.
4. the precision of the column, number of digit after the decimal
point for number.
Here is an example:
columnspec "Disk=1:18,HostName=0:10,OrigKB=::2,OutKB=1:7"
The above will display the disk information in 18 characters and
put one space before it. The hostname column will be 10 characters
wide with no space to the left. The Original KBytes print 2 decimal
digit. The output KBytes column is seven characters wide with one
space before it.
includefile string
Default: no default. The name of an Amanda configuration file to
include within the current file. Useful for sharing dumptypes,
tapetypes and interface definitions among several configurations.
Relative pathnames are relative to the configuration directory.
debug_days int
Default: 3. The number of days the debug files are kept.
debug_auth int
Default: 0. Debug level of the auth module
debug_event int
Default: 0. Debug level of the event module
debug_holding int
Default: 0. Debug level of the holdingdisk module
debug_protocol int
Default: 0. Debug level of the protocol module
debug_planner int
Default: 0. Debug level of the planner process
debug_driver int
Default: 0. Debug level of the driver process
debug_dumper int
Default: 0. Debug level of the dumper process
debug_chunker int
Default: 0. Debug level of the chunker process
debug_taper int
Default: 0. Debug level of the taper process
flush-threshold-dumped int
Default: 0. Amanda will not begin writing data to a new volume
until the amount of data on the holding disk is at least this
percentage of the volume size. In other words, Amanda will not
begin until the amount of data on the holding disk is greater than
the tape length times this parameter. This parameter may be larger
than 100%, for example to keep more recent dumps on the holding
disk for faster recovery.
Needless to say, your holding disk must be big enough that this
criterion could be satisfied. If the holding disk cannot be used
for a particular dump (because, for example, there is no remaining
holding space) then Amanda will disregard the constraint specified
by this setting and start a new volume anyway. Once writing to a
volume has begun, this constraint is not applied unless and until a
new volume is needed.
The value of this parameter may not exceed than that of the
flush-threshold-scheduled parameter.
flush-threshold-scheduled int
Default: 0. Amanda will not begin writing data to a new volume
until the sum of the amount of data on the holding disk and the
estimated amount of data remaining to be dumped during this run is
at least this percentage of the volume size. In other words, Amanda
will not begin until the inequality h + s > t × d is satisfied,
where h is the amount of data on the holding disk, s is the total
amount of data scheduled for this run but not dumped yet, t is the
capacity of a volume, and d is this parameter, expressed as a
percentage. This parameter may be larger than 100%.
Needless to say, your holding disk must be big enough that this
criterion could be satisfied. If the holding disk cannot be used
for a particular dump (because, for example, there is no remaining
holding space) then Amanda will disregard the constraint specified
by this setting and start a new volume anyway. Once writing to a
volume has begun, this constraint is not applied unless and until a
new volume is needed.
The value of this parameter may not be less than that of the
flush-threshold-dumped or taperflush parameters.
taperflush int
Default: 0. At the end of a run, Amanda will start a new tape to
flush remaining data if there is more data on the holding disk at
the end of a run than this setting allows; the amount is specified
as a percentage of the capacity of a single volume. In other words,
at the end of a run, Amanda will begin a new tape if the inequality
h > t × f is satisfied, where h is the amount of data remaining on
the holding disk from this or previous runs, t is the capacity of a
volume, and f is this parameter, expressed as a percentage. This
parameter may be greater than 100%.
The value of this parameter may not exceed that of the
flush-threshold-scheduled parameter.; autoflush must be set to
´yes´ if taperflush is greater than 0.
reserved-udp-port int,int
Default: --with-udpportrange or 512,1023. Reserved udp port that
will be used (bsd, bsdudp). Range is inclusive.
reserved-tcp-port int,int
Default: --with-low-tcpportrange or 512,1023. Reserved tcp port
that will be used (bsdtcp). Range is inclusive.
unreserved-tcp-port int,int
Default: --with-tcpportrange or 1024,65535. Unreserved tcp port
that will be used (bsd, bsdudp). Range is inclusive.
HOLDINGDISK SECTION
The amanda.conf file may define one or more holding disks used as
buffers to hold backup images before they are written to tape. The
syntax is:
define holdingdisk name {
holdingdisk-option holdingdisk-value
...
}
The { must appear at the end of a line, and the } on its own line.
Name is a logical name for this holding disk.
The options and values are:
comment string
Default: not set. A comment string describing this holding disk.
directory string
Default: "/dumps/amanda". The path to this holding area.
use int
Default: 0 Gb. Amount of space that can be used in this holding
disk area. If the value is zero, all available space on the file
system is used. If the value is negative, Amanda will use all
available space minus that value.
chunksize int
Default: 1 Gb. Holding disk chunk size. Dumps larger than the
specified size will be stored in multiple holding disk files. The
size of each chunk will not exceed the specified value. However,
even though dump images are split in the holding disk, they are
concatenated as they are written to tape, so each dump image still
corresponds to a single continuous tape section.
The default unit is Kbytes if it is not specified.
If 0 is specified, Amanda will create holding disk chunks as large
as ((INT_MAX/1024)-64) Kbytes.
Each holding disk chunk includes a 32 Kbyte header, so the minimum
chunk size is 64 Kbytes (but that would be really silly).
Operating systems that are limited to a maximum file size of 2
Gbytes actually cannot handle files that large. They must be at
least one byte less than 2 Gbytes. Since Amanda works with 32 Kbyte
blocks, and to handle the final read at the end of the chunk, the
chunk size should be at least 64 Kbytes (2 * 32 Kbytes) smaller
than the maximum file size, e.g. 2047 Mbytes.
DUMPTYPE SECTION
The amanda.conf(5) file may define multiple sets of backup options and
refer to them by name from the disklist(5) file. For instance, one set
of options might be defined for file systems that can benefit from high
compression, another set that does not compress well, another set for
file systems that should always get a full backup and so on.
A set of backup options are entered in a dumptype section, which looks
like this:
define dumptype "name" {
dumptype-option dumptype-value
...
}
The { must appear at the end of a line, and the } on its own line.
Name is the name of this set of backup options. It is referenced from
the disklist(5) file.
Some of the options in a dumptype section are the same as those in the
main part of amanda.conf(5). The main option value is used to set the
default for all dumptype sections. For instance, setting dumpcycle to
50 in the main part of the config file causes all following dumptype
sections to start with that value, but the value may be changed on a
section by section basis. Changes to variables in the main part of the
config file must be done before (earlier in the file) any dumptypes are
defined.
The dumptype options and values are:
auth string
Default: "bsd". Type of authorization to perform between tape
server and backup client hosts. See amanda-auth(7) for more detail.
amandad_path string
Default: "$libexec/amandad". Specify the amandad path of the
client, only use with rsh/ssh authentification.
client_username string
Default: CLIENT_LOGIN. Specify the username to connect on the
client, only use with rsh/ssh authentification.
client_port [ int | string ]
Default: "amanda". Specifies the port to connect to on the client.
It can be a service name or a numeric port number.
bumpsize int
Default: 10 Mbytes. The minimum savings required to trigger an
automatic bump from one incremental level to the next, expressed as
size. If Amanda determines that the next higher backup level will
be this much smaller than the current level, it will do the next
level. The value of this parameter is used only if the parameter
bumppercent is set to 0.
The default unit is Kbytes if it is not specified.
See also the options bumppercent, bumpmult and bumpdays.
bumppercent int
Default: 0. The minimum savings required to trigger an automatic
bump from one incremental level to the next, expressed as
percentage of the current size of the DLE (size of current level
0). If Amanda determines that the next higher backup level will be
this much smaller than the current level, it will do the next
level.
If this parameter is set to 0, the value of the parameter bumpsize
is used to trigger bumping.
See also the options bumpsize, bumpmult and bumpdays.
bumpmult float
Default: 1.5. The bump size multiplier. Amanda multiplies bumpsize
by this factor for each level. This prevents active filesystems
from bumping too much by making it harder to bump to the next
level. For example, with the default bumpsize and bumpmult set to
2.0, the bump threshold will be 10 Mbytes for level one, 20 Mbytes
for level two, 40 Mbytes for level three, and so on.
bumpdays int
Default: 2 days. To insure redundancy in the dumps, Amanda keeps
filesystems at the same incremental level for at least bumpdays
days, even if the other bump threshold criteria are met.
comment string
Default: not set. A comment string describing this set of backup
options.
comprate float [, float ]
Default: 0.50, 0.50. The expected full and incremental compression
factor for dumps. It is only used if Amanda does not have any
history information on compression rates for a filesystem, so
should not usually need to be set. However, it may be useful for
the first time a very large filesystem that compresses very little
is backed up.
compress [ none | client | server ] [ best | fast | custom ]
Default: client fast. If Amanda does compression of the backup
images, it can do so either on the backup client host before it
crosses the network or on the tape server host as it goes from the
network into the holding disk or to tape. Which place to do
compression (if at all) depends on how well the dump image usually
compresses, the speed and load on the client or server, network
capacity, holding disk capacity, availability of tape hardware
compression, etc.
For either type of compression, Amanda also allows the selection of
three styles of compression. best is the best compression
available, often at the expense of CPU overhead. fast is often not
as good a compression as best, but usually less CPU overhead. Or to
specify custom to use your own compression method. (See dumptype
custom-compress in example/amanda.conf for reference)
So the compress options line may be one of:
compress none
compress client fast
compress client best
compress client custom
Specify client_custom_compress "PROG"
PROG must not contain white space and it must accept -d for
uncompress.
compress server fast
compress server best
compress server custom
Specify server_custom_compress "PROG"
PROG must not contain white space and it must accept -d for
uncompress.
Note that some tape devices do compression and this option has
nothing to do with whether that is used. If hardware compression is
used (usually via a particular tape device name or mt option),
Amanda (software) compression should be disabled.
client_custom_compress string
Default: none. The program to use to perform
compression/decompression on the client; used with "compress client
custom". Must not contain whitespace. Must accept -d to uncompress.
server_custom_compress string
Default: none. The program to use to perform
compression/decompression on the server; used with "compress server
custom". Must not contain whitespace. Must accept -d to uncompress.
dumpcycle int
Default: 10 days. The number of days in the backup cycle. Each disk
using this set of options will get a full backup at least this of
ten. Setting this to zero tries to do a full backup each run.
encrypt [ none | client | server ]
Default: not set. To encrypt backup images, it can do so either on
the backup client host before it crosses the network or on the tape
server host as it goes from the network into the holding disk or to
tape.
So the encrypt options line may be one of:
encrypt none
encrypt client
Specify client_encrypt "PROG"
PROG must not contain white space.
Specify client_decrypt_option "decryption-parameter" Default:
"-d"
decryption-parameter must not contain white space.
(See dumptype client-encrypt-nocomp in example/amanda.conf for
reference)
encrypt server
Specify server_encrypt "PROG"
PROG must not contain white space.
Specify server_decrypt_option "decryption-parameter" Default:
"-d"
decryption-parameter must not contain white space.
(See dumptype server-encrypt-fast in example/amanda.conf for
reference)
Note that current logic assumes compression then encryption during
backup(thus decrypt then uncompress during restore). So specifying
client-encryption AND server-compression is not supported. amcrypt
which is a wrapper of aespipe is provided as a reference symmetric
encryption program.
client_encrypt string
Default: none. The program to use to perform encryption/decryption
on the client; used with "encrypt client". Must not contain
whitespace.
client_decrypt_option string
Default: -d. The option that can be passed to client_encrypt to
make it decrypt instead. Must not contain whitespace.
server_encrypt string
Default: none. The program to use to perform encryption/decryption
on the server; used with "encrypt server". Must not contain
whitespace.
server_decrypt_option string
Default: -d. The option that can be passed to server_encrypt to
make it decrypt instead. Must not contain whitespace.
estimate [ client | calcsize | server ]+
Default: client. Determine the way Amanda estimates the size of
each DLE before beginning a backup. This is a list of acceptable
estimate methods, and Amanda applies the first method supported by
the application. The methods are:
client
Use the same program as the dumping program. This is the most
accurate method to do estimates, but it can take a long time.
calcsize
Use a faster program to do estimates, but the result is less
accurate.
server
Use only statistics from the previous few runs to give an
estimate. This very quick, but the result is not accurate if
your disk usage changes from day to day. If this method is
specified, but the server does not have enough data to make an
estimate, then the option is internally moved to the end of the
list, thereby preferring ´client´ or ´calcsize´ in this case.
exclude [ list | file ][[optional][append][ string ]+]
Default: file. Exclude is the opposite of include and specifies
files that will be excluded from the backup. The format of the
exclude expressions depends on the application, and some
applications do not support excluding files at all.
There are two exclude parameters, exclude file and exclude list.
With exclude file, the string is an exclude expression. With
exclude list , the string is a file name on the client containing
GNU-tar exclude expressions. The path to the specified exclude list
file, if present (see description of ´optional´ below), must be
readable by the Amanda user.
All exclude expressions are concatenated in one file and passed to
the application as an --exclude-from argument.
For GNU-tar, exclude expressions must always be specified as
relative to the top-level directory of the DLE, and must start with
"./". See the manpages for individual applications for more
information on supported exclude expressions.
With the append keyword, the string is appended to the current
list, without it, the string overwrites the list.
If optional is specified for exclude list, then amcheck will not
complain if the file doesn´t exist or is not readable.
For exclude list, if the file name is relative, the disk name being
backed up is prepended. So if this is entered:
exclude list ".amanda.excludes"
the actual file used would be /var/.amanda.excludes for a backup of
/var, /usr/local/.amanda.excludes for a backup of /usr/local, and
so on.
holdingdisk [ never | auto | required ]
Default: auto. Whether a holding disk should be used for these
backups or whether they should go directly to tape. If the holding
disk is a portion of another file system that Amanda is backing up,
that file system should refer to a dumptype with holdingdisk set to
never to avoid backing up the holding disk into itself.
never|no|false|off
Never use a holdingdisk, the dump will always go directly to
tape. There will be no dump if you have a tape error.
auto|yes|true|on
Use the holding disk, unless there is a problem with the
holding disk, the dump won´t fit there or the medium doesn´t
require spooling (e.g., VFS device)
required
Always dump to holdingdisk, never directly to tape. There will
be no dump if it doesn´t fit on holdingdisk
ignore boolean
Default: no. Whether disks associated with this backup type should
be backed up or not. This option is useful when the disklist file
is shared among several configurations, some of which should not
back up all the listed file systems.
include [ list | file ][[optional][append][ string ]+]
Default: file ".". There are two include lists, include file and
include list. With include file , the string is a glob expression.
With include list , the string is a file name on the client
containing glob expressions.
All include expressions are expanded by Amanda, concatenated in one
file and passed to GNU-tar as a --files-from argument. They must
start with "./" and contain no other "/".
Include expressions must always be specified as relative to the
head directory of the DLE.
Note
For globbing to work at all, even the limited single level, the
top level directory of the DLE must be readable by the Amanda
user.
With the append keyword, the string is appended to the current
list, without it, the string overwrites the list.
If optional is specified for include list, then amcheck will not
complain if the file doesn´t exist or is not readable.
For include list, If the file name is relative, the disk name being
backed up is prepended.
index boolean
Default: no. Whether an index (catalogue) of the backup should be
generated and saved in indexdir. These catalogues are used by the
amrecover utility.
kencrypt boolean
Default: no. Whether the backup image should be encrypted by
Kerberos as it is sent across the network from the backup client
host to the tape server host.
maxdumps int
Default: 1. The maximum number of backups from a single host that
Amanda will attempt to run in parallel. See also the main section
parameter inparallel.
maxpromoteday int
Default: 10000. The maximum number of day for a promotion, set it 0
if you don´t want promotion, set it to 1 or 2 if your disks get
overpromoted.
priority [ low | medium | high ]
Default: medium. When there is no tape to write to, Amanda will do
incremental backups in priority order to the holding disk. The
priority may be high (2), medium (1), low (0) or a number of your
choice.
program [ "DUMP" | "GNUTAR" | "APPLICATION" ]
Default: "DUMP". The type of backup to perform. Valid values are:
"DUMP"
The native operating system backup program.
"GNUTAR"
To use GNU-tar or to do PC backups using Samba.
"APPLICATION"
To use an application, see the application option.
application string
No default. Must be the name of an application if program is set to
APPLICATION. See APPLICATION SECTION below.
script string
No default. Must be the name of a script. You can have many script.
See SCRIPT SECTION below.
property [append] string string+
These options can set various properties, they can be used by third
party software to store information in the configuration file. Both
strings are quoted; the first string contains the name of the
property to set, and the others contains its values. append
keyword append the values to the list of values for that property.
record boolean
Default: yes. Whether to ask the backup program to update its
database (e.g. /var/lib/dumpdates for DUMP or
/usr/local/var/amanda/gnutar-lists for GNUTAR) of time stamps. This
is normally enabled for daily backups and turned off for periodic
archival runs.
skip-full boolean
Default: no. If true and planner has scheduled a full backup, these
disks will be skipped, and full backups should be run off-line on
these days. It was reported that Amanda only schedules level 1
incrementals in this configuration; this is probably a bug.
skip-incr boolean
Default: no. If true and planner has scheduled an incremental
backup, these disks will be skipped.
ssh_keys string
Default: not set. The key file the ssh auth will use, it must be
the private key. If this parameter is not specified, then the
default ssh key will be used.
starttime int
Default: not set. Backup of these disks will not start until after
this time of day. The value should be hh*100+mm, e.g. 6:30PM
(18:30) would be entered as 1830.
strategy [ standard | nofull | noinc | skip | incronly ]
Default: standard. Strategy to use when planning what level of
backup to run next. Values are:
standard
The standard Amanda schedule.
nofull
Never do full backups, only level 1 incrementals.
noinc
Never do incremental backups, only full dumps.
skip
Treat this DLE as if it doesn´t exist (useful to disable DLEs
when sharing the disklist file between multiple
configurations). Skipped DLEs will not be checked or dumped,
and will not be matched by disklist expressions.
incronly
Only do incremental dumps. amadmin force should be used to
tell Amanda that a full dump has been performed off-line, so
that it resets to level 1.
tape_splitsize int
Default: not set. Split dump file on tape into pieces of a
specified size. This allows dumps to be spread across multiple
tapes, and can potentially make more efficient use of tape space.
Note that if this value is too large (more than half the size of
the average dump being split), substantial tape space can be
wasted. If too small, large dumps will be split into innumerable
tiny dumpfiles, adding to restoration complexity. A good rule of
thumb, usually, is 1/10 of the size of your tape.
The default unit is Kbytes if it is not specified.
split_diskbuffer string
Default: not set. When dumping a split dump in PORT-WRITE mode
(usually meaning "no holding disk"), buffer the split chunks to a
file in the directory specified by this option.
fallback_splitsize int
Default: 10M. When dumping a split dump in PORT-WRITE mode, if no
split_diskbuffer is specified (or if we somehow fail to use our
split_diskbuffer), we must buffer split chunks in memory. This
specifies the maximum size split chunks can be in this scenario,
and thus the maximum amount of memory consumed for in-memory
splitting. The size of this buffer can be changed from its (very
conservative) default to a value reflecting the amount of memory
that each taper process on the dump server may reasonably consume.
The default unit is Kbytes if it is not specified.
The following dumptype entries are predefined by Amanda:
define dumptype "no-compress" {
compress none
}
define dumptype "compress-fast" {
compress client fast
}
define dumptype "compress-best" {
compress client best
}
define dumptype "srvcompress" {
compress server fast
}
define dumptype "bsd-auth" {
auth bsd
}
define dumptype "no-record" {
record no
}
define dumptype "no-hold" {
holdingdisk no
}
define dumptype "no-full" {
skip-full yes
}
In addition to options in a dumptype section, one or more other
dumptype names may be supplied as identifiers, which make this dumptype
inherit options from other previously defined dumptypes. For instance,
two sections might be the same except for the record option:
define dumptype "normal" {
comment "Normal backup, no compression, do indexing"
no-compress
index yes
maxdumps 2
}
define dumptype "testing" {
comment "Test backup, no compression, do indexing, no recording"
"normal"
record no
}
Amanda provides a dumptype named global in the sample amanda.conf file
that all dumptypes should reference. This provides an easy place to
make changes that will affect every dumptype, although you must be
careful that every dumptype explicitly inherits from the global
dumptype - Amanda does not do so automatically.
TAPETYPE SECTION
The amanda.conf file may define multiple types of tape media and
devices. The information is entered in a tapetype section, which looks
like this in the config file:
define tapetype "name" {
tapetype-option tapetype-value
...
}
The { must appear at the end of a line, and the } on its own line.
Name is the name of this type of tape medium/device. It is referenced
from the tapetype option in the main part of the config file.
The tapetype options and values are:
comment string
Default: not set. A comment string describing this set of tape
information.
filemark int
Default: 1 kbytes. How large a file mark (tape mark) is, measured
in kbytes. If the size is only known in some linear measurement
(e.g. inches), convert it to kbytes using the device density.
length int
Default: 2000 kbytes. How much data will fit on a tape, expressed
in kbytes.
Note that this value is only used by Amanda to schedule which
backups will be run. Once the backups start, Amanda will continue
to write to a tape until it gets an error, regardless of what value
is entered for length (but see amanda-devices(7) for exceptions).
blocksize int
Default: 32 kbytes. How much data will be written in each tape
record, expressed in kbytes. This is similar to the BLOCK_SIZE
device property, but if the blocksize is not a multiple of 1024
bytes, then this parameter cannot be used to specify it, and the
property must be used instead.
readblocksize int
Default: 32 kytes How much data will be read in each tape record.
This can be used to override a device´s block size for reads only.
This may be useful, for example, in reading a tape written with a
256k block size when Amanda is configured to use 128k blocks. This
unusual feature is not supported by all operating systems and tape
devices.
The default unit is Kbytes if it is not specified.
speed int
Default: 200 bps. How fast the drive will accept data, in bytes per
second. This parameter is NOT currently used by Amanda.
lbl-templ string
Default: not set. A PostScript template file used by amreport to
generate labels. Several sample files are provided with the Amanda
sources in the example directory. See the amreport(8) man page for
more information.
In addition to options, another tapetype name may be supplie as an
identifier, which makes this tapetype inherit options from another
tapetype. For instance, the only difference between a DLT4000 tape
drive using Compact-III tapes and one using Compact-IV tapes is the
length of the tape. So they could be entered as:
define tapetype "DLT4000-III" {
comment "DLT4000 tape drives with Compact-III tapes"
length 12500 mbytes # 10 Gig tapes with some compression
filemark 2000 kbytes
speed 1536 kps
}
define tapetype "DLT4000-IV" {
"DLT4000-III"
comment "DLT4000 tape drives with Compact-IV tapes"
length 25000 mbytes # 20 Gig tapes with some compression
}
INTERFACE SECTION
The amanda.conf file may define multiple types of network interfaces.
The information is entered in an interface section, which looks like
this:
define interface "name" {
interface-option interface-value
...
}
The { must appear at the end of a line, and the } on its own line.
name is the name of this type of network interface. It is referenced
from the disklist file.
Note that these sections define network interface characteristics, not
the actual interface that will be used. Nor do they impose limits on
the bandwidth that will actually be taken up by Amanda. Amanda computes
the estimated bandwidth each file system backup will take based on the
estimated size and time, then compares that plus any other running
backups with the limit as another of the criteria when deciding whether
to start the backup. Once a backup starts, Amanda will use as much of
the network as it can leaving throttling up to the operating system and
network hardware.
The interface options and values are:
comment string
Default: not set. A comment string describing this set of network
information.
use int
Default: 8000 Kbps. The speed of the interface in Kbytes per
second.
In addition to options, another interface name may be supplied as an
identifier, which makes this interface inherit options from another
interface. At the moment, this is of little use.
APPLICATION SECTION
The amanda.conf file may define multiple types of application. The
information is entered in a application section, which looks like this:
define application "name" {
application-option application-value
...
}
The { must appear at the end of a line, and the } on its own line.
name is the name of this type of application. It is referenced from the
dumptype
The application options and values are:
comment string
Default: not set. A comment string describing this application.
plugin string
No default. Must be set to the name of the program. This program
must be in the $libexecdir/amanda/application directory on the
client.
property [append] [priority] string string+
No default. You can set property for the application, each
application have a different set of property. Both strings are
quoted; the first string contains the name of the property to set,
and the others contains its values. append keyword append the
values to the list of values for that property. priority keyword
disallow the setting of that property on the client.
SCRIPT SECTION
The amanda.conf file may define multiple types of script. The
information is entered in a script section, which looks like this:
define script "name" {
script-option script-value
...
}
The { must appear at the end of a line, and the } on its own line.
name is the name of this type of script. It is referenced from the
dumptype
The script options and values are:
comment string
Default: not set. A comment string describing this script.
plugin string
No default. Must be set to the name of the program. This program
must be in the $libexecdir/amanda/application directory on the
client and/or server.
order int
Default: 5000. Scripts are executed in that order, it is useful if
you have many scripts and they must be executed in a spefific
order.
execute_where [ client | server ]
Default: client. Where the script must be executed, on the client
or server.
>execute_on execute_on [,execute_on]*
No default. When the script must be executed, you can specify many
of them:
pre-dle-amcheck
Execute before the amcheck command for the dle.
pre-host-amcheck
Execute before the amcheck command for all dle for the client.
post-dle-amcheck
Execute after the amcheck command for the dle.
post-host-amcheck
Execute after the amcheck command for all dle for the client.
pre-dle-estimate
Execute before the estimate command for the dle.
pre-host-estimate
Execute before the estimate command for all dle for the client.
post-dle-estimate
Execute after the estimate command for the dle.
post-host-estimate
Execute after the estimate command for all dle for the client.
pre-dle-backup
Execute before the backup command for the dle.
pre-host-backup
Execute before the backup command for all dle for the client.
It can´t be run on client, it must be run on server
post-dle-backup
Execute after the backup command for the dle.
post-host-backup
Execute after the backup command for all dle for the client. It
can´t be run on client, it must be run on server
pre-recover
Execute before any level is recovered.
post-recover
Execute after all levels are recovered.
pre-level-recover
Execute before each level recovery.
post-level-recover
Execute after each level recovery.
inter-level-recover
Execute between two levels of recovery.
If you recover level 0 and 2 of the disk /usr with amrecover, it
will execute:
script --pre-recover
script --pre-level-recover --level 0
#recovering level 0
script --post-level-recover --level 0
script --inter-level-recover --level 0 --level 2
script --pre-level-recover --level 2
#recovering level 2
script --post-level-recover --level 2
script --post-recover
property> [append] [priority] string string+
No default. You can set property for the script, each script have a
different set of property. Both strings are quoted; the first
string contains the name of the property to set, and the others
contains its values. append keyword append the values to the list
of values for that property. priority keyword disallow the setting
of that property on the client.
DEVICE SECTION
Backend storage devices are specified in amanda.conf in the form of
"device" sections, which look like this:
define device name {
commend "comment (optional)"
tapedev "device-specifier"
device_property "prop-name" "prop-value"
...
}
The { must appear at the end of a line, and the } on its own line.
name is the user-specified name of this device. It is referenced from
the global tapedev parameter. The device-specifier specifies the device
name to use; see amanda-devices(7). As with most sections, the comment
parmeter is optional and only for the user´s convenience.
An arbitrary number of device_property parameters can be specified.
Again, see amanda-devices(7) for information on device properties.
CHANGER SECTION
Changers are described in amanda.conf in the form of "changer"
sections, which look like this:
define changer name {
comment "comment (optional)"
tpchanger "changer-spec"
changerdev "device-name"
changerfile "state-file"
...
}
The { must appear at the end of a line, and the } on its own line.
name is the user-specified name of this device. The remaining
parameters are specific to the changer type selected.
See amanda-changers(7) for more information on configuring changers.
SEE ALSO
amanda(8), amanda-client.conf(5), amanda-applications(7), amanda-
auth(7), amanda-changers(7), amanda-devices(7), amanda-scripts(7)
The Amanda Wiki: : http://wiki.zmanda.com/
AUTHORS
James da Silva <jds@amanda.org>
Stefan G. Weichinger <sgw@amanda.org>