Q How do I de-select a file in backup?

Use the TAB keys to go to the selected files box, move the cursor (using the
arrow keys) to the item you wish to de-select and then press 'd' or 'D' and
after confirmation, the file will be de-selected.


-------------------------------------------------------------------------------
Q How do I de-select a file in restore?

The same as above.


-------------------------------------------------------------------------------
Q How do I move between YES and NO in message boxes?

You can press 'y', 'Y', 'n', 'N' to select yes or no directly. Alternatively, 
use TAB or spacebar to move the highlight between YES and NO. Press ENTER when
the highlight is on what you wish.


------------------------------------------------------------------------------
Q I am mid-way through backing up in the directory /proc and I get funny 
   messages such as '-7% done' and the program seems to hang?

The /proc directory does not contain files. It contains run-time system 
information, such as the environment of running processes, an image of
system memory etc.. Therefore, you should not need to backup the /proc 
directory. If you do, you will get spurious results such as the above.
See TAPER.DOC for how to automatically exclude the /proc system.


-----------------------------------------------------------------------------
Q Where do I get ncurses 1.9.6?

It is available from ftp.netcom.com in /pub/zm/zmbenhal. You will need
ncurses 1.9.6 to compile taper. Earlier versions will NOT work. 

It is also available from sunsite.unc.edu in /pub/Linux/libs. Please
do not use sunsite if you have a close by mirror since it is very
heavily loaded.


-----------------------------------------------------------------------------
Q  After doing a backup or mkinfo, taper exists saying 
    "Unable to create info file"

Check that taper is able to create the info file directory (the default is
 /$HOME/.taper_info). If it can't, taper generates this error. Reasons include
no disk space, and you don't have permission to. Note that after this error, 
the backup is still intact. You just have to fix the problem and then select
mkinfo, not do the whole backup again.


----------------------------------------------------------------------------
Q   After doing a restore, the permissions on the files are correct, but 
    all the files are owned by the user running restore (ie. ownership of
    files and directories is not correctly set).

This will happen if a user other than root runs the restore program. Under
UN*X, only the root can change the ownership of files. Therefore, if wish
to restore the correct ownerships, run restore as root. 


----------------------------------------------------------------------------
Q   Restore give me a lot of warnings about Unable to set times, and
    permissions.
    
See above


--------------------------------------------------------------------------
Q  I keep on getting the error message "Device or resource busy while 
   trying to open backup device".

. Make sure that another user is not using the tape drive.
. Make sure that no processes that use the tape drive are running in the
  background.
. If you are using a floppy controller, make sure that there are no floppy
  drives mounted.


---------------------------------------------------------------------------
Q I compile and get many errors saying ANSI does not support long long

Don't worry about that. This means that you are using early kernels in
which the header files were not strictly ANSI compliant. This shouldn't
affect taper.


---------------------------------------------------------------------------
Q  GCC cannot find forms.h

Taper now requires at least ncurses-1.9.6 and the forms library that comes
with it. Obtain ncurses-1.9.6 (see above) and compile the library. Then
do
	cp ncurses-1.9.6/form.h /usr/include
   	cp ncurses-1.9.6/lib/libform.a /usr/lib
	cp ncurses-1.9.6/lib/libform_g.a /usr/lib


---------------------------------------------------------------------------
Q  I backed up using taper-5.1.3 or earlier and when I try and restore,
   not all my files are being printed on the restore screen, or funny
   filenames appear in my restore screen.

There was an obscure bug in taper-5.0 to taper-5.1.3 which caused incorrect
file counts to be occassionally written to the archive. Unfortunately,
other than recreating the backup, this can't be rectified. However,
if you run mkinfo on your archive, taper will create a 'fudged' info
file that will allow you to use your archive normally.


----------------------------------------------------------------------------
Q  I get error messages wattron and wattroff not found when compiling.

You do not have the correct curses.h header file. Make sure that there
is no curses.h file in /usr/include. Also make sure that the ncurses
header files are in /usr/include/ncurses (if they are not, modify the 
Makefile appropriately).

----------------------------------------------------------------------------
Q  I get a "No such device" error when trying to backup or restore.

You have not enabled support for your tape drive. If you have a SCSI
tape drive, make sure your kernel was compiled with support for
SCSI devices, support for SCSI tape drives, and support for your interface
card, enabled. Also make sure that you have edited the Makefile and removed
the '#' in the line '#DEFINES=-DHAVE_SCSI' and then re-compile and re-install.

Also, if you have a SCSI drive, make sure that it is turned on
when you boot Linux. If it isn't turned on when you boot, Linux
won't register its presence, and even if you turn it on after,
it may still not work.

If you have a floppy tape drive, make sure you have ftape, and you
have installed it with "insmod ftape.o". 


----------------------------------------------------------------------------
Q  Why is taper already up to version 5 when a lot of programs that have
   been around a lot longer only up to versions 2,3 etc..

The version scheme for taper is version x.y.z

	x = major version number. Generally, new version archives
	    will not be compatible with older versions. Thus,
	    archives created under version 2 will not be usable under
	    version 4, and version 4 archives are not compatible with
	    version 5. There was no public release of version 1 or 3.
	    Version 1 was a private development and version 3 was only
	    released to a few alpha testers and then ditched because
	    of problems
	y = minor version number. When new features are added, this 
	    number is increased. For example, the addition of new
	    options would necessitate a minor version number increase
	z = bug fix. If the new version contains minor changes
	    or bug fixes only, then only the bug fix number is increased.
	    If a new feature is added, then the minor version number is
	    increased.

Taper was originally developed for my own use with no thought to public
release. It was only after I saw many messages on USENET etc.. that I
realized other people may benefit from taper and that's when I went
public. Therefore, there has been no structured taper development
plan. New features are being added as users request them, and as
I try to respond as quickly as possible, taper versions have been
appearing quite regularly (in some cases, days apart). Even now, 
I am not formulating a plan, but adding features in (rough) order
of frequency that they are being requested, and how easily it can
be implemented.


------------------------------------------------------------------------------
Q  Why does taper use so much memory

Backup programs that have some degree of error correction and reporting
need to know in advance how many bytes they are going to write to the
archive, which files they are going to write and the sizes of these files.

In a multi-user system, this can be a problem, since a file may have 
changed between the time of writing the tape header and coming to backup
the actual file. For this reason, a lot of backup programs insist that
the filesystem is read-only while doing a backup.

This is awkward and requires all users to log-off and the system to be
down, so I have implemented another approach. Basically, taper gets all
the information it wants before starting to backup an archive and thus,
if a file is changed later, it doesn't matter. This requires a lot of
memory, but the advantage is that the active filesystem can be backed up.

See the file SPEED&MEMORY for more details.


--------------------------------------------------------------------------
Q  Why does taper say "Rewinding tape" for a flash and then before it
   starts to read, takes a long time to start actually read.
   
This is the way the ftape/zftape driver works. When taper (or anyone) does
a request for the tape to be rewound or fast forwarded, it doesn't actually
move the tape at that point - it just remembers that the tape needs to
be rewound/fast forwarded. When a read/write command is given, then the
tape is actually moved. So, when taper issues a rewind, the driver 
instantly returns to taper, but then when taper issues a read, then
the tape is advanced - hence it looks like it is taking a long time
to read. This is why "Rewinding tape" only stays for a second, but 
before the read can begin, the tape has to be physically moved.


--------------------------------------------------------------------------
Q  Why does restore print -1 error messages and -1 warnings?

If you do not enable triple buffering, taper assumes that you haven't
got SYSV_IPC support for shared memory aspects of SYSV_IPC. Taper restores
in a child process in the background, independently of the main taper
program and requires shared memory for the child to communicate with
the main program. If you don't have shared memory, then the child
can't communicate with the parent, hence the error message and warning
message count will be incorrect.


--------------------------------------------------------------------------
Q  Why does taper say "Tape drive type has not been set" when started

You must tell taper what type of tape drive you have. There are three
types taper supports - ftape, zftape and SCSI. You start taper like

   taper -T SCSI    or   
   taper -T ftape   or 
   taper -T zftape  or
   taper -T removable 
   
depending on what type of tape drive you have. You can then save
this to a preference file using the menu option so you don't have to
start taper like this again.

Alternatively, you can set the environment variable, TAPE_TYPE to 
scsi, zftape, removable or ftape. 


------------------------------------------------------------------------
Q  Why do I get a gcc fatal signal 11 message when compiling taper

I have taken this straight from the GCC-FAQ:

30) What does the message "Internal compiler error: cc1 got fatal signal 11,4" mean ?

Ans:	Gcc is probably the biggest memory hog you likely to run on your
	machine and it will surely eat up a lot of your RAM. Usually a fatal
	signal 11 will mean some sort of parity errors in your RAM or other
	hardware faults. I had this once when `cc1' got corrupted due to a
	race condition and bad blocks on my hard disk. There have also been
	reports that overheating chips, (not french fries), can also produce
	such errors. And watch for poor IDE controller/drive combos that
	are being run faster than the standard 8MHz AT bus clock. These
	can give the same errors by causing corruption of the swap space.

	Usually, a signal 11 (segmentation violation) means that a process
	tried to access memory out of its process space, or tried to write
	into a read-only location.  Sometimes, this signal is caused by
	software bugs, not by hardware faults (or your system would hang
	repeatedly, because the same thing happened to the kernel).  With
	gcc 2.3.3, some people could reproduce a lot of "signal 11"'s.

	A "fatal signal 4" has been reported to be generated due to lack of
	memory (happened on a 4MB system).

	Also it can mean a failure in one of the `ld' or `as' stages. Try
	recompiling whatever with a -v flag to gcc and see if it is failing
	in one of the cc1, cpp, as or ld stages possibly.


I will also add that sometimes it is due to the fact that gcc can't find
the libraries. Make sure your libraries are in a location accessible to
gcc (and that they are readable), and if not, change the LINK_LIB path
in the Makefile.
