Next Previous Contents

4. Getting and installing ftape

4.1 Getting ftape

The v2.0.x versions of the kernel include version 2.08 of ftape I recommend, however, that you grab the latest version of the full source code package for ftape. It is a newer version, includes files that are not included in the kernel v2.0.X distribution, and includes much better documentation about how to install ftape. The v2.1.x and later versions of the kernel include the version 3.04 of ftape.

I recommend that you download the latest stable version of ftape which is 4.03 at the time of this writing and is available from

http://www.instmath.rwth-aachen.de/~heine/ftape/archives.html

as well as from

ftp://sunsite.unc.edu/pub/Linux/kernel/tapes/.

You probably should also grab the ftape-doc and the ftape-tools package that are available from the same locations.

If you still want to use the ftape-2.08 which is shipped with the v2.0.x kernels, then you get a version of the driver which is really out of date and doesn't support QIC-3020 tapes at 2Mbps correctly, neither does it support the Ditto 2GB drives nor the Ditto Max drives nor any kind of parallel port tape drive. The section Supported drives gives detailed information about which version of the ftape driver supports which hardware.

4.2 Differences between ftape-2.x, ftape-3.x and ftape-4.x versions

ftape-3.x and ftape-4.x use the file system interface that was implemented for a branch release which was called zftape. Actually, the module that implements the VFS (Virtual File System) interface of ftape-3.x and ftape-4.x still is called zftape.o and its C-sources inside the kernel tree reside in [/usr/src/linux/]drivers/char/ftape/zftape/.

ftape-2.x (i.e. the version still contained in the v2.0.x kernel) uses another file system interface, that was implemented by ftape's original author Bas Larhoven.

File Marks

The conceptional difference between ftape-2.x and later versions of ftape is the way file marks are implemented.

Floppy tape devices don't have real file marks.

File marks are used to distinguish different backup sets if you write multiple backup sets to a tape. SCSI and QIC-150 tapes have real file marks, i.e. between two different backup sets there is a region on the tape that is written special data to so that the drive logic can detect that marker when the tape is wound with (possibly) high speed over those file marks.
Because the goal of ftape's file system interface was from the beginning on to provide an interface that could be used with standard Unix-like tape utilities (i.e. mt) the developers of ftape started to emulate file marks by storing the positions on the tape where a file mark should be located in certain fields of the header segments.
header segments refers to a region at the beginning of the tape sized two times 29k to hold some important information about the tape format and size and some status information.

However, the QIC standards already designate a special region to store such information in, the so called volume table segment. Since ftape-3.x this volume table segment is used instead of using unused data fields in the header segment. As a result it is possible to use your tape cartridge with different operating systems in the sense that your Win or DOS backup program will realize that certain regions of the tape cartridge are already occupied with data, and ftape-3.x and later will detect the regions used by those DOS and Win programs. However, you can't extract a DOS backup set under Linux or extract a volume written by ftape under DOS, safe you write your own software to do that.

IOCTL interface

There are certain differences in the IOCTL

This IO control interface is used by e.g. mt to rewind the tape or skip to the next file mark or do any other tape operation.
interface between ftape-2.x and ftape-3.x and later. A detailed description can be found in the ftape-manual contained in the ftape-doc package. See Getting Ftape.

Formatting

Formatting of cartridges is supported with ftape-3.x and later only. Please get the ftape-tools package that contains the ftformat program that interfaces to the driver to format cartridges. See Getting Ftape. The ftape-tools package comes with (more or less) detailed documentation, so the case of formatting cartridges is not dealt with in this document.

Compression

ftape-3.x supported user transparent on-the-fly compression in software. This feature (or bug) has vanished in ftape-4.x as it made further improvements concerning the realiability of backups very very hard. This means, ftape-4.x comes without compression support.

However de-compression of compressed archives produced with ftape-3.x is supported in order not to brake existing backup programs where a user-level filter would not suffice to preserve compatibility. Think, e.g., of taper which calls the MTIOC ioctls itself instead of relying on the mt program to perform tape operations.

The ftape-manual contained in the ftape-doc package contains much more detailed information about ftape`s file system interface as well as implementation notes which by far exceed the scope of this HOWTO. See Getting Ftape for informations about where to obtain the manual.

4.3 Installing the driver with v2.0.x, v2.2.x and earlier kernels

The following section provides some useful information to get you going with the installation of v4.x which is not shipped with the kernel source tree yet but has to be downloaded separately, see the section Getting ftape above.

Once you've downloaded the source code (probably ftape-4.04-tar.gz), untar it. You can do this by determining what directory you want the source code to be located in. I recommend /usr/src/ or ~/src. When the tar file is extracted, it will dump everything into a ftape-4.04 subdirectory, so that you'll end up, in the example I've given, with something like /usr/src/ftape-4.04 or ~/src/ftape-4.04.

NOTE: you cannot compile ftape-4.04 into your v2.0.x kernel. Instead, configure your kernel to not compile the ftape driver and follow the installation instructions in the ftape-4.04 distribution and install ftape-4.04 as a module.

Read the README file. The README is required reading. It's the top of the tree, so to speak. If there are specific files that the README tells you to read then read them. It will make the process much less comp png" ALT="Next"> Previous Contents


4. Getting and installing ftape

4.1 Getting ftape

The v2.0.x versions of the kernel include version 2.08 of ftape I recommend, however, that you grab the latest version of the full source code package for ftape. It is a newer version, includes files that are not included in the kernel v2.0.X distribution, and includes much better documentation about how to install ftape. The v2.1.x and later versions of the kernel include the version 3.04 of ftape.

I recommend that you download the latest stable version of ftape which is 4.03 at the time of this writing and is available from

http://www.instmath.rwth-aachen.de/~heine/ftape/archives.html

as well as from

ftp://sunsite.unc.edu/pub/Linux/kernel/tapes/.

You probably should also grab the ftape-doc and the ftape-tools package that are available from the same locations.

If you still want to use the ftape-2.08 which is shipped with the v2.0.x kernels, then you get a version of the driver which is really out of date and doesn't support QIC-3020 tapes at 2Mbps correctly, neither does it support the Ditto 2GB drives nor the Ditto Max drives nor any kind of parallel port tape drive. The section Supported drives gives detailed information about which version of the ftape driver supports which hardware.

4.2 Differences between ftape-2.x, ftape-3.x and ftape-4.x versions

ftape-3.x and ftape-4.x use the file system interface that was implemented for a branch release which was called zftape. Actually, the module that implements the VFS (Virtual File System) interface of ftape-3.x and ftape-4.x still is called zftape.o and its C-sources inside the kernel tree reside in [/usr/src/linux/]drivers/char/ftape/zftape/.

ftape-2.x (i.e. the version still contained in the v2.0.x kernel) uses another file system interface, that was implemented by ftape's original author Bas Larhoven.

File Marks

The conceptional difference between ftape-2.x and later versions of ftape is the way file marks are implemented.

Floppy tape devices don't have real file marks.

File marks are used to distinguish different backup sets if you write multiple backup sets to a tape. SCSI and QIC-150 tapes have real file marks, i.e. between two different backup sets there is a region on the tape that is written special data to so that the drive logic can detect that marker when the tape is wound with (possibly) high speed over those file marks.
Because the goal of ftape's file system interface was from the beginning on to provide an interface that could be used with standard Unix-like tape utilities (i.e. mt) the developers of ftape started to emulate file marks by storing the positions on the tape where a file mark should be located in certain fields of the header segments.
header segments refers to a region at the beginning of the tape sized two times 29k to hold some important information about the tape format and size and some status information.

However, the QIC st