In general, these algorithms will only select reusable volumes. These are volumes which are listed in the
tapelist(5) with the reuse flag, and which are not among the tapecycle-1 most recent volumes in the list.
Put another way, reusable volumes do not contain data that must be retained. Note that if fewer than
tapecycle-1 volumes have been written then there are no reusable volumes. Newly labeled volumes (volumes
that have been labeled with amlabel but never used) are considered reusable.
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.
traditional
This algorithm duplicates Amanda's historical behavior, and it operates in two stages.
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.
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 autolabel includes empty, a
blank volume. Even across multiple invocations (when runtapes>1), it will not return the same slot
twice.
Note
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 chg-multi, chg-disk and, if havereader=0, chg-zd-mtx), 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
oldest
This algorithm works with the Changer API (see amanda-changers(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.
An acceptable volume is a reusable volume, a new labeled volume or an unlabeled volume that can be
labeled according to autolabel. 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.
Use amtapeCONFinventory to see the changer's inventory, and use amtapeCONFupdate to update it.
lexical
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.
It scans unknown slots only if no usable volume is found in the inventory.
See oldest, above, for a definition of acceptable volumes.