amanda-changers(7) - Linux man page
Name
amanda-changers - Configuring and Using Amanda Changers
Description
Amanda uses changers to arbitrate access to devices (amanda-devices(7)) and data volumes. Changers provide an abstraction of tape robots, but are used to manage non-tape media, too. Amanda communicates with changers through the Changer API. This manpage contains a user-level overview of the API, and does not address details that are only of concern to developers. For that purpose, consult the Amanda source code and http://wiki.zmanda.com.
Transition
The Amanda Changer API is in transition from version 1.0 - driven by shell scripts invoked for each changer operation - to version 2.0, composed of perl objects that can manage parallel access to multiple devices and other complexity. When this transition is complete, Amanda devices will, in general, be specified via a changer, which will provide the necessary device specifier to access a requested volume. In the interim, support for the "new" changer syntax is limited to the experimental amvault(8).
Specifying Changers
Changer specifications are strings like chg-disk:/my/vtapes. The chg- prefix serves to differentiate changers from devices (see amanda-devices(7)). The next portion (disk, in this case) identifies the particular changer driver to use, and everything that follows the : is interpreted by the driver.
A name which does not match this pattern, but which matches an old changer script (e.g., chg-zd-mtx), invokes the backward-compatibility changer driver as chg-compat:chg-zd-mtx. If the name does not match an old changer, then it is treated as an Amanda device, and is wrapped by the single-device changer, e.g., chg-single:tape:/dev/rmt/0.
Changers which require additional parameters can also be described in amanda.conf(5) with "changer" sections, for example,
define changer hp-robot {
tapedev "chg-robot:/dev/sg1"
property "drives" "0=/dev/nst0;1=/dev/nst0"
property "slots" "1-10"
}(note that "chg-robot" is not yet implemented, so this is hypothetical). A changer defininition creates a changer "alias", in this case named
hp-robot, which can then be named where an application expects a changer - for example, the target of the amvault command.
Changer Drivers
This section lists the changer drivers included with Amanda, and basic instructions for using them. For complete How-To information, consult the Amanda wiki at http://wiki.zmanda.com.
chg-disk (new)
-
tpchanger "chg-disk:/u01/vtapes"
This changer driver replaces the old chg-disk, supporting parallel access to vtapes stored in directories named slotN in the directory specified after chg-disk:. It does so by creating numbered "drives" so that simultaneous processes can access distinct slots.
chg-disk (old)
-
tapedev "file:/u01/vtapes" tpchanger "chg-disk"
This changer script supports sequential access to vtapes stored in directories named slotN in the directory specified by the tapedev parameter.
chg-multi
-
tpchanger "chg-multi" changerfile "chg-multi-state"
This script simply round-robins a number of distinct device names, as specified in its configuration file. It is useful when all volumes for a configuration have different device names -- for example, with S3 devices. The changerfile need not exist; it is used as a prefix for filenames of state files.
chg-manual
-
tpchanger "chg-manual" changerfile "chg-manual.conf"
This script simply provides distinct device names in a round-robin fashion, as specified in its configuration file. It is useful when all volumes for a configuration have different device names -- for example, with S3 devices. The configuration file parameters are (as listed in the script):resend_mail=900 # resend mail every __ seconds timeout_mail=604800 # time out after this many seconds (default 7 days) request="[type]" # How to request a new tape (default "tty_email") request="tty" # Use the tty to ask the user to change tape. # Can't be use by cron request="email" # Send an email to ask the user to change tape. request="tty_email" # Use the tty if it exist or send an email.
chg-zd-mtx
-
tpchanger "chg-zd-mtx" changerdev "/dev/sg0" # used with 'mtx -f' changerfile "chg-zd-mtx.conf" tapedev "tape:/dev/nst0"
This script interfaces with a tape drive using the Zubkoff/Dandelion version of mtx. That's the version that takes a device specifier with the -f option and has subcommands like status. The configuration file parameters are (as listed in the script itself):firstslot=? #### First storage slot (element) lastslot=? #### Last storage slot (element) cleanslot=-1 #### Slot with cleaner tape -- default is "-1" #### Set negative to indicate no cleaner available driveslot=0 #### Drive slot number. Defaults to 0 #### Use the 'Data Transfer Element' you want autoclean=0 #### Set to '1' or greater to enable autocleancount=99 #### Number of access before a clean. havereader=0 #### If you have a barcode reader, set to 1. offline_before_unload=0 #### Does your robot require an #### 'mt offline' before mtx unload? poll_drive_ready=NN #### Time (seconds) between tests to see if #### the tape drive has gone ready (default: 3). max_drive_wait=NN #### Maximum time (seconds) to wait for the #### tape drive to become ready (default: 120). initial_poll_delay=NN #### initial delay after load before polling for #### readiness slotinfofile=FILENAME #### record slot information to this file, in #### the line-based format "SLOT LABEL\n"
chg-rait
-
tpchanger "chg-rait" changerfile "chg-rait.conf"
This changer script constructs RAIT devices out of the devices provided by several "sub-changers". The configuration file specifies nchangers, the number of subchangers, and then provides tpchanger, changerdev_N, changerfile_N, and tpchanger_N for each sub-changer, 1 through N.
chg-null
-
tpchanger "chg-null"
This changer always provides the device "null:". It is sometimes useful in conjunction with chg-rait.
Unmaintained Changers
- Amanda has many other changer scripts and programs beyond those described here (see the changer-src/ in the source directory), but most of these scripts are unmaintained and undocumented, and will be removed when the new changer API is fully implemented.
See Also
amanda(8), amanda.conf(5), amanda-devices(7),
Author
Dustin J. Mitchell <dustin@zmanda.com>
- Zmanda, Inc. (http://www.zmanda.com)