Merge branch 'master' into squeeze
[debian/amanda] / man / amanda-taperscan.7
diff --git a/man/amanda-taperscan.7 b/man/amanda-taperscan.7
new file mode 100644 (file)
index 0000000..e380148
--- /dev/null
@@ -0,0 +1,160 @@
+'\" t
+.\"     Title: amanda-taperscan
+.\"    Author: Dustin J. Mitchell <dustin@zmanda.com>
+.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
+.\"      Date: 02/21/2012
+.\"    Manual: Miscellanea
+.\"    Source: Amanda 3.3.1
+.\"  Language: English
+.\"
+.TH "AMANDA\-TAPERSCAN" "7" "02/21/2012" "Amanda 3\&.3\&.1" "Miscellanea"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+amanda-taperscan \- Amanda Taperscan Algorithms
+.SH "DESCRIPTION"
+.PP
+Amanda uses a
+\fItaperscan algorithm\fR
+to select volumes on which to store dumps\&. Historically Amanda has provided only one, fairly complex taperscan algorithm, but this algorithm did not suit the needs of all users\&. Now Amanda offers a wide array of algorithms to suit varied needs\&. Adding new algorithms is not difficult\&.
+.PP
+The taperscan algorithm is specified with the
+\fBtaperscan\fR
+parameter, which has a default value of
+\fBtraditional\fR\&.
+.PP
+Taperscan algorithms are implemented as perl packages with the prefix
+Amanda::Taper::Scan::\&. See the perl documentation for
+Amanda::Taper::Scan
+for more information\&.
+.SH "DEFINING A TAPERSCAN"
+.PP
+An taperscan is defined in
+\fBamanda.conf\fR(5)
+as follows:
+.sp
+.nf
+define taperscan $taperscan_name {
+   comment "$comment"
+   plugin "$pluginname"
+   property "$PROPERTY_NAME" "$PROPERTY_VALUE"
+   \&.\&.\&.
+}
+.fi
+and then referenced in the global section as
+.sp
+.nf
+  taperscan "$taperscan_name"
+.fi
+.PP
+Taperscan properties, like Amanda configuration parameters, are insensitive to case, and
+\-
+(dash) and
+_
+(underscore) may be used interchangeably\&.
+.PP
+See the individual plugin documentation below for properties applicable to each plugin\&.
+.SH "TAPERSCAN ALGORITHMS"
+.PP
+In general, these algorithms will only select reusable volumes\&. These are volumes which are listed in the
+\fBtapelist\fR(5)
+with the
+\fIreuse\fR
+flag, and which are not among the
+\fItapecycle\-1\fR
+most recent volumes in the list\&. Put another way, reusable volumes do not contain data that must be retained\&. Note that if fewer than
+\fItapecycle\-1\fR
+volumes have been written then there are no reusable volumes\&. Newly labeled volumes (volumes that have been labeled with
+\fBamlabel\fR
+but never used) are considered reusable\&.
+.PP
+Many of these algorithms look for the oldest reusable volume\&. In most cases, this is the best volume to overwrite, as the data it contains is older than that on any other volume\&. If there are no reusable volumes, then there is no oldest reusable volume\&.
+.SS "traditional"
+.PP
+This algorithm duplicates Amanda\*(Aqs historical behavior, and it operates in two stages\&.
+.PP
+First, if there is an oldest reusable volume and if the changer supports "fast" searches, then the algorithm uses the changer to search for that volume\&. Newly labeled volumes are not considered when calculating the oldest reusable volume\&. Consequently, this taperscan algorithm prefers volumes which have been used before to newly\-labeled volumes when a fast\-searchable changer is in use\&.
+.PP
+Second, if there is no oldest reusable volume, or if that volume is not available in the changer, then the algorithm begins a sequential scan of the changer, starting at the current slot\&. It selects the first suitable volume it finds: a reusable volume (perhaps newly\-labeled) or, if
+\fBautolabel\fR
+includes
+\fBempty\fR, a blank volume\&. Even across multiple invocations (when
+\fIruntapes > 1\fR), it will not return the same slot twice\&.
+.if n \{\
+.sp
+.\}
+.RS 4
+.it 1 an-trap
+.nr an-no-space-flag 1
+.nr an-break-flag 1
+.br
+.ps +1
+\fBNote\fR
+.ps -1
+.br
+This algorithm shows an undue preference for volumes already containing
+data, by omitting newly\-labeled volumes from its first stage\&.  Historically,
+many Amanda changer scripts were not fast\-searchable (including
+\fIchg\-multi\fR, \fIchg\-disk\fR and, if
+\fIhavereader=0\fR, \fIchg\-zd\-mtx\fR), and thus
+skipped the first stage, allowing new volumes to find their way into the tape
+cycle\&.  New changers are almost all fast\-searchable, so both stages of the
+algorithm are used and new tapes may be unexpectedly excluded\&.  If this causes
+an undesirable change in behavior, consider one of the other taperscan
+algorithms\&..sp .5v
+.RE
+.SS "oldest"
+.PP
+This algorithm works with the Changer API (see
+\fBamanda-changers\fR(7)), using the inventory returned by the changer to locate the oldest acceptable volume available\&. Note that this will not work with changers that do not support inventory (old changers)\&. The algorithms scans unknown slots only if no known usable volume is found in the inventory\&.
+.PP
+An acceptable volume is a reusable volume, a new labeled volume or an unlabeled volume that can be labeled according to
+\fBautolabel\fR\&. Note that changers do not always know the contents of every slot \- for example, a tape with an unknown barcode will not be considered usable\&.
+.PP
+Use
+\fBamtape CONF inventory\fR
+to see the changer\*(Aqs inventory, and use
+\fBamtape CONF update\fR
+to update it\&.
+.SS "lexical"
+.PP
+This algorithm also works with the Changer API, using the inventory to determine the acceptable volumes; it then uses the volume which follows the last\-used volume in lexical order\&. For volume labels containing leading zeros, e\&.g\&.,
+CORP\-010, this algorithm will run through the volumes in the natural order\&.
+.PP
+It scans unknown slots only if no usable volume is found in the inventory\&.
+.PP
+See
+\fBoldest\fR, above, for a definition of acceptable volumes\&.
+.SH "SEE ALSO"
+.PP
+\fBamanda\fR(8),
+\fBamanda.conf\fR(5),
+\fBtapelist\fR(5),
+\fBamanda-changers\fR(7),
+\fBamanda-interactivity\fR(7)
+.PP
+The Amanda Wiki:
+: http://wiki.zmanda.com/
+.SH "AUTHOR"
+.PP
+\fBDustin J\&. Mitchell\fR <\&dustin@zmanda\&.com\&>
+.RS 4
+Zmanda, Inc\&. (http://www\&.zmanda\&.com)
+.RE