Newsgroups: comp.os.linux.announce,comp.os.linux.help
From: ftape@mic.dth.dk (Linux ftape-HOWTO maintainer)
Subject: Linux Ftape HOWTO
Message-ID: <Ftape-HOWTO.1-8516.767302828@cs.cornell.edu>
	newsgroups and describes which ftape drives are known to work (and
	which are known *not* to work) with the ftape driver.
Keywords: ftape HOWTO FAQ RTFM hardware-compability
Sender: mdw@cs.cornell.edu (Matt Welsh)
Organization: Cornell Univ. CS Dept, Ithaca NY 14853
Date: Mon, 25 Apr 1994 19:40:52 GMT
Approved: linux-announce@tc.cornell.edu (Matt Welsh)
Lines: 495
Xref: doc.ic.ac.uk comp.os.linux.announce:2157 comp.os.linux.help:32933

Archive-name: linux/howto/ftape
Last-modified: 15 Apr 94

This is the `Frequently Asked Questions' (FAQ) / HOWTO document for the ftape
driver (ftape-HOWTO), Copyright (C) 1993,1994 Kai Harrekilde-Petersen.

Copyright statement:
  You may distribute this document freely *as a whole* in any form and free of
charge.  You may distribute parts of this document, provided this copyright
message is included and you include a message stating that it is not the full
HOWTO document and a pointer to where the full document can be obtained.
Specifically, it may be included in commercial distributions, without my prior
consent.  However, I would like to be informed of such usage.
  You may translate this HOWTO into any language, whatsoever, provided that
you leave this copyright statement and the disclaimer intact, and that you
append a notice stating who translated the document.

DISCLAIMER:
  While I have tried to include the most correct and up-to-date information
available to me, I cannot guarantee that usage of the information in this
document does not result in loss of data.  I provide NO WARRANTY about the
information in the HOWTO and I cannot be made liable for any consequences for
any damage resulting from using information in this HOWTO.

Please read this document to the end, before you post a question to a newgroup
/ Linux-TAPE channel / the maintainer.  This will take off the peak of
questions, and releases us all to more constructive work (like improving the
ftape driver :-)

This HOWTO is written and maintained by: Kai Harrekilde-Petersen
Last update: March 26, 1994 for ftape-0.9.10a

Email's concerning the HOWTO should be directed to: <kaihp@id.dth.dk>
========================================================================
CONTENTS

Section 1: The preliminaries
----------------------------
Q1.1	What's the newest version of ftape - and where can I get it?
Q1.2	Where can I follow the development?
Q1.3	Which drives are supported?
Q1.4	Which drives are *NOT* supported?
Q1.5	How do I install it?
Q1.6	Where can I get the kernel sources?
Q1.7	Can I format my tapes under Linux?
Q1.8	Which formatting programs can I use under DOS?

Section 2: Backing up and restoring data and other FAQ's
--------------------------------------------------------
Q2.1	How do I write backups to the tape?
Q2.2	... and how do I read them back?
Q2.3	I want to check the archive I've made ... how?
Q2.4	How can I put more than one tar file on a tape?
Q2.5	Can I append files to an archive?
Q2.6	How do I mount/unmount a tape?
Q2.7	Can I exchange tapes with someone using DOS?
Q2.8	How do I `....' with tar?


Section 3: Frequently Asked Questions
-------------------------------------
Q3.1	ftape DMA transfers gives ECC errors
Q3.2	Insmod says the kernel version is wrong
Q3.3	Where can I find tar/mt/cpio/dd binaries/source/man page?

Section 4: Debugging the ftape driver
-------------------------------------
Q4.1	ftape crashes on me when I do  `...' - is that a bug?
Q4.2	ftape keep saying `... new tape', what do I do?
Q4.3	OK, it's a bug^H^H^H feature - How do I submit a report?
Q4.4	How do I change the trace-level?
Q4.5	When I use /dev/nftape, I get garbage ... why?


Section 5: Supporting the development of ftape
----------------------------------------------
Q5.1	I just *LOVE* this ftape driver, how can I support the developers?
Q5.2	I wanna help developing a `....' Who should I contact?
========================================================================


Section 1: The preliminaries
============================


Q1.1	What's the newest version of ftape - and where can I get it?
--------------------------------------------------------------------
  The newest version of the ftape driver is ftape-0.9.10a, and can be fetched
from the following sites:

    tsx-11.mit.edu [18.172.1.2]: /pub/linux/ALPHA/QIC-80/
    sunsite.unc.edu [152.2.22.81]: /pub/Linux/kernel/tapes/
    ftp.funet.fi [128.214.248.6]: /pub/OS/Linux/BETA/QIC-80/

  You should get the files: ftape-0.9.10a.tar.gz, ftape-0.9.10a.lsm and
modutils-0.99.15.tar.gz.  The tar.gz file is the ftape driver proper, while
the .lsm file is a Linux Software Map (LSM) file for the LSM project, and
the modutils file is a set of utilities for manipulating loadable drivers
(inserting and removing).  (Note: if you already have the modules utilities,
you do not need to upgrade them).


Q1.2	How can I follow the development?
-----------------------------------------
  If you want to follow the development of the ftape driver, you should
consider subscribing to the TAPE channel on Linux-activists.  To subscribe,
you send a mail to <linux-activists-request@niksula.hut.fi>, with the *FIRST
LINE* (or as a part of the header) saying `X-Mn-Admin: join TAPE'.  If you
send an empty mail (or the automagical mail-response system chokes on your
mail), you are sent a HOWTO mail.
  To submit a real mail to the mailing lists, send a mail to
<linux-activists@niksula.hut.fi>, and remember that the first line (or a
header line) should read `X-Mn-Key: TAPE'.


Q1.3	Which drives are supported?
-----------------------------------
  All drives that are both QIC-117 compatible *AND* either QIC-40 or QIC-80
compatible should work.  Currently, the list of drives that's *positively*
known to work with ftape is:

	* Colorado DJ-10 / DJ-20 (aka: Jumbo 120 / Jumbo 250)
	* Archive 5580i / XL9250i
	* Insight 80Mb
	* Conner C250MQ
	* Wangtek 3080F
	* Iomega 250
	* Escom / Archive (Hornet) 31250Q
	* Summit SE 150 / SE 250
	* Mountain FS8000

	* Colorado FC-10 High-Speed Controller (needs patching)

NOTE: If you have a drive that works fine, but it is not listed here, please
send a mail to the HOWTO maintainer (kaihp@id.dth.dk). 

Q1.4	Which drives are *NOT* supported?
-----------------------------------------
	* All drives that connect to the parallel port (eg: Colorado Trakker) 
	* High-Speed controller's. (eg: Colorado TC-15)
	* Irwin AX250L / Accutrak 250. (not a QIC-80 drive)
	* IBM Internal Tape Backup Unit (identical to the Irwin AX250L drive)
	* COREtape light

  Generally, *ALL* drives that connect to the parallel port are *NOT*
supported.  This is because these drives uses (different) proprietary 
interfaces, that are very much different from the QIC-117 standard.
  The Colorado TC-15 controller (and it's like) are not
supported directly by the ftape driver.  The only controller that can be used
is the Colorado FC-10, but some patching of the ftape driver is required to
make it work.  The FC-10 patches will be integrated into the ftape
distribution Real Soon Now.
  The Irwin AX250L (and the IBM Internal Tape Backup Unit) does not work the
ftape.  This is because they only support QIC-117, but not the QIC-80 standard
(they use Irwin's proprietary servoe (Rhomat) format).
  The COREtape light does not work (yet).  We have some info on it, but we
have not got it accepting the initialisation data. We may never get to work
with ftape. 

Q1.5	How do I install it?
----------------------------
  There is included an installation guide (the file Install-guide) in the
ftape distribution; please read that.


Q1.6	Where can I get the kernel sources?
-------------------------------------------
  You can get the kernel sources from the same place as you got the ftape
sources.  The sources are kept at the following sites (and many mirror-sites)

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

funet carries the so-called ALPHA versions too.  These are typically more
advanced than the `standard' versions, but can be less stable.  New versions
may be introduced to fix a bug within days, but they may also introduce new
bugs :-/


Q1.7	Can I format my tapes under Linux?
------------------------------------------
  At the moment, no!  Work are being done right now to develop a formatting
utility for Linux.  Until it's finished, you'll have to use MS-D*S (arghhh!)
instead or buy preformatted tapes.  However, some of the preformatted tapes
are *not* checked for bad sectors!.  If the ftape driver enocunters a tape
with no bad blocks, it will issue a warning.


Q1.8	Which formatting programs can I use under DOS? 
------------------------------------------------------
These are known to work:
	* Colorado Memory System's software (tape.exe)
	* Connor Backup Basics v1.1 and all Windowze versions
	* Norton Backup
	* QICstream version 2

These programs are known to be more or less buggy:

	* CONNER Backup Basics  1.0
	* 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.  Dennis T. Flaherty
(dennisf@denix.elk.miles.com) report that Conner C250MQ owners can obtain the
new v1.1, by calling 1-800-230-5638 and ask for an upgrade (which costs a
nominal fee for the floppy).  The Windoze versions works fine.

  Central Point Backup can be used, but it wastes precious tape spaces 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 maintainer (kaihp@id.dth.dk) the relevant
info, so I can update the HOWTO.

  
Section 2: Backing up and restoring data
========================================


Q2.1	How do I write backups to the tape?
-------------------------------------------
  You can use `tar', `dd' and `cpio'.  You will need to use `mt' to get the
full potential of your tapes and the ftape driver. For a start I'd recommend
using `tar', as it can archive lots of directories and let you pick out
seperate files from an archive.  To make a backup of your kernel source tree,
do this (assuming you have the source in /usr/src/linux):

	cd /usr/src
	tar cf /dev/ftape linux

  This wont compress the files, but gives you a smoother tape run.  If you
want the compression (and you've got tar 1.11.2), you just include the -z
flag(*), eg: `tar czf /dev/ftape linux'

  For further instructions on how to use tar, dd and look at the man pages and
the texinfo files that comes with the respective distributions.

(*) tar assumes that the first argument is options, so the `-' is not
necessary, i.e. these two commands are the same: `tar xzf /dev/ftape' and `tar
-xzf /dev/ftape'
 

Q2.2	... and how do I read them back?
----------------------------------------
  OK, let us restore the backup of the kernel source you made in Q2.1 To do
this you simply say 

	tar xf /dev/ftape

If you used compression, you will have to say

	tar xzf /dev/ftape

When you use compression, gzip will complain about trailing garbage after the
very end of the archive (and this will lead to a `broken pipe' message).  This
can be safely ignored.

For the other utilities, please read the man page.


Q2.3	I want to check the archive I've made ... how?
------------------------------------------------------
  tar has an option (-d) for detecting differences between two archives. To
test your backup of the kernel source say

	tar df /dev/ftape

If you do not have the man page for tar, you are not lost (yet); tar has a
builtin option list: try `tar --help 2>&1 | more'


Q2.4	How can I put more than one tar file on a tape?
-------------------------------------------------------
  "If I understand, tar -cf /dev/ftape stuff will only allow one tar file per
tape.  Does the trick of using `dd' via a pipe allow more than one file?"

  By using the nftape device, you can use `mt' to position the tape the
correct place.  (`mt -f /dev/nftape fsf 2' means go to tar file number 2)

  "I hate to say, but it appears (could be wrong) that the CMS software has
more capability than tar -- at least it can put two archives on one tape."

  Basically, yes. However, it depends on how you look at it: tar generates a
single Tape ARchive (that's why it is called `tar').  If you want more than
one backup on a single tape, you must use tar in conjunction with another
tool, eg: `mt'.  `tar' alone has less capability than the CMS software, but
tar /in conjunction/ with `mt' has more: you can delete the last tar file with
tar/mt (just position the tape at the beginning of the last tar file and start
writing your new tar file).

  There exists a `QIC-80 logical format', which is what the CMS software
conforms to.  I am going to look in march '94 (at the earliest).
  Truly, that is the way it goes, when you start using something that is still
in it's infancy :-/


Q2.5	Can I append files to an archive?
--------------------------------------------
  "Is there a way to extend an archive -- put a file on the tape, then later,
add more to the tape?"

  No. The tar documentation will tell you to use `tar -Ar', but it does not
work.  This is a limitation of the current ftape driver.


Q2.6	How do I mount/unmount a tape?
--------------------------------------
  You do not! -- Since a tape does not have a "filesystem" on it, you do not
mount / unmount the tape.  To backup, you just insert the tape and run your
`tar' command (or whatever you use to access the tape with).

  "Is there an explicit (un)mount command for the tape?"

Nope.  The ftape device is a `character device', and they can not be
[u]mount'ed.  It is only block devices that gets mounted


Q2.7	Can I exchange tapes with someone using DOS?
----------------------------------------------------
  Not yet. This _is_ being worked on, however.


Q2.8	How do I `....' with tar?
---------------------------------
  These are really tar questions: Read the man page and the info page.  If you
have not got it either, DO try `tar --help 2>&1 | more'.

  If your tar is v1.11.1 or earlier, consider upgrading to v1.11.2 - This
version can call GNU zip directly (ie: it supports the -z option) and has an
elaborate help included.  Also, it compiles right out of the box on Linux.


Section 3: Frequently Asked Questions
=====================================


Q3.1	ftape DMA transfers gives ECC errors
--------------------------------------------
  Sadly to say there are some SVGA cards and ethernet cards that do not decode
their addresses correct.  This typically happens when the ftape buffers are in
the range 0x1a0000 to 0x1c0000.  Somehow, the DMA write cycles get clobbered
and every other byte written gets a bad value (0xff).  These problems are
reported to happen with both SVGA and ethernet cards.  We know of at least one
(bad?) ATI 16bit VGA card that caused this.
  The easiest solution is to put the card in an 8bit slot (it is often not
enough to reconfigure the card to 8bit transfers).
  Moving the ftape buffer away from the VGA range is only a partial solution;
All DMA buffers used in Linux can have this problem!

Let us make this one clear: This has nothing to do with the ftape software :-) 


Q3.2	Insmod says the kernel version is wrong
-----------------------------------------------
  The insmod program checks the kernel version against the version recorded in
the ftape driver.  This is a string in kernel-version.h, (char
kernel_version[] = "1.0.4";) which is extracted from the kernel you are
running when you run `make'.  If you got the error when you tried to insert
the ftape driver, remove the file `kernel-version.h', type `make' again and
the kernel-version.h file should be updated.  Remember that you will have to
do this every time you change to another kernel version.


Q3.3	Where can I find tar/mt/cpio/dd binaries/source/man page?
-----------------------------------------------------------------
  All of these tools have been developed by the GNU project, and the source
(and man page) can be fetched from just-about any ftp site in the world
(including ftp.funet.fi, tsx-11.mit.edu, and sunsite.unc.edu).  In any case
they can be fetched from the official GNU home site: prep.ai.mit.edu
[18.71.0.38]:/pub/gnu.  The latest versions (by 26. march 94) are:
	cpio:	2.3 (cpio-2.3.tar.gz
	dd:	3.9 (fileutils-3.9.tar.gz)
	mt:	2.3 (cpio-2.3.tar.gz)
	tar:	1.11.2 (tar-1.11.2.tar.gz)
	gzip:	1.2.4 (gzip-1.2.4.tar.gz)
They all compile out of the box on Linux v1.0.4 / libc v4.5.19 / gcc v2.5.8


Section 4: Debugging the ftape driver
=====================================


Q4.1	ftape crashes on me when I do  `...' - is that a bug?
-------------------------------------------------------------
  No, that is a feature ;-)

  Seriously, reliable sofware do not crash.  Especially kernels do not or
rather *should* not crash.  If the kernel crashes upon you when you are
running ftape, and you can show that it is ftape that is messing things up,
regard it as a Bug that Should Be Fixed.  Mail the details to the developers
(see Q4.3 below).


Q4.2	ftape keep saying `... new tape', what do I do?
-------------------------------------------------------
[You cannot do this anymore; I do not know a way of fixing it yet]
  To get rid of this, do this (blindfold): login as root and say `rmmod
ftape'.  ftape should choke a few times, give three segmentation violations
(or so), and give up life.

  Check the activity LED on your floppy drive (you do have one, don't you?).
If it is constantly lit, you have turned the floppy cable upside down
somewhere.  Check your cable between controller, tape drive _and_ floppy
drive.  Usually, one (or more) of the connectors have been turned upside down,
such that pin 1 in one end connects to pin 34 in the other end.  (All the
even-numbered pins are grounded, so you wont be able to use your floppy
either).  Don't worry; this cannot damage your hardware.


Q4.3	OK, it's a bug^H^H^H feature - How do I submit a report?
----------------------------------------------------------------
  First, make sure you can reproduce the problem.  Spurious errors are a pain
in the ass, since they are just about impossible to hunt down :-/  This is a
quick check list:

	* Kernel version, and patches applied (even ftape patches)
	* ftape version
	* tape drive model / manufacturer
	* What you did to expose the problem
	* A log of the run with tracing level set to 7
	* What went wrong on your system.
	* Do not delete the kernel and ftape.o file. We may want you run try
	  some patches out or run a different test on your system.

  Increase the tracing level to 7 (just below maximum tracing) and run the
offending command again.  Get the tracing data from the kernel log or
/proc/kmsg, depending on where you harvest your error messages.  Do not try to
`trim' the kernel log.  You might consider something irrelevant, which is
essential to the investigator of the bug.  State exactly what you did, and
what happened on your system.  We might not see the error because we use a
different tape drive or another version of the kernel!


Q4.4	How do I change the trace-level?
----------------------------------------
  You can do this two ways: either change the default trace-level (the var
`tracing' in file `ftape-rw.c') and recompile or say

	mt /dev/ftape fsr <tracing-level>

The use of the fsr command in mt is a *hack*, and will disappear in time.


Q4.5	When I use /dev/nftape, I get garbage ... why?
------------------------------------------------------
  From ftape-0.9.10, the non-rewinding devices are working. If you have
anything earlier, I strongly recommend you to update to the 0.9.10 version.


Section 5: Supporting the development of ftape
----------------------------------------------


Q5.1	I just *LOVE* this ftape driver, how can I support the developers?
--------------------------------------------------------------------------
  You can support us by answering other users questions on the newsgroups.
There are many new users (newbies), that just need a simple answer to their
question, e.g. `where can I get the ftape-HOWTO'.  Please post your answer
directly on the newsgroup, such that other users many learn from your answer.

  This is about the best support you can give us besides testing the driver
and writing good error-reports.


Q5.2	I wanna help developing a `....' Who should I contact?
--------------------------------------------------------------
  Below is a list of the developers.  If there is already someone working on a
similar / identical project, contact that person directly.  If you have an
program / feature that no-one is working on, contact me <kaihp@id.dth.dk> (NOT
Bas, he is already over-burdened by work and has little time to reply to
questions).

Formatting program:
  Kai Harrekilde-Petersen, kaihp@id.dth.dk
  Cesare Mastroianni, cece@dist.dist.unige.it

ftape driver proper:
  Bas Laarhoven, bas@vimec.nl

ECC code: (do not join in, we are enough already)
  Kai Harrekilde-Petersen, kaihp@id.dth.dk
  Bas Laarhoven, bas@vimec.nl
  David Mosberger-Tang, davidm@cs.arizona.edu
  Ning Mosberger-Tang, tn@cs.arizona.edu

ftape-HOWTO:
  Kai Harrekilde-Petersen, kaihp@id.dth.dk

QIC-80 logical format (r/w of DOS compatible backups):
  Guido Muench, odiug@pool.Informatik.RWTH-Aachen.de
  Kai Harrekilde-Petersen, kaihp@id.dth.dk 

/**************** T H E   E N D   O F   f t a p e - H O W T O ***************/
