Getting and installing <CODE>ftape</CODE>

# 4. Getting and installing `ftape`

Contents of this section

I will eventually include an installation guide in this section. You'll have to do without it, for the moment being.

## 4.1 What is `ftape`

`ftape` is a driver program that controls various low-cost tape drives that connect to the floppy controller.

`ftape` is not a backup program as such; it is a device driver, which allows you to use the tape drive (just like the SoundBlaster 16 driver let you use your sound card) through the device file `/dev/[n]rft[0-3]`.

`ftape` is written by Bas Laarhoven `<bas@vimec.nl>`, with ``a little help from his friends'' to sort out the ECC (Error Correcting Code) stuff. `ftape` is copyrighted by Bas under the GNU General Public License, which basically says: ``go ahead and share this with the world, just don't disallow other people from copying it further''.

`ftape` is currently beta testing, and has been that for some time now. It is reliable enough for critical backups (but always remember to check your backups, so you won't get a nasty surprise some day).

`ftape` supports drives that conform to the QIC-117 and one of the QIC-80, QIC-40, QIC-3010, and QIC-3020 standards. `ftape` does not support QIC-02 tape drives or drives that connect via a SCSI interface, e.g. DAT drives. SCSI drives are accessed as `/dev/[n]st[0-7]` and are supported by the kernel through the SCSI drivers. If you look for help on SCSI tape drives, you should read the `SCSI-howto`. See section Supported drives and Un-supported drives for a list of supported and unsupported drives.

## 4.2 How fast is `ftape`?

You can achieve quite respectable backup and restore speeds with `ftape`: I have a Colorado DJ-20 and an Adaptec 1542CF controller, and have measured a 4.25Mbyte/min sustained data transfer rate (no compression) across a 70Mbyte tar archive, while comparing the archive on the tape with data on my IDE disk. The speed of `ftape` is mostly dependent on the data transfer rate of your FDC: The AHA1542CF has a ``post-1991 82077'' FDC, and it will push 1Mbit/sec at the tape drive. If you have an FDC which can only deliver 500Kbit/sec data rates, you will see half the transfer rate (well, roughly).

## 4.3 What you need to install `ftape`

There are three source distributions that you must have to get `ftape` running:

- `ftape` v2.03 / v2.03a
- `modules` v1.1.87
- Linux kernel v1.2.<something>

### Getting `ftape`

`ftape` can be fetched from the following site (and its mirrors):

> `

>         sunsite.unc.edu [152.2.22.81]: /pub/Linux/kernel/tapes/

> `

You should get the files: `ftape-2.03.tar.gz`, `ftape-2.03a-patch.gz` and `ftape-lsm`. The `.tar.gz` and `patch.gz` files are the `ftape` driver proper, while the `lsm` file is a Linux Software Map (LSM) file for the LSM project.

The following patch, which corrects timeouts on long tapes, was sent out by Bas on the Linux Tape list on May 13th:

> `

>     --- 1.29        1995/05/10 16:09:36
>     +++ ftape-read.c        1995/05/12 17:36:37
>     @@ -478,10 +478,10 @@
>          case QIC_TAPE_QIC80:
>            segments_per_1000_inch = 488;
>            break;
>     -    case QIC_TAPE_QIC3020:
>     +    case QIC_TAPE_QIC3010:
>            segments_per_1000_inch = 730;
>            break;
>     -    case QIC_TAPE_QIC3010:
>     +    case QIC_TAPE_QIC3020:
>            segments_per_1000_inch = 1430;
>            break;
>          }

> `

### `modules`

Newer kernels (from 1.1.85 and on), have improved support for loadable modules (by Bjørn Ekwall and Jacques Gelinas), which (if possible) allows you to insert modules compiled for an `old' kernel into a `new' kernel. To compile the kernel with this improved module support, you need the `modules-1.2.8.tar.gz` file. The modules packages can be found on `tsx-11.mit.edu` and `sunsite.unc.edu`. You must compile and install it before you compile the kernel.

### What's new in `modules-1.2.8`?

The v`1.2.8` package no longer exhibits the infamous `insmod` Oops bug, when `ftape` is inserted into the kernel. This was, by the way, caused because `insmod` did not handle modules with more that 4Kbyte of static data correctly. However, this is not the greatest advantage of the v`1.2.8` package.

With v`1.2.8` comes the `kerneld` daemon which can automatically insert the needed modules as needed. This requires a patch to the v`1.2.x` kernels, but the patch is supposed to be included as a standard part of the kernel, when the `1.3` kernel series starts.

### Installing `modules-1.1.87`

Although you still can use version `1.1.87` of the modules utilities, I recommend that everyone upgrade to the `1.2.8` version.

If do not wish to upgrade (or cannot), here is what to remember when installing the `1.1.87` version:

The `modules-1.1.87` package has a bug which will cause the `insmod` to generate a kernel Oops, which the `ftape` modules is inserted. This bug is corrected by the `insmod.c`, `insmod.h`, and `load_aout.c` files that you can find in the `ftape-2.03/insmod` directory. (From now on, mail about `Oops`'es when `ftape` is inserted will quietly go to `/dev/null`).

### The Linux kernel

Since Linux version 1.2 has been out for some time I assume that everyone has switched over to it. If you have not already switched over, I assume you have a very good reason for not doing so, and that you can cope with the differences in installation etc, that it will make for you.

The kernel can be fetched from a large number of sites all over the world, including these:

> `

>         sunsite.unc.edu [152.2.22.81]:   /pub/Linux/kernel/tapes/
>         tsx-11.mit.edu  [18.172.1.2]:    /pub/linux/sources/system/
>         ftp.funet.fi    [218.214.248.6]: /pub/OS/Linux/PEOPLE/Linus/

> `

You will find a number of subdirectories, including two named `v1.1` and `v1.2`. These contain (you guessed it!) `v1.1` and `v1.2` of the kernel. I suggest that you get version `1.2.x`.

## 4.4 If you have `ftape-2.02`, or earlier

Since `ftape` both has been improved and some more bugs have been thrown out, you should consider upgrading to `2.03b` mandatory.

## 4.5 If you have `ftape-2.02`, or earlierFollowing the development of the`ftape` driver

If you want to follow the development of the `ftape` driver, you should consider subscribing to the TAPE mailing list on `vger`. To subscribe to it, send a mail saying ``subscribe linux-tape`' to `majordomo@vger.rutgers.edu`. When you subscribe, you will be sent a greeting mail, which will tell you how to submit real mails and how to get off the list again.

Note for old users:

On May 11th, Bas announced (together with the 2.03a patch) that the `official' mailing list from now on will we the `linux-tape` list on `vger`. Hence, all that are on the Linux-activists list on Niksula should move to the other list.

Since I once in a while see mail of the type ``Help! I can't get off niksula'', I am going to be a bit elaborate on how to get off (and what to do before despairing).

To get off the TAPE channel on Niksula, you send a mail to `<linux-activists-request@niksula.hut.fi>` with the line ``X-Mn-Admin: leave TAPE`'.

If Niksula refuses, try sending a mail with the line ``X-Mn-Info: user <yourloginname>`'. This should return you a mail which tells you under what email address you are subscribed. The Niksula mailer is very adamant on the point that you must unsubscribe with the same email address that you used to subscribe originally.

If the machine that you originally subscribed with has changed its address, you can try to fake the mail by adding the line ``From: <foo@bar.site.edu>`' right before or after the `leave TAPE' line. This should fool niksula into unsubscribing you. As a very last resort, you could talk someone into logging into the SMTP port on niksula and creating a faked mail.

## 4.6 Compiling and installing the `ftape` driver

There is included an installation guide (the file `Install-guide`) in the `ftape` distribution; please read that.

## 4.7 Can I format my tapes under Linux?

No! Honestly, noone is working on it: If you want to work on it, drop Bas a line. Until then, you'll have to use MessyDOS (arghhh!) instead or buy preformatted tapes. However, some of the preformatted tapes are not checked for bad sectors!. If the `ftape` driver encounters a tape with no bad blocks, it will issue a warning. If `ftape` barfs at your preformatted tapes, try out your DOS software. If both the DOS software and `ftape` barfs on your tapes, a reformat will very probably cure the problem.

Note that to be able to use your newly formatted tapes under ftape, you must erase the tape first:

> `

>             mt -f /dev/nftape erase

> `

## 4.8 Which formatting programs can I use under DOS?

These are known to work:

- Colorado Memory System's software (`tape.exe`)
- Conner Backup Basics v1.1 and all Windows versions
- Norton Backup
- QICstream version 2
- Tallgrass FileSecure v1.52
- Escom Powerstream 3.0 (`qs3.exe` -- QICstream v3?)

These programs are known to be more or less buggy:

- Conner Backup Basics 1.0
- Colorado Windows tape program
- CP Backup (wastes tape space, but is OK apart from that)

In fact, most software under DOS should work. The Conner Backup Basics v1.0 has a parameter off by one (someone could not read the QIC-80 specs right!), which is corrected in version 1.1. However, `ftape` detects this, and will work around it. Dennis T. Flaherty (`<dennisf@denix.elk.miles.com>`) report that Conner C250MQ owners can obtain the new v1.1, by calling Conner at 1-800-4Conner (in the US) and ask for an upgrade (for a nominal fee for the floppy). The Windows versions should work fine. Some versions of Colorado's tape program for windows, has an off-by-one error in the number of segments. `ftape` also detect and work around that bug.

Central Point Backup can be used, but it wastes precious tape space when it encounters a bad spot on the tape.

NOTE: If you are running a formatting software under DOS, which is not mentioned here, please mail the relevant info to me (`<khp@pip.dknet.dk>`), so I can update the HOWTO.

## 4.9 Mixing `ftape` and floppies

Since both the floppy driver and `ftape` needs the FDC (and IRQ6), they cannot run concurrently. Thus, if you have mounted a floppy and then try to access the tape drive, `ftape` will complain that it cannot grab IRQ6 and then die. This is especially a problem when designing a emergency disk for use with ftape. This solution is to either load the boot/root disk into a ramdisk and then unmount the floppy, or have two FDC's.

Next Chapter, Previous Chapter

Table of contents of this chapter, General table of contents

Top of the document, Beginning of this Chapter