# |- ...
# |- slotn
# where 'slot_root_dir' is the tapedev 'file:xxx' parameter and 'n'
-# is the tapecycle parameter.
-#
+# is the LASTSLOT value of your changerfile config file. If LASTSLOT is
+# not defined, the value of the tapecycle parameter is used.
+#
# To use this driver, just put the line 'tpchanger "chg-disk"' in your
# amanda.conf.
#
-# Example of use:
+# Example of use (amanda.conf):
# --- cut here ---
# tapedev "file:/BACKUP2/slots/"
# rawtapedev "file:/BACKUP2/slots/"
# changerdev "/dev/null"
+# changerfile "chg-disk"
# tpchanger "chg-disk"
# changerfile "/usr/local/amanda/etc/changer"
# tapetype HARD-DISK
# }
# --- cut here ---
#
-# The number of slot is equal to your tapecyle.
+# Example changerfile (chg-disk.conf):
+# --- cut here ---
+# LASTSLOT=12
+# --- cut here ---
+#
+# The number of slot is equal to your LASTSLOT or tapecycle.
# You must create the slots and data directory.
#
MYNAME=$0
TAPE=`amgetconf$SUF tapedev`
+if test X"$TAPE" == X""; then
+ echo "<none> tapedev not specified in amanda.conf." 1>&2
+ exit 2
+fi
SLOTDIR=`echo $TAPE | sed 's/^file://'`
isinteger() {
# need rwx access to directory of changer file
CHANGERFILE=`amgetconf$SUF changerfile`
+conf_match=`expr "$CHANGERFILE" : .\*\.conf\$`
+if [ $conf_match -ge 6 ]; then
+ CONFIGFILE=$CHANGERFILE
+ CHANGERFILE=`echo $CHANGERFILE | sed 's/.conf$//g'`
+else
+ CONFIGFILE=$CHANGERFILE.conf
+fi
+
CFDir=`dirname ${CHANGERFILE}`
[ -d ${CFDir} -a -r ${CFDir} -a -w ${CFDir} -a -x ${CFDir} ] ||
{ echo "$MYNAME: need 'rwx' access to '$CFDir'" 1>&2 ; exit 2 ; }
FIRSTSLOT=1
LASTSLOT=`amgetconf$SUF tapecycle`
+if test -r $CONFIGFILE; then
+ . $CONFIGFILE
+fi
CURSLOT=0
CLEANSLOT=$LASTSLOT
NSLOT=`expr $LASTSLOT - $FIRSTSLOT + 1`