AMANDA-CHANGERS(7) Miscellanea AMANDA-CHANGERS(7)

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 LABEL0

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)

Amanda 2.6.1p2 11/05/2009 AMANDA-CHANGERS(7)