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
I recommend that you download the latest stable version of
ftape which is 4.02 at the time of this writing and is available from
as well as from
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.
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-4.x still is called
zftape.o and its
C-sources inside the kernel tree reside in
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.
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'sfile 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
ftapestarted 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.
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.
There are certain differences in the IOCTL
This IO control interface is used by e.g.interface between
mtto rewind the tape or skip to the next file mark or do any other tape operation.
ftape-3.xand later. A detailed description can be found in the
ftape-manualcontained in the
ftape-docpackage. See Getting Ftape.
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.
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.
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.
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.02-tar.gz), untar it. You can do this by determining what directory you want the source code to be located in. I recommend
~/src. When the tar file is extracted, it will dump everything into a
ftape-4.02 subdirectory, so that you'll end up, in the example I've given, with something like
NOTE: you cannot compile
ftape-4.02 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.02 distribution and install
ftape-4.02 as a module.
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 complicated.
Do NOT proceed with compiling the package until you have read the appropriate
README files and the
Afterwards you need to edit the
MCONFIG file and configure you package according to your hardware. The
MCONFIG file contains lots of explanations so it should be fairly easy to go along with it.
However, most of the hardware configuration can be done via setting parameters during module load time so most parameters specified in the file
MCONFIG simply give the default configuration, but you don't need to recompile the driver to change IO addresses or interrupt settings. The file
INSTALL and the file
modules/insert contain examples how to specify the proper module parameters when loading the kernel modules, so I won't go into further detail here.
If you are using a Linux-v1.3.x kernel, you should consider moving to v2.0.x. v1.3.x was the development release prior to the production release v2.0.x.
ftape-4.02will be included into the v2.2.x kernel, but this isn't clear at the time of this writing. This HOWTO will be revised appropriately when this has become clear. So long you have to refer to the previous section Installing the driver with v2.0.x and earlier kernels and disregard the contents of this section.
The Linux kernel v2.1.x and later already include
ftape-4.x so you don't need to download the
ftape-4.x kernel driver package.
ftape-4.x as included in the v2.1.x versions of the kernel can be completely configured using the kernel configuration menus (either with
make menuconfig or
make xconfig. Also, there is online help available that documents each parameter setting which I won't repeat here.
The various boot- and loadtime parameter settings are explained in the file
of the Linux-v2.1.x and later kernel distributions.
If you want to follow the development of the
ftape driver, you should subscribe to the Linux Tape mailing list
firstname.lastname@example.org. To do so you need to send an email saying `
subscribe linux-tape' (in the body) to
email@example.com. 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. Store this email in a safe place. Please.
Please note that I do not, repeat DO NOT, have any special powers with regard to this mailing list. If you're stuck on the list, don't bother to tell me that. I can only shrug and send you my sympathy (but that won't get you off the list).
If you use your floppy tape drive with the standard FDC then the floppy drive and the floppy tape drive cannot run concurrently as they share the same hardware, the FDC, and the
floppy and the
ftape driver do not talk to each other. 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 floppy drive controllers.