9.3 Installing and Configuring a Tape Drive

External tape drives are "installed" simply by connecting them to the parallel, SCSI, USB, or FireWire port, as appropriate, and connecting power, although you may have to set jumpers to configure a SCSI drive for the proper SCSI ID and termination. Internal tape drives are 3.5- or 5.25-inch half-height devices, and require the same physical installation steps as any other externally accessible drive. The exact configuration steps required differ between ATAPI and SCSI interfaces, as described in the following sections.

Some tape drive manufacturers, including Seagate, recommend installing the backup software before installing the tape drive. But do not run the backup software before the drive is installed and recognized by the computer and operating system, or you may find that you need to reinstall the backup software in order for it to recognize the drive. Microsoft Backup has burned us this way more than once. Conversely, some tape backup software?typically that bundled with a tape drive?refuses to install unless a tape drive that it supports is already installed. Read the manual for the tape drive and the backup software before you begin the installation.

9.3.1 Installing and Configuring an ATAPI Tape Drive

ATAPI tape drives are physically installed and configured just like any other ATAPI/IDE device: set the drive's Master/Slave jumper; secure the drive in an available drive bay using four screws; connect the data cable, aligning Pin 1 on the drive connector with the colored stripe on the cable; and connect the power cable. Note the following issues when installing an ATAPI tape drive:

  • Installing a tape drive on the same IDE channel as a hard disk risks data corruption. If the system has one hard disk, install it as the Primary Master and the tape drive on the Secondary channel. If the system has two hard disks, install both on the Primary channel, and install the tape drive on the Secondary channel. Do not install three ATA hard disks in a system with an ATAPI tape drive. If the system has an ATAPI CD-ROM drive, make that drive Secondary Master and the tape drive Secondary Slave. If the system has no ATAPI CD-ROM drive, make the tape drive Secondary Master.

  • Some tape drives have configuration jumpers to enable such things as hardware compression, read-while-write, DMA/PIO mode, and emulation mode. If your drive has one or more of these jumpers, set them as follows:

    Hardware compression

    Ordinarily, enable this option to allow the drive itself to compress the data stream before recording it to tape, but note that software compression is sometimes more efficient than hardware compression. If you enable hardware compression, disable compression in your backup utility. Leaving both enabled results in "churning" that can actually increase the size of the data being written to tape. Some backup utilities have a configuration checkbox that allows you to select hardware compression. We've never been entirely sure of the purpose of this checkbox because hardware compression is (or should be) transparent to the backup application, but if your backup utility has such a checkbox, it's probably a good idea to mark it if you enable hardware compression on the drive.

    Although different drive models from a particular manufacturer may supposedly use compatible hardware compression, any tape made with hardware compression enabled may be unreadable except in the drive that wrote it. There is no guarantee that you will be able to read a hardware-compressed tape made on one drive with any other drive. Something as subtle as a minor difference in firmware revision may prevent reading a compressed tape even in a seemingly identical drive.

    Read-while-write

    If your drive has a jumper to enable read-while-write, doing so allows the drive to use its separate read head to read and verify data immediately after it is written, avoiding the need for a time-consuming second compare pass. Not all backup software supports this function. If your backup software does support it, you may need to enable support for it within the backup program.

    DMA/PIO mode

    DMA mode increases throughput and reduces CPU utilization, but not all tape drives can operate in DMA mode. If your drive is DMA-capable, it may have a jumper to configure the drive for DMA mode versus PIO mode. In general, if the tape drive is the only device on the ATA channel, or if the other device on that channel is also DMA-capable, enable DMA mode for the tape drive and enable DMA support for that channel in the operating system. If the tape drive shares the channel with a PIO-only device (e.g., an older CD-ROM drive), disable DMA mode for the tape drive or (better) replace the other device with a DMA-capable device.

    Emulation mode

    Some tape drives can emulate other drives via a jumper setting that causes the drive to return incorrect identification data to the operating system. For example, we have an old Tecmar Travan NS20 tape drive that was jumpered by default to identify itself as a Wangtek Model 51000. Removing this jumper causes the drive to identify itself as a Tecmar Travan NS20. Using emulation allows a new drive model to be used with older software that does not support the new model. Set this jumper, if present, according to the manufacturer's instructions.

  • Recent BIOSes allow setting boot sequence to first attempt booting from a CD-ROM drive. What this actually tells the system is to boot from the first ATAPI device. If an ATAPI tape drive is configured as Master (even on the Secondary channel), a system so configured may attempt to boot from the tape drive, which causes the system to hang. You can avoid this problem by setting the CD-ROM drive to Secondary Master and the tape drive to Secondary Slave. This problem may also occur if the tape drive is the only device on the Secondary channel, whether it is configured as Master or Slave. If you cannot correct the configuration or disable CD-ROM boot in BIOS, boot the system with no tape in the drive.

9.3.2 Installing and Configuring a SCSI Tape Drive

Installing and configuring a SCSI tape drive is a bit more complicated than installing an ATAPI model. Rather than attempting to provide step-by-step instructions, which vary according to the specific drive and adapter, we've chosen to illustrate a typical installation using a Seagate Hornet NS20 drive and an Adaptec 2930 SCSI host adapter, both representative selections.

  • If you have not already done so, install the SCSI host adapter. To do so, power down the system, remove the cover, and locate an available bus-mastering PCI slot. (Some older systems don't support bus mastering on all slots. Bus-mastering slots are usually white or ivory; non-bus-mastering slots are brown or black.) Remove the slot cover for the selected slot, align the bus connector with the slot, and press down firmly to seat the adapter. Use the screw that secured the slot cover to secure the adapter. If you have a spare drive activity indicator LED, connect it to J2 on the host adapter to indicate SCSI bus activity.

  • The Adaptec host adapter supports SCAM (SCSI Configured Auto-Magically)?a kind of Plug and Play for SCSI that automatically configures SCSI ID and termination. (SCAM is described in Section 10.4). Like most tape drives, the Seagate Travan NS20 does not support SCAM, so we'll have to set jumpers manually to assign SCSI ID and set termination.

    Like most manually configured SCSI devices, the Seagate Travan NS20 drive has three jumpers?ID0 (SCSI ID 1), ID1 (SCSI ID 2), and ID2 (SCSI ID 4). Installing jumper blocks on zero or more of these jumpers allows you to set SCSI IDs 0 through 7. Connecting no jumpers assigns SCSI ID 0. Connecting one jumper assigns the SCSI ID associated with that jumper (e.g., ID1 assigns SCSI ID 2). Connecting two jumpers assigns the SCSI ID that is the sum of the two jumpers (e.g., ID0 and ID2 sums the SCSI IDs 1 and 4 to assign the SCSI ID 5). Connecting all three jumpers assigns SCSI ID 7. Like most SCSI tape drives that require the SCSI ID to be assigned manually, the Seagate Travan NS20 drive by default is jumpered to SCSI ID 4, which is usually not in use by other devices.

    Avoid setting a tape drive to SCSI ID 0, 1, or 7. ID 0 is reserved by convention for a bootable hard drive, ID 1 for a second hard drive, and ID 7 for the host adapter.

  • The Seagate Travan NS20 drive also requires setting termination manually. Exactly two devices must be terminated on each SCSI bus, and these devices must be those at each end of the bus, as follows:

    • If the SCSI adapter has only internal devices attached to it, the adapter itself and the final device on the internal SCSI chain must be terminated.

    • If the SCSI adapter has only external devices attached to it, the adapter itself and the final device on the external SCSI chain must be terminated.

    • If the SCSI adapter has both internal and external devices attached to it, the adapter must not be terminated. Instead, terminate the final internal device and the final external device attached to the SCSI chain.

In this case, the Seagate tape drive is the final device on the internal SCSI chain, which has no external devices, so the drive and the host adapter must both be terminated. By default, Pins 3 and 4 on the drive are jumpered, which terminates it. That's the correct setting, so we leave it as is. If we were installing the Seagate Travan NS20 between two existing SCSI devices, we'd remove the jumper from Pins 3 and 4 to disable termination.

Pins 1 and 2 are also jumpered by default, which enables Termination Power. Again, that's the correct setting, so we leave it at default. Pins 5/6 and 7/8 are reserved on this drive, so we leave them unjumpered, which is the default. Pins 9/10 are jumpered, which enables Parity Checking. Again, that's the correct setting, so we leave it at default.

Most drives ship with Termination Power and Parity Checking enabled, which is usually correct. If you have trouble accessing a tape drive, check the host adapter manual to determine if Termination Power and/or Parity Checking should be disabled.

Adaptec host adapters, which we use and recommend exclusively, by default automatically detect terminated SCSI devices on the bus and set their own termination status accordingly, so no further action is required to configure the drive properly. Note that a few internal SCSI cables have a built-in terminator at the end of the cable. If you use such a cable, make sure that termination is disabled on all drives connected to that cable.

  • Once you have resolved SCSI ID and termination issues and have the drive physically installed, the next step is to connect the cables. Most adapters are supplied with a standard two-device cable. If you need to connect more than two drives, replace the cable before proceeding. Otherwise, connect the cable to each drive, making sure to align Pin 1 on the cable (indicated by a red stripe) with Pin 1 on each device (indicated by a small number, triangle, or dot on the connector). For SCSI IDs, it doesn't matter which drive connects to which cable position, so mix and match drives and cable positions in whatever way makes it easiest to route the cable. Just make sure that the physical last drive on the cable is the one that's terminated. Connect the power cable.

  • After verifying all settings and connections, turn on any external SCSI device(s) first, and then turn on the PC. Ordinarily, the system should boot normally, but the SCSI tape drive may or may not be recognized, depending on the drive itself, your operating system, and other factors. Before you configure the operating system to use the drive, some systems may require one or both of the following steps:

    CMOS Setup

    On most systems, the PCI bus assigns IRQs and port addresses automatically. If your system requires setting PCI bus parameters manually, do so during the first restart, using the system or motherboard documentation for guidance. (If your system BIOS is capable of assigning IRQs automatically, there will usually be a CMOS Setup option worded something like "Plug and Play OS?" If that option is set to No, the PC BIOS assigns IRQs. If it is set to Yes, the BIOS allows the Plug and Play capable OS [Windows 9X/2000/XP/Linux] to assign IRQs).

    SCSI Setup

    At boot time, the SCSI BIOS displays adapter and BIOS information and a list of installed SCSI devices. Ordinarily, the default settings are fine, but in some cases you may need to change settings to get the drive to work at all or to optimize its performance. If this is the case for your system, press whatever key sequence is needed to invoke the SCSI Setup routine and make the necessary changes, as recommended by the documentation for the host adapter and/or drive.

    If either or both of these steps are needed, restart the system after completing each. After you complete these steps, the system should boot normally and physically recognize the tape drive.

9.3.3 Configuring Windows 9X/2000/XP to Support a Tape Drive

Windows 9X/2000/XP does not support any tape drives in the usual sense, although it may or may not recognize and display the name of an installed tape drive, depending on the drive and the version of Windows. Unlike most other devices, for which drivers are readily available and can be installed using the Add New Hardware Wizard, tape drives running under Windows depend on device support built into the backup application itself. This is why, for example, the Windows 98 Microsoft Backup applet?an OEM version of Veritas Backup Exec?can use some tape drives and not others: the program itself contains drivers for the supported tape drives. All this really means is that you can't use unsupported drives with the built-in backup applet. That's not usually a problem because most tape drives are bundled with backup software considerably superior to the Windows Backup applet.

Windows support for tape drives is analogous to Windows support for CD writers and DVD writers. Windows recognizes that the drive is present, but has no idea how to exploit its capabilities. Just as with CD/DVD writers, that functionality must be built into application software designed to support the drive, whether that application is supplied by a third party or comes as a Windows applet (as does the Windows Backup application or the limited CD burning application bundled with Windows XP). The backup software bundled with your tape drive will support it. If you buy a bare drive, you'll need to purchase backup software separately, unless the Windows Backup applet supports your drive and is sufficient for your needs.

Recent versions of third-party Windows backup applications include drivers for many recent-model tape drives. Most tape drives bundle a competent backup utility?often a special version of Backup Exec or ARCserve?that contains the necessary drivers to support that drive under the operating systems intended to run them. You may, however, need to download drivers for a new tape drive either from the tape drive manufacturer (most of which do not supply drivers) or from the backup software company, if one of the following is true:

  • You have a previously purchased backup utility that does not contain drivers for the new drive.

  • You have a backup utility you want to continue to use that was originally bundled with a drive you are replacing, and that backup utility has no support for the new drive.

  • The backup application supplied with the new drive does not support the operating system you are using.

Before you purchase a tape drive for use with Windows, verify that the backup application you intend to use has drivers for that tape drive.

9.3.4 Configuring Linux to Support a Tape Drive

The ease of configuring Linux to support a tape drive depends on the Linux distribution and version, the type of drive, the interface it uses, and whether the drive is present when Linux is installed or is added later. If you use a modern, mainstream ATAPI or SCSI drive with a recent Linux distribution, installation will likely be straightforward. If you use an older distribution, an obsolescent or proprietary drive, or a drive that uses an interface other than ATAPI or SCSI, you may encounter significant problems getting the drive to work, if indeed you can get it working at all. You can use the following tape drives with Linux:

Travan, DDS, and AIT tape drives

Recent Linux releases natively support a wide variety of Travan, DDS, and AIT tape drives with ATAPI or SCSI interfaces. If you install and configure the drive and interface properly before you install Linux, the Linux installer will likely recognize the drive and automatically configure Linux to use it. In fact, Linux often does a better job than Windows 2000/XP of recognizing and configuring Travan, DDS, and AIT tape drives.

If you install a tape drive in a system with Linux already installed, log in as root and run the hardware detection utility (e.g., Kudzu in Redhat or Mandrake and Discover in Debian). If the drive is supported, the utility detects the drive, installs drivers, and automatically configures Linux to use the drive. If the drive is not recognized, check the web sites for the drive and your Linux distro to determine how to configure the drive manually.

USB and FireWire (IEEE-1394) drives require a 2.4 or higher Linux kernel.

OnStream ADR tape drives

Linux support for OnStream tape drives differs according to the command set used by the drive. All second-generation (ADR2) drives and first-generation (ADR) ADR30, ADR50, and ADR50e SCSI drives use the standard SCSI command set, so the standard st (SCSI tape) driver suffices to interface the drive to the backup application (the ATAPI ADR2.60IDE drive requires both the ide-scsi and st drivers).

Most first-generation OnStream ADR drives?the DI30, DI30 FAST, DP30, USB30, SC30, SC30e, SC50, SC50e, and FW30?use a proprietary command set that optimizes those drives for storing streaming video. That command set differs significantly from the standard ATAPI and SCSI command sets, which means the standard st driver does not support these drives. Full (or even partial) Linux support requires a kernel rebuild or various workarounds. Fortunately, a modified version of the st driver, called the osst driver, is available. The osst driver interfaces standard backup applications to the proprietary command set of older ADR drives.

Although the ide-tape driver supports the OnStream DI30 drive, we strongly recommend using the ide-scsi and osst drivers instead. The ide-tape driver writes tapes in LIN3 logical format, whereas osst writes tapes in LIN4 logical format. That means the osst driver reads tapes written with ide-tape, but the ide-tape driver cannot read tapes written with osst. Also, various problems have been reported using ide-tape with DI30 drives, ranging from inability to restore files to complete failure to recognize the drive.

FDC-based drives

Travan TR-3 and earlier QIC drives use the floppy drive controller (FDC) interface, either directly or in some cases via a parallel port connection. These drives are now so old that most have been retired, but if for some reason you must use an FDC-based tape drive on a Linux system, you may be able to get it running using ftape. The ftape driver supports QIC-40, QIC-80, QIC-3010 (TR-2), QIC-3020 (TR-3), Iomega Ditto 2GB, and Ditto Max drives. For more information about ftape, see http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/Ftape-HOWTO.html.

We do not recommend using ftape in PCI-based systems, which is to say in any modern system at all. The ftape driver has known incompatibilities with some PCI motherboards. For details, view README.PCI in the ftape distribution.

Once Linux recognizes a tape drive, you can use bundled Linux applications such as tar, mt, mtx, dump, restore, and cpio to write and read tapes in the drive. You can also use full-featured backup applications such as BRU (http://www.tolisgroup.com/), Amanda (http://www.amanda.org/), and Arkeia (http://www.arkeia.com/) to implement a formal backup program.

Here are some useful sites that cover various aspects of using tape drives with Linux:

http://www.linuxtapecert.org
http://www.tldp.org/LDP/sag/index.html