1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
5 <title>SCSI Media Changer and Backup Device Control System</title>
11 <h1>SCSI Media Changer and Backup Device Control System</h1>
14 [Also see the SourceForge <a href="http://sourceforge.net/projects/mtx">
17 <i>mtx</i> is a set of low level driver programs to control features
18 of SCSI backup related devices such as autoloaders, tape changers,
19 media jukeboxes, and tape drives. It can also report much data,
20 including serial numbers, maximum block sizes, and TapeAlert(tm)
21 messages that most modern tape drives implement (to tell you the exact
22 reason why a backup or restore failed), as well as do raw SCSI READ
23 and WRITE commands to tape drives (not important on Linux, but
24 important on Solaris due to the fact that the Solaris tape driver
25 supports none of the additional features of tape drives invented after
26 1988). <i>mtx</i> is designed to be a low level driver in a larger
27 scripted backup solution, such as <a
28 href="http://amanda.sourceforge.net">Amanda</a>.
30 supposed to itself be a high level interface to the SCSI devices that
33 This version has the following features:
36 <li> Will deal with LARGE media libraries (over a hundred elements).
37 <li> Supports multi-drive media changers such as the Exabyte 220 dual-
39 <li> Supports the 'invert' bit for optical jukeboxes that need that in
40 order to flip their media.
41 <li> Supports the 'eepos' bits for libraries that need this to extend/retract
42 their import/export tray.
43 <li> Now supports import/export elements!
44 <li> Reports volume tags (bar codes) and "alternate volume tags"
45 (whatever those are!) for those tape libraries
47 <li> Now runs under FreeBSD and at least Solaris 8.
49 <li> Now has a 'man' page!
50 <li> The actual SCSI manipulation has been separated out into a library, so
51 that you can create your own "C" programs that manipulate SCSI media changers
52 directly. (Please note: this is under GPL, so any such programs will have
53 to be under GPL also).
57 This program supposedly supports FreeBSD, Solaris, Linux, HP/UX, and
58 IRIX. Tru64 Unix and VMS are probably irretrievably broken at this
59 time. This program has been tested under FreeBSD, Solaris, and Linux,
60 and there only with a limited set of hardware. See the COMPATIBILITY
61 list in the source code.
63 <h2> Source Code </h2>
64 The current source code is:
66 <li> <a href="http://mtx.sourceforge.net/mtx-1.2.13.tar.gz">http://mtx.sourceforge.net/mtx-1.2.13.tar.gz</a>
68 RPMs may be available from the following place:
70 <li> <a href="http://rpmfind.net/linux/RPM/mtx.html">RPMfind's 'mtx' page</a>
72 A .spec file is now included in the 'mtx' distribution for building your
76 are courtesy of <a href="http://www.sewingwitch.com/ken/">Kenneth Porter</a>,
77 who should be contacted regarding rpm-related problems.
80 <h2> Known Bugs And Limitations </h2>
83 You may need to do a 'mt offline' (or equivalent for your OS)
85 eject the tape before you can issue the 'mtx unload' command.
86 The Exabyte EZ-17 and 220 in particular will happily
87 sit there snapping the robot arm's claws around thin air
88 trying to grab a tape that's not there.
90 The 'next' command does not understand the 'invert' bit (i.e., does not
91 recognize that for optical jukeboxes, the 'next' of side one is to unload,
92 invert, and reload the same disk). It always advances to the next
95 For some Linux distributions, you may need to re-compile
96 the kernel to scan SCSI LUN's in order to detect the media
97 changer. Check /proc/scsi/scsi to see what's going on.
100 If you try to unload a tape to its 'source' slot, and said
101 slot is full, it will instead put the tape into the first
102 empty slot. Unfortunately the list of empty slots is not
103 updated between commands on the command line, so if you
104 try to unload another drive to a full 'source' slot during
105 the same invocation of 'mtx', it will try to unload to the
106 same (no longer empty) slot and will urp with a SCSI
109 <li> For big tape libraries (more than a couple dozen elements) this
110 may set a big Allocation_Size in the SCSI command block for the
111 REQUEST_ELEMENT_STATUS command. Some operating systems may not be able
112 to handle this. Versions of Linux earlier than 2.2.6, in particular,
113 may fail this request due to inability to find contiguous pages of
114 memory for the SCSI transfer (later versions of Linux 'sg' device do
115 scatter-gather so that this should no longer be a problem).
117 <li> VMS and Tru64 support are probably irretrievably busted.
120 <li> This program will only use the first arm of multiple-arm robots unless
121 the robot re-maps all arms to one element ID.
123 <li> It has been reported that this program works on Solaris 7 using the 'sst'
124 driver, and may work on Solaris 8 using the 'sgen' driver. 'sst' can
125 be gotten from the Amanda contrib directory at
126 <a href="http://download.sourceforge.net/amanda/">http://download.sourceforge.net/amanda</a>.
130 <h2> Philosophy </h2>
131 The Unix philosophy is "many small tools chained together". <i>mtx</i> supplies
132 those small tools so that you can create your own backup and
133 recovery tools by chaining
134 <i>mtx</i> pieces together, whether it be with /bin/sh, Perl, Python, or
140 <li>There is now a 'mtx' mailing list at <a href="http://sourceforge.net/projects/mtx/">http://sourceforge.net/projects/mtx/</a>.
141 <li>There is now a 'mtx' home page at <a href="http://mtx.sourceforge.net">http://mtx.sourceforge.net</a>.
142 <li> There is now a FAQ that is part of the source code. Please read the
144 <li>Report problems to Eric Lee Green (<a
145 href="mailto:eric@badtux.org">eric@badtux.org</a>). READ THE FAQ FIRST!
150 <li>The man page for 'mtx'! (once you get it installed).
151 <li>T-10 SCSI Working Group home page at <a href="http://www.t10.org">www.t10.org</a>.
152 <li>The Linux 'sg' SCSI generic driver home page at <a href="http://www.torque.net/sg/">http://www.torque.net/sg/</a>.
153 <li> <a href="http://badtux.org/eric">The Home Page Of <UL> Tags Anonymous</a> Hi, my name is Eric, and I am addicted to the <UL> tag...
156 <address>Maintained by <a href="mailto:eric@badtux.org">Eric Lee Green</a><br>
157 Hosted by <a href="http://www.valinux.com">VA Linux</a>'s <a href="http://www.sourceforge.net">SourceForge</a></address><br>
160 <!-- Created: Fri Mar 3 12:19:38 MST 2000 -->
162 Last modified: Mon Jun 25 15:37:22 MST 2001