Welcome to Linux Knowledge Base and Tutorial
"The place where you learn linux"
Linux Magazine

 Create an AccountHome | Submit News | Your Account  

Tutorial Menu
Linux Tutorial Home
Table of Contents

· Introduction to Operating Systems
· Linux Basics
· Working with the System
· Shells and Utilities
· Editing Files
· Basic Administration
· The Operating System
· The X Windowing System
· The Computer Itself
· Networking
· System Monitoring
· Solving Problems
· Security
· Installing and Upgrading
· Linux and Windows

Man Pages
Linux Topics
Test Your Knowledge

Site Menu
Site Map
Copyright Info
Terms of Use
Privacy Info
Masthead / Impressum
Your Account

Private Messages

News Archive
Submit News
User Articles
Web Links


The Web

Who's Online
There are currently, 82 guest(s) and 0 member(s) that are online.

You are an Anonymous user. You can register for free by clicking here



  5. Unpacking and Compiling

     5.1 File locations
     5.2 Modifying defaults.h

  6. Terminology

  7. Tape Devices

  8. Tape drives

     8.1 ftape
     8.2 zftape
     8.3 SCSI Drives
     8.4 IDE tape drives
     8.5 Floppies and other removable media

  9. Quick fast forwards

  10. Can seek

  11. Formatting and Erasing Tapes

  12. /proc Filesystem

  13. Compression

  14. Running Taper

     14.1 Command line options
     14.2 Backup Module
        14.2.1 Backup modes
     14.3 Restore
        14.3.1 Restore modes
  Full restore
  Most recent volume restore
  Fixed volume restore
     14.4 Recreate info file
     14.5 Verify archive
     14.6 Utilities
        14.6.1 Make tape
        14.6.2 Test make tape
        14.6.3 Which proc
        14.6.4 Test fast fsf
        14.6.5 Test can seek
        14.6.6 Test end of tape
        14.6.7 Erase volumes
        14.6.8 Reindex info file
        14.6.9 Look for recursive links
        14.6.10 Attempt Recovery

  19. Screen Colours

  20. Multiple Tape Backups

     20.1 Writing
     20.2 Reading

  21. Cross platform support

  22. Limitations

  23. Bugs

  24. Major bugs in early versions

  25. Finally


  1.  Disclaimer

  Copyright (C) 1996-2000 by Yusuf Nagree (yusuf@e-survey.net.au)

  This  program  is free software; you can redistribute it and/or
  it under the terms of the GNU General Public  License  as  pub­
lished by
  the Free Software Foundation;

  This program is distributed in the hope that it will be useful,
  WITHOUT ANY WARRANTY; without even the implied warranty of
  General Public License for more details.

  You  should  have received a copy of the GNU General Public Li­
  along with this program; if not, write to the Free Software
  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

  2.  Warning

  Please note that this is BETA software. This means that  it  is
  under development. This program works fine on my setup (DX2-66,
  250, Floppy controller, 32Mb RAM, 3  IDE  hard  drives  (120mb,
  Until  then,  please  also backup using a method you KNOW works
for you.

  Having said this, from the comments I have received so far,  it
  seem  to  work  on a fair few systems so I hope it does work on
  If it doesn't, I'd like to know.

  3.  Introduction

  Taper is a user friendly archive  program  especially  designed
  backing up to tape drives. It also supports backing up to files
on a
  hard disk

  It, I hope, overcomes the lack of programs available  currently
  Linux for user friendly archiving.

  Tar/cpio,  apart from having an unfriendly user interface, lack
  essential feature that I needed  -  there  was  no  information
stored in
  the  beginning  of  the  archive  about  what files were on the
archive. The
  only way to get such a list was to traverse the whole  archive,
  cpio/tar  to  print  out  a list of files that it found. With a
  archive, this could easily take 5 min. It was a real hassle to
  maintain lists of files on all my tapes and it  could  take  20
min to
  locate  a file if I didn't know which tape it was on - printing
  file lists of each tape.

  I solved this by maintaining an archive information file on the
  disk.   This  file  contains  all  the  information about files
stored on
  the archive.  When files are added to the archive, the archive
  information file is updated. This archive information file  can
  reconstructed from the archive should the file get
  deleted/corrupted/lost - it just takes time.

  To speed access to the files, the info file cluster consists of
  files - two main files and two indexes. The names of  the  main
     file on your target machine.  If you do not want to reindex,
     take all four files on the floppy with you.

  o   reconstruct  the  archive information file on the restoring

  Since reconstructing the archive information file  can  take  a
  the  first method is recommended.  Info files can be quite long
  there are three of them. A short housekeeping file, a main file
and an
  index file. When transporting info files, on the short file and
  main file need be transported - the index  file  can  be  rein­
  Although  these info files can be long, they compress very well
  typically more than 10:1 so it is important that you  have  the
  info files preference ON.

  Note,  that as a security measure, archives created by one user
  be read by another user, unless the archive information file is
  from the backup user's directory to the restore user's directo­
  Thus, if you want to make a backup and don't want others to  be
able to
  restore  it,  set  your  permissions on the archive information
file as
  rw------- (which taper does by default). Note that this is not
  completely foolproof, since a restorer can  run  recreate  info
files and
  create  the information file and then access the archive. It is
more a
  deterrent rather than secure system.

  The second problem with both tar and cpio was  that  using  the
  interface  tape drive, you could not append files. The only way
  append files was using a combination of tar and  mt  -  a  very
clumsy and
  time consuming method of backing up.

  Note  that the archive device doesn't have to be a tape drive -
it can
  be an ordinary file on a filesystem, or a floppy, or  in  fact,
any file
  other setups. If you have any problems, contact me an I'll  see
if I
  can help.

  The main program is called taper.

  Note that currently taper is not really designed for backing up
  than about 30,000 files (unless you  have  a  large  amount  of

  4.  Requirements

  o  ncurses library >= v1.9.6 with the forms library

  o   kernel  >= v1.2.5 (I think it will work for lesser versions
but I
     have not tested it) - Your kernel must have  SYS_V_IPC  sup­
     enabled  if you wish to take advantage of the triple buffer­

  o  gcc >= 2.6.1

  5.  Unpacking and Compiling

  Unpack the source file distribution by  issuing  the  following

       tar xzf 6.9b.tar.gz

  Modify Makefile.common as required and then

       make clean
       make all

        however, on faster drives, can slow down performance. The
        thing to do is to compile with triple buffering and  look
at your
        performance.  If  it  is slow, then recompile with triple

        I consider a  fast  drive  to  be  one  that  delivers  a
throughput of
        more than 8mB/minute.

        Taper  stores  all data to the tape in little endian for­
mat.  To
        use taper on a big endian machine, define TAPER_BIG_ENDI­

        If  you  are  using libc5, and are getting strange errors
        "Broken Pipes", segmentation faults etc.., uncomment this

        If  you  are using glibc (aka libc6), this must be set to

  5.1.  File locations

  To place the binaries and the man page in the appropriate loca­

       make install

  The   binaries  are  placed  in  /sbin  and  the  man  page  is
  which is in accordance with the Linux FSSTND.

  To remove the files

       make uninstall

  6.  Terminology

  An  archive  refers to all the files on a tape. A volume is the
  that are written to in one backup session. Thus,  if  you  make
  backup to a tape, then it will have one volume. If you then ap­
  files to this tape, it will have two  volumes.  If  you  append
again, it
  will have three volumes.

  For  all intents & purposes, volumes are transparent to the us­
er. When
  selecting files to restore, all the files on  all  the  volumes
  presented in alphabetical order (not volume order).

  7.  Tape Devices

  This  program  requires a device driver for the tape drive. For
users of
  the floppy controller type  (eg.  Jumbo),  there  are  now  two

  The  original  one  was  ftape and was written by Bas Laarhoven
and, at
  the time of writing this, is currently at version 2.11a.  It is
  available from sunsite.unc.edu.  It should be in
  /pub/Linux/kernel/tapes.  At  the time of writing, it was still

  A new driver, zftape, was written by Claus-Justus  Heine,   and
is found
  at             ftp://sunsite.unc.edu/pub/Linux/kernel/tapes/zf­
  It uses the basic ftape code, however,  it  contains  many  en­
  over  ftape  including support for compression and a true seek­
  device.  The latest version at time of writing was 1.06a.   You
  use version 1.02 or later.

  However,  Claus-Justus  Heine  has  taken over maintaining both
ftape and
  zftape. His latest project is to integrate the  code  of  ftape
  zftape into one source, which is has called ftape and have ver­
  aachen.de/~LBFM/claus/ftape  where  the latest ftape and zftape
can be

  Two devices are needed - a rewinding device - when  using  this
  the tape drive is automatically rewound when closed, and a non-
  rewinding device - when using this device, the  tape  drive  is
  rewound  when  closed but left where is. The names of these de­
  depend on whether you are using a SCSI drive, ftape or  zftape.
  Alternatively,  you  can change the names in the global prefer­
  menu, via the preference file, from the environment, or via the
  command line.

  It  is  important that both a rewinding and a non-rewinding de­
vice is

  When making an archive as a file on a hard disk,  the  filename
  be  given  for  both the rewinding and non-rewinding device. To
  things easier, you can use the -b command line  option  or  the

  8.  Tape drives

  8.1.  ftape

  ftape is the original floppy tape driver for Linux and now sup­
ports a
  wide variety of floppy tape drives  and  a  few  enhanced  con­
trollers. In
  the  later  development  kernels,  ftape  is part of the kernel
  tree. It is still available separately for those running older
  kernels. I am not referring to ftape version 3 or above in this
  section.  If you are using ftape version >= 3, for the purposes
of this
  documentation, you should assume that you are using zftape.

  Start taper with the -T ftape option.

  The  device  names  are  /dev/ftape  (which  should  point   to
  should drastically improve taper performance. If you have  mul­
  volume  backups  made  under ftape, however, you should not up­
  because you will not be able to access volumes other than 1 us­

  8.2.  zftape

  This  section  also applies to those people using ftape version
>= 3.

  Start taper with the -T zftape option.

  This driver supports several modes - one is the  generic  ftape
  The second is a QIC compliant mode (zftape) and the third is a
  compressed  QIC compliant mode (czftape). It is possible to ac­
  archives made with ftape using the generic  mode  (see  below),
  if  you  make  a  backup using the QIC compliant mode (zftape),
then you
  cannot use this if you decide to go back to ftape. As  this  is
  done,  and because the QIC compliant mode is so superior to the
  mode, I would recommend that you use it.

  Backups made under ftape will work with zftape if you:

  1. Make sure that you  use  the  device  names  /dev/ftape  and
     You  will  have to change this manually under Global prefer­

  2. You only restore files from the first volume. It is not pos­
sible to
     restore  files  from  other  volumes. This is because zftape
does not
     support the fsf ioctl for ftape drives. I am currently
     corresponding with Claus to see if we can resolve this prob­

  3.  Do not try and append data to an archive created with ftape

  4. You change the set-blksize & get-blksize preferences to  yes
  fast forward through archives. You should notice quite  a  dif­
  especially when doing a mkinfo and when restoring from multiple
  volumes. Although zftape has support for compression,  you  are
  off letting taper compress since taper buffers a bit better and
  the option of using gzip which is more efficient than the algo­
  used by zftape.

  The devices for this driver should be created using

       make mknod

  in  the Makefile that comes with the driver. Note that the per­
  will be set up so that only root has write access to  the  tape
  You will have to change this manually if you want to allow oth­
er users

  The device names are /dev/qft0 for  the  rewinding  device  and
  for the non-rewinding device.

  If  you  make  a backup with ftape version >= 3, you cannot re­
store with

  8.3.  SCSI Drives

  Start taper with the -T scsi option.

  Unfortunately, I do not have a SCSI drive and therefore am  un­
able to
  test taper code with SCSIs. I rely on SCSI users sending me
  information  about  how taper works for them and then I try and
use that
  information to help other SCSI users who are  having  problems.
  following information was sent to me by AP Harris
  (apharris@onShore.com) and I've included it to help SCSI users.

  The SCSI rewinding device is /dev/st0 (or /dev/st1 on  the  2nd
  drive) and the non-rewinding device is /dev/nst0.  You'll prob­
  have to prepare all your tapes using mktape  from  the  utilies

  No  additional  drivers are needed (although the st-aware mt is

  The block size (-x option below) should be set below  the  tape
  driver buffer size (which can be changed at kernel compile time
in the
  kernel and defaults at 32K).

  SCSI tapes generally do not need formatting  -  see  below  for

  8.4.  IDE tape drives

  Start taper with the -T ide option.

  The  default  device  names are /dev/ht0 and /dev/nht0. Support
for IDE
  drives is in alpha stage and I would encourage users to give me
  feedback on how taper is working with their IDE drives

  8.5.  Floppies and other removable media

  Start taper with the -T removable  option.

  When  the  floppy  (or whatever) is full, taper will prompt you
for the
  next floppy/tape. This works in exactly the same way as  multi­
ple tape
  backups. The default device names are set to /dev/fd0 - ie. the
  floppy drive.

  If you are using a ZIP drive, then make  sure  that  the  whole
disk has
  been partitioned as a Linux native partition then start taper:

       taper -T removable -b /dev/sda1

  Substitute  /dev/sda1  with  the device name of your ZIP drive.

  based on ftape are NOT capable of doing this, however,  zftape,
is able
  to do quick fast forwards, as are most SCSI drives.

  With  ftape, therefore, the only way to find the next volume is
  rewind the tape to the beginning, and then forward to  the  de­
  volume.  As  you  can imagine, this constant rewinding and for­
warding can
  take quite a while.

  By default, taper assumes  that  zftape,  SCSIs  and  IDE  tape
drives can
  do  a quick fast forward, while removable and ftape tape drives

  To test whether your drive can do quick fast forwards, go  into
  utilies  menu and run the Test fast fsf program which will tell
you if
  your drive supports quick fast forwards or not. Note that taper
  overwrite all the data on the tape used for the test.

  If  you  find  that  your tape drive doesn't support quick fast
  you will have to change the appropriate preference.

  10.  Can seek

  Some tape drives support a seek ioctl which allows  positioning
of the
  tape  drive  at  a  particular  block. This makes restore a lot
  since taper can calculate which block a file(s) lies on an  ad­
  straight to that block.

  By  default, taper assumes that zftape, and SCSI drives support
  ioctl while removable,ftape and IDE don't.

  You can test if your tape drive supports seek  by  running  the
Test can
  seek utility and changing the appropriate preference.

there is
  no  program available to low level format a tape, and thus, you
  have to rely on DOS/WIN/OS-2 programs to  do  so.  If  you  are
planning on
  using  taper, then you do not need to worry about step 2, since
  will take care of that for you. If you are not going to be  us­
ing taper
  on  that  particular tape, then you will need to do a mt erase.
  that if you buy pre-formatted tapes (which I'd STRONGLY  recom­
  since  formatting  can take 2-3 hours), then you by-pass step 1
  you still have to prepare the tape for Linux.

  People with SCSI drives (esp DAT) may not need to format  tapes
for use
  under Linux. See your tape drive documentation for details.
  Similarly,  you may not need to do step 2. Those drives that do
  require step 2 may still require some information to be written
on the
  tape  before  they  will work correctly under taper, therefore,
  mktape from the utilties menu before running tape. You can  use
  test  make  tape  option from the utilities menu to see if your
  drive needs to have mktape run on new tapes.  It  is  important
that you
  put a brand new tape in the tape drive when testing.

  STOP  PRESS:  The  new  ftape drivers (versions greater than or
equal to
  3.03) do not require tapes to be  erased,  however,  the  older
ones do.
  Therefore, if you use the new ftape driver, you can set this
  preference OFF.

  In addition, the new ftape driver can format tapes but it still
  time - save yourself a headache - buy preformatted tapes.

  --erase-tape-off to tell taper  that  your  tape  doesn't  need
  This  is  the  default behaviour if you have started taper with
  type scsi.

  taper has an option of trying to detect the  /proc  system  and
  it  when doing the backup. Normally, the /proc system is on de­
  number 1. If your /proc system is on another device,  then  you
can tell
  taper this with the -j (--proc-device) option, or preference.

  If  you are not sure what device your /proc is mounted on, then
run the
  program which_device which is in the utilities menu.  Give  the
  /proc  (or whatever name your /proc is) and taper will tell you
  device your /proc is mounted on.

  Before using taper, it is a good  idea  to  confirm  that  your
/proc is on
  device 1 and if it isn't change the appropriate preference.

  13.  Compression

  There are several compression methods available.

     External compression - type 1
        This  method  calls an external compression program to do
        compression.  The default is  set  to  gzip  but  can  be
changed in
        the defaults.h file at compile time. The compression pro­
gram is
        expected to read the file from standard input  and  write
        compressed output to standard output. If your compression
        program doesn't do this, you  will  have  to  modify  the

     Internal compression - type 2
        This  is a very good compression method - it is very fast
        reasonably good at compression. Because of  this,  it  is
        default  compression  method. The only problem is that is
uses an
        extra 2MB of memory which can degrade system  performance
        heavily loaded machines.

        produce  compressed  files  that can be read by gzip. You
        taper to read the archives.

  In summary then:

  o  Memory use, type 2 > type 3 > type 1.

  o  Speed, type 2 > type 3 > type 1.

  o  Compression ratio, type 3 > type 1 > type 2.

  You should use compression 2 unless you  have  a  very  heavily
  system or less than 4MB of RAM.

  If taper is still too memory hungry for you, try the following:

  o  Turn off triple buffering

  o  In defaults.h, reduce the size of DEFAULT_TR_SIZE

  o  Don't use use compress-type set at 2 because this is a  very
     hungry  compression  (but  also  the  quickest  of the lot).


     type set at 3 is a good alternative.

  o  In defaults.h, change the line

       #define COMPRESS2_BUFFER_SIZE 1000000


       #define COMPRESS2_BUFFER_SIZE 1

  You will not be able to use compress-type 2, but if memory is a
  lem, you shouldn't be using this anyway.

  o  In defaults.h, add the following line:

  between  options, press the up or down arrow (or left & right).
  select and option, press the ENTER key.

  taper accepts the following command  line  options.  Note  that
there are
  two  formats  for  options  -  short (one letter) and long (GNU
  Either one (or a mixture of both) can be  used.  Alternatively,
  can be stored in a preference file (see below for details).

  14.1.  Command line options

     --tape-type (-T)
        which tape drive you are using. There are three valid op­

           scsi drive

           ftape based tape drive

           zftape based tape drive (or ftape version >= 3)

           ide based tape drive

           a regular file on the hard disk

           a device that needs mounting, eg. floppy disk

        This option must be specified.  NB:  Only  the  bracketed
letter of
        the option is required.

     --help (-?)
        prints help on command line options

     --append-on (+a)
        Append files to archive if it exists. Default.
     --append-off (-a)
        Overwrites existing archive if found.

     --set-ownership-on (+B)
        After  restoring a file, restore the ownership attributes
of the

     --set-ownership-off (-B)
        Don't attempt to set the ownership attributes of  a  file

     --tape-name file (-f) file
        use file as the rewinding archive file. If not specified,
        use the file specified in the environment variable  TAPE.
You can
        use a networked format like tar (eg. myhost.com:/dev/tape
to use
        the tape drive on myhost.com).

     --ntape-name file (-n) file
        use file as the non-rewinding archive file. If not speci­
        will  use  the file specified in the environment variable
        You can use a networked format like tar (eg.
        myhost.com:/dev/tape  to  use  the  tape  drive  on   my­

     --both-devices file (-b) file
        equivalent  to -n file -f file useful when not using tape
        but archive files.  You can use a networked  format  like

tar (eg.

        myhost.com:/dev/tape   to  use  the  tape  drive  on  my­

     --exclude-files file (-F) file
        a list of files not to include in the backup. Consists of
        series of suffixes to exclude separated by spaces.  It is
        case sensitive (ie. .o is the same as  .O)  For  example,
        default  setting of ".o ~" excludes all files that end in
.o and
        all files that end in ~ .
        checksum is encountered, will  try  to  continue  without

     --compress-type (-c) num

        0  No compression

        1   Use  an  external compression program. The program to
use is
           hard  compiled  and  can   be   changed   by   editing
defaults.h.  The
           default is set to use gzip.

        2   Use the internal compression program which is similar
           compress. It doesn't provide as good a compression  as
           but it is much quicker. Note that this compression us­
es about
           2MB of RAM extra so on heavily loaded machines, it can
           degrade performance. Default.

        3   Use the internal compression program which is similar
           gzip. It provides the same  level  of  compression  as
gzip and
           is  much quicker than the external version.  It is not
           quick as option 2, but much faster than 1.   In  addi­
tion, it
           doesn't  use  anywhere  near the memory or system load
that 2

     --exclude-compress (-X) file
        Specifies which group of files to exclude from  compress­
        Comprises a string of suffixes separated by a space - eg.
        .gif'' would exclude files ending in .gz and .gif.  It is
        case  sensitive  (ie.  JPG = jPg etc..)  Default is ``.gz
.gif .Z
        .zip .jpg .bmp''

        gzip is used for compression. It assumes that gzip is  on
        path. If you use another compress program, change the en­
try in
        defaults.h and recompile.
        your  files  may be in /usr/local/src/xzy with nothing in
        /usr/local or /usr/local/src. When you select  /usr  from
the top
        restore directory, you will automatically be placed in to
        /usr/local/src/xyz where the files are, and the empty
        directories will be skipped. Default.

     --auto-descend-off (-D)
        Turn the above off.

     --prompt-archive-on (+e)
        When selecting  restore,  prints  a  list  of  all  known
archives and
        the  user  can select which one of these to restore from.


     --prompt-archive-off (-e)
        When selecting restore, automatically selects the archive
in the
        tape  drive  (or regular file). User not given the option
of which
        archive s/he would like to restore from

     --can-seek-on (+E)
        Tells taper that your tape drive supports  a  seek  ioctl
        positioning  to  a  particular  block. Default depends on
tape drive

     --can-seek-off (-E)
        You tape drive doesn't support an ioctl  for  positioning
to a
        particular  block.  Taper will use reads to position. De­
        depends on tape drive type.

     --volume-title (-g) title
        Title of volume. Default is  NULL.   Only  applicable  in

     --get-blocksize-on (+G)
        If this option is defined, then after taper opens a tape,
        tries to get the block size using an ioctl call. This  is

     --soft-links-on (+h)
        With soft links, store the file, not the link.

     --comp-head-start (+H) minutes
        It  is  useful  for taper to always have a full buffer of
        available to send to the tape  drive  so  that  the  tape
drive never
        has to sit and wait. This can be a problem if compression
        taking a long time. By giving the compression  program  a
        start, you can try and ensure that taper always has data
        available  to  write.  A  good  starting number for large
backups is
        10 minutes. Default is 0.

     --info-files path (-i) path
        directory where archive information files are saved. Also
        file sets are saved. Default ~/taper_info).

     --compress-info-on (+I)
        turns  on  compression  of info files. Automatically will
        &after  creation  and  will  decompress  when   required.


     --compress-info-off (-I)
        Don't compress info files.

     --proc-device (-j) num
        This  specifies  the  device  number of the /proc system.
This is
        avoid backing up of the /proc filesystem which is a  run­
        filesystem used to store the current state of the operat­
        system. If this value is set to 0, then no checking is
        performed. The default value is 1 (which  is  the  device
number of
        the /proc filesystem under Linux).

     --min-before-seek (-J) num
        When  restoring, if the tape needs to be advanced by less
        is  set,  taper will try and erase the tape using a stan­
dard ioctl
        call. Floppy tape drives (those based on ftape and zftape
        require this option to be set.

     --erase-tape-off (-k)
        Will  not  try to erase a tape before writing new data to
        Most SCSI drives do not require erasing, so you  can  use
        option for them.

     --illegal-end-of-tape-off (-K)
        Tells  taper  that  your tape drive correctly handles the
end of
        tape condition. Use the utility test end of tape  to  see
if your
        tape drive handles this properly. Default.

     --illegal-end-of-tape-on (+K)
        Tells  taper  that your tape drive doesn't handle the end
of tape
        condition as per BSD semantics. Use the utility test  end

of tape

        to see if your tape drive handles this properly.

        When  taper  encounters an error in the tape, it asks you
        this signifies an end of tape or a real error.

     --log-file (-l) file
        name of log file. Default ~/taper_log.

     --log-level (-m) number
        logging level (0 = no logging..4 = all). Default = 2.

     --size-dirs-on (+M)
        When you select a directory in backup, it will  calculate
        directory  size.  This  may take a while for big directo­

     --size-dirs-off (-M)
        No sizing of directories on selection. Quicker, but no
        indication of size of backup being contemplated.

     --overwrite (-o) num
        level of overwrite

        0 - no overwrite.
           If the file exists on the hard disk, then it is not

        1 - more recent overwrite. Default.
           If the file exists on the hard disk, it is only  over­
           if the file on the backup device is more recent

        2 - unconditional overwrite.
           The file on the hard disk is always overwritten

     --tape-overwrite-on (+O)
        When  doing unattended backups, if a tape contains unrec­
        data, then if this option is set, then the tape is  auto­

     --tape-overwrite-off (-O)
        When  doing unattended backups, if a tape contains unrec­
        data, then the tape is not overwritten -  the  backup  is
        and a message is mailed to the user. Default.

     --preference-file (-p) file
        Name of preference file

     --tmp-dir (-P) dir
        Specifies  the  directory where temporary files are to be
        Default is /usr/tmp.

     --only-volume (-q) num
        Tells restore/backup to only show only  volume  'num'  in
        window. Default is 0 which means show all volumes.

     --fast-fsf-on (+Q)
        Quick  fast  forwards  are  enabled.   See the section of

     --exclude-dirs (-R) path
        which directories to automatically exclude from the back­
        process.  The string consists of a list of space separat­
        directories. Note that the selection  is  recursive.  For
        if you exclude list was "/tmp", the contents of /tmp will
not be
        backed up. Also, none of the  directories  in  /tmp  (eg.
        will  be  backed  up.  Users of netscape may also want to
put their
        cache directory on the exclude list  (  /.netscape/cache)
        this is where netscape stores its list of recently visit­
        locations and is a waste  to  backup.   Default  is  "tmp

     --strip-number (-s) number
        remove  number  leading  pathnames.  When backing up, the
        pathname is stored in the information file  (and  on  the
        You have the option of removing number leading paths when
        restoring. For example, if the file backed up was
        /home/yusuf/taper/README, by specifying -s  2,  the  file
        appear in the restore menu as taper/README. If -s1 was
        specified, the file will appear as yusuf/taper/README.

        If  there are more strips than paths (eg. specifying -s 6
in the
        above example), then  the  filename  only  is  used  (eg.

        The  value  -s 99 is a special value and tells restore to
work out
        the optimum number of  strips  based  on  common  leading

        The default is -s 99 (ie. auto strip).

     --set-blocksize-on (+S)
        If  this  option  is  defined,  then before taper erase a
tape, it
        tries to set the block size using an ioctl call. This  is
        Title  of archive. Default is NULL.  Only applicable when
        is being created for the first time. If supplied when do­
ing an
        archive append, then it is ignored.

     --incremental-on (+u)
        When  doing  a  backup,  only backup those files selected
which are
        more recent  than  the  files  that  are  on  the  backup

     --incremental-off (-u)
        When doing a backup, backup all files selected.  This op­
tion can
        be overriden when selecting files for backup.

     --unattended-file (-U) file
        Gives the name of a file/directory to  be  backed  up  in
        mode.  If  the filename begins with a @, then it is taken
to be
        the name of a file set, otherwise, it is a file.  If  the
        letter of the filename is a '!', then the file is exclud­
        rather than selected. You can use as many -U as you  like
on the
        command line.

     --recent-restore-on (+w)
        When  doing  a restore, restore the most recent file with
        given filename.  For  example,  if  /etc/hosts  has  been
backed up
        twice  in  different  volumes,  restore the file which is

     --recent-restore-off (-w)
        When doing a restore, restore the file that was  selected
- for
        example,  if you selected /etc/hosts in volume 1, this if
        file  that  will  be  restored,  even  if  there  is   an
/etc/hosts in
        prints  version being used. Also prints the options taper
        compiled with

     --unattended-id (-V)
        when appending to a backup in unattended  mode,  if  this
value is
        not  -1, then taper will check that the tape in the drive
        to this archive ID before appending. If  another  archive
is in
        the  drive, then the backup will not be made.  Default is


     --block-size (-x) num
        The size of a block. Apart from the tape header, data is
        transferred to the tape device in blocks of  'num'  size.
        default  is  28K. If you use a SCSI, see then note above.
Num is
        in bytes. Note that this value MUST NOT exceed  the  size
        DOUBLE_BUFFER in defaults.h.

     --use-eom-on (+y)
        Uses the ioctl eom to position to end of tape rather than

     --use-eom-off (-y)
        Uses multiple fsf to position to end of tape. Default.

     --min-free (-Y) num
        Specifies the minimum amount of free disk space that must
        before a file is compressed. num is in kilobytes. Default



     --prompt-dirs-on (+z)
        Turns on  confirmation  when  selecting  directories  for
backing up.

        detects the end of tape. Default is 0 (auto-detect).

  14.2.  Backup Module

  Select the backup option from the taper menu.

  Four windows are displayed:

  The top left represents the file system (hard disk) and you can
  it using the arrow keys. To enter a directory, press ENTER when
  highlight is on that directory. To include a file/directory  in
  backup,  press  's'.  Selecting a directory will select all the
files in
  the directory recursively. To unselect a file/directory,  press
'u'. If
  the  file  is  only selected because it's directory is selected
(eg. if
  you select /usr/john, then /usr/john/prefs  is  indirectly  se­
  then  you  must  exclude the file/directory.  Pressing 'e' will
  the file/subdirectory from the backup.  Pressing 'd' will  show
  about  the  file  the highlight is on.  Pressing 'j' will allow
you to
  jump to a particular directory.

  The top right window shows what is currently  on  the  archive.
You can
  use  the  arrow keys to move the display up/down.  If the entry
is in
  brackets, this means that this is an exclusion.   If  there  is
  archive,  you  can move the arrow keys down to a file/directory
  press 's' to select this entry.

  The bottom left window shows the files that you  have  selected
  backup.   To unselect a file that you have selected for backing
  move the highlight to the file you  wish  to  remove  from  the
backup set
  Pressing 'q' will abort backup

  You  can  abort a backup by pressing q or Q while the backup is
  made. This will cleanly stop backing up.

  14.2.1.  Backup modes

  There are two modes for backup - full and incremental. The  de­
  incremental mode (which can be changed by changing the options,
  preference file or command line). In incremental mode, when you
  a  file  for  backing up, taper looks at what is on the archive
  If the file you have selected for backup  is  more  recent  (or
  exist on the archive) than the one on the archive, it is backed
up: if
  the file you have selected for backup is the same or older than
  one on the archive, it is not backed up. For directories, taper
  each file in the directory recursively. To see if a  file  will
  backed up, look at it's size in the selection (bottom) window -
if it
  is zero, it means that taper will not back up that file.

  In full mode, taper backups the file regardless  of  what's  on

  The  backup  mode  can be changed for each file selection. Move
  highlight in the selection window  to  the  file  you  wish  to
change and
  then  press  's'.  To the left of the filename is an 'I' if the
file is
  to be saved as incremental, or 'F' if it is full.

  14.3.  Restore

  Select the restore option from the taper menu. If you have  se­
  the  'prompt  archives'  option  (default), then taper prints a
list of
  all the archives it knows about and lets you select  which  one

  Three windows are displayed:

  The  top  left window shows details of what is currently on the
  You can move around using the arrow keys. To enter a directory,
  ENTER when the highlight is on that directory. To select a
  file/directory for restoration, press 's'. Selecting a directo­
ry will
  select all the files in the directory recursively. Pressing 'd'
  show  details  about the file the highlight is on. Pressing 'j'
  allow you to jump to a particular directory.

  The top right window shows how the archive was constructed (ie.
  files/directories  were selected for inclusion in the archive).
  entry in brackets indicates that this was  an  exclusion.   You
can use
  the  arrow  keys to move the display up/down. You can press 's'
when you
  are on a file or directory to select that  particular  file/di­

  The bottom window shows the files that you have selected for
  restoration.  To unselect a file that you have selected for
  restoration  up, move the highlight to the file you wish to re­
move from
  the restore set and then press 'u'.

  Pressing TAB moves between the windows.  Pressing 'h' will dis­
play a
  help  screen.   Pressing 'f' will finish selection and commence
  Pressing 'q' will abort backup

  While the restore is in progress, you can stop it by pressing q
or Q.

  14.3.1.  Restore modes  Full restore

  If  taper  cannot  find an info file for the tape in the drive,
then it
  a  file  for  restoration, taper automatically selects the file
which is
  on the latest volume  (eg.  you  may  have  three  volumes  and
  is  on  each.  Even  if you select the /etc/passwd in volume 1,
taper will
  automatically select the volume 3 file, not the volume 1 file).
  is  indicated  by  an 'M' in the volume column of the selection
  Note that even if you are in a restricted  volume  view  (using
  vol),  most  recent  restore  will still automatically find the
  volume of your file on the archive.  Fixed volume restore

  In fixed volume mode, whichever file you select is the one that
  restored (eg. in the example above, the /etc/passwd on volume 1
  be restored, despite the fact that the /etc/passwd on volume  3
is more

  To toggle between fixed volume & most recent mode for a partic­
  file selection, press 's' when on the selected file in the  se­

  14.4.  Recreate info file

  Select the recreate info file option from the taper menu.

  This  recreates  archive information files given an archive. It
  checks that the checksums of all the files are valid.  Any  er­
rors are
  printed to the log file.

  Basically,  it  looks  for  an archive on the devices given. It
prints the
  archive ID and archive title on the screen,  then  prints  each
file as
  continue the mkinfo or you can tell taper to assume  that  this
is the
  end  of  the backup. This is useful if a backup got killed by a
  failure or something.

  During the traverse, you can press q or Q to stop it. If you do
  you  will  corrupt  your  info file and you will have to re-run
mkinfo to
  restore your info file.

  Mkinfo may return errors when trying to advance to volumes that
do not
  exist. Do not worry about this - just select abort and the info
  will be correctly constructed.

  14.5.  Verify archive

  This option goes through an archive and checks that  what's  on
  archive  matches  what  is on the hard disk, byte by byte. If a
file is
  on the archive but not on the disk, it is ignored. Any discrep­
  are  printed  to the log file. It also checks the checksums and
if a bad
  checksum is encountered, like mkinfo, you have  the  option  of
trying to
  continue or to assume that the rest of the backup is bad.

  14.6.  Utilities

  14.6.1.  Make tape

  This  prepares  a  tape for use by taper. This is not needed by
zftape or
  ftape tape drives. Some SCSI drives need this.

  14.6.2.  Test make tape

  This tests whether your tape drive needs to have make tape  run
on new
  tapes.  It is important that a BRAND NEW tape is used when run­

  device (or -J) option. The default is 1.

  14.6.4.  Test fast fsf

  Some tape drives can quickly advance  between  volumes  on  the
tape. This
  also  quicker  restoration  of files from multiple volumes. Use
  utility to see if your tape drive can use fast fsf.

  14.6.5.  Test can seek

  Taper can use the seek ioctl to make seeking for files  in  re­
store a
  lot  quicker. Basically, the block on which the file should lie
  calculated and then a seek is issued  to  quickly  advance  the
tape drive
  to  this  block. However, your tape drive must support the seek
  for this to happen.

  You can use this utility to check if your tape  drive  supports
the seek

  Before  using  test  can seek you must ensure that you have the
  setting for test fast fsf.

  14.6.6.  Test end of tape

  According to BSD semantics, when a program requests  a  further
  from  a  tape when at the end of the tape, it should return ei­
ther a 0
  error or a -1 error with errno set at ENODATA or ENOSPC.

  Some tape drives do not do this, but return an I/O error  which
  that  taper doesn't know whether an end of tape is reached or a
  I/O error is encountered.

  Therefore, this utility will check to see if  your  tape  drive
  the end of tape condition legally. If it does, well and good.

  number of volumes you wish to delete. Taper then deletes these
  volumes.  Note  that once a volume is deleted, it cannot be re­

  14.6.8.  Reindex info file

  To speed up access, the info file cluster contains a couple  of
  files.  These files are arranged as m-tree indexes. Occasional­
ly, these
  index files can get corrupted. If you think this has  happened,
you can
  reindex the files.

  Also,  if  you  want to restore your files onto a different ma­
chine, and
  do not want to recreate the info files on that machine, you can
take a
  copy  of  the info files to the new machine. Rather than taking
all four
  of them, you can take the two main files, and rebuild  the  in­
  using this option, on the new machine.

  14.6.9.  Look for recursive links

  It  is  possible on some systems that you have recursive links.
  example, you may have a soft link that  points  to  "./".  This
leads to a
  recursive  situation which does not matter if you do not follow

  If you follow links (via the  soft-links  option),  then  taper
will crash
  as it encounters this link. Running this utility identifies any
  recursive links you may have so that you can either tell  taper
not to
  use hard links, or so you can remove the offending link.

  Just enter the starting directory you wish to test - taper will
  for recursive links and tell you if you have any. In some situ­
  taper  will  seg fault at the link. This is not a problem since
you will
  know where the offending link is by when it seg faults.

       tape header
       volume header

       file header   )  repeated for each file
       file          )  in the archive

  Once  a  corruption occurs, you have to find the file header of
  first file beyond the corruption and tell taper where it is and
  taper can continue to recover files.

  In this utility, you tell taper where you want to start the re­
  (in bytes relative to the beginning of the archive). Taper will
  print the filename and file header for confirmation. If you get
  garbage here, then you are not positioned on  the  file  header
and you
  must continue trying until you are.

  Once  you  are correctly positioned, say YES and taper will try
  recover files beyond the corruption point.

  The easiest way to find the correct position is to use an  edi­
tor such
  as midnight commander to scan the file until you can locate the
  correct location.

  If you are using a tape drive (especially  on  a  volume  other
than the
  first),  it  is  a  good idea to read the tape data into a disk
file using
  dd and then work with the file, rather than  the  tape.  It  is

  If  you are trying to recover data from a volume other than the
  one, you must position the tape (using  the  non-rewinding  de­
vice) on
  the  volume you wish to recover from, read the tape data into a
  file and then work on this disk file.

  When you are working with the disk file, start taper using  the

-T l


on, the
        files  will  be appended to the archive. If --append-off,
then the
        existing archive will be overwritten.

        If unrecognized data exists on the tape, then if --erase-
        on,   the  unrecognized  data  will  be  overwritten.  If
        off, the data will not be overwritten and the backup ses­
        will be aborted.

        If this option is not -1, then taper will only append the
        this archive  if  it  is  archive  "id".  If  some  other
archive's tape
        is in the drive, the backup will not be made and the user
        be mailed about it.

  It is important that these preferences are correctly set, since
  is running in unattended mode, you will not be prompted for any
  confirmation, rather the action will just happen.

  To specify the files/directories for backup, use the -U (or
  --unattended-file) command line options. If the filename begins
with a
  @,  then  taper  interprets  this  to mean that a filename is a
fileset and
  reads in the appropriate fileset.

  The files/directories are backed up either as full  backups  or
  incremental  backups - it depends on what you have set via com­
mand line
  options, or preference files. If  you  haven't  specified  any­
thing, then
  by default, incremental backups are used.

  With  unattended backups, it is not possible to have multi-tape
  because taper can't prompt you to insert the next tape. If  the
end of
  the  tape  is  encountered, taper will stop the backup and send
you a

  will  cause taper to run at 20:10 (8.10pm) every day, using the
  named set.

  16.  File Sets

  You may have a particular set of files or directories  that you
  wish  to backup - eg. /etc/passwd, /usr/local/bin, and /usr/lo­
  Rather than selecting these files & directories every time  you
want to
  make  a backup, you can select them once and then save the par­
  selection to a file set. Next time you wish to backup this par­
  set of files, you need only load in the file set and taper will
  automatically select the files for you.

  To save a file set, press S in either backup  or  restore.  You
will then
  be prompted for a name to give to your file set.

  To restore a file set, press L in either backup or restore. You
  be presented with a list of known file sets. Select  which  one
you want
  using  the arrow keys and ENTER and taper will load in the file

  16.1.  File Set format

  A file set file simply is an ASCII  file  that  contains  three
lines for
  each entry selected.

  The first line is a capital I or E. I indicates the entry is to
  selected. E indicates the entry is to be excluded.  the select­

  The next line is the selection.

  The  third  line is null (this contains a blank for future sup­
port of

     o  zftape

     o  ftape

     o  reg-file

     o  ide

        the name of your preference file

        the name of your log file

        the level of logging taper should do

        the directory in which your info files and set files  are

        the name of the rewinding tape device

        the name of the non-rewinding tape device

  18.  Preferences

  Rather than having to issue a whole lot of command line options
  time you wish to run backup/restore, it is  possible  to  store
  used  options  in  a preference file. Individual users can have
their own
  preference file in their ~ directory, or there can be a global
  preference file in /usr/local/etc. Both backup &  restore  look
for a
  preference file in the following sequence:

  1.  Check  if a filename is given via -p (or --preference-file)
     line option

  2.  Check if a filename is given via environment  variable  TA­

  3.  Check if ~/taper_prefs exists. If it does, use this

  It is possible to change and save preferences within taper. Se­
lect the
  appropriate option from the taper menu (ie. either  global  op­
  backup  options  or  restore options). To move between options,
press the
  up or down arrows (or left and right). To change an option, use
  left  and  right  arrow keys. When you have finished, press F10
  change this from F10, change the entry in defaults.h).

  18.2.  Saving preferences

  There are two methods of saving your preferences. One is to a
  preference file  or, the second is to a command line  file.  To
save to
  a  preference  file,  select  the  appropriate option. Give the
filename of
  the preference file (default is ~/taper_prefs) and  then  press
F. Next
  time  you  start  taper, the preferences that you have selected
will be
  automatically loaded.

  The second method of saving is to  a  command  line  file.  The
saves the
  preferences  you  have  selected  to a shell script. Select the
name of
  the shell script (default is start_taper). To invoke taper  us­
ing the
  selected  preferences, issue a `sh start_taper'. This is useful
if you
  have temporary (or multiple) configurations and you don't  want
  overwrite your existing preference file.

  18.3.  Preference file format

  The format of a preference file is a text file with one prefer­
ence per
  line.  A preference is given:


  18.4.  Special preferences

  The  following preferences can be prefixed by a letter to indi­
  which tape drive they belong to.

  o  set-blksize

  o  get-blksize

  o  erase-tape

  o  fast-fsf

  o  block-size

  o  tape-name

  o  ntape-name

  o  can-seek

  For example, if you have the following line in your  preference

  block-size = 12300 z-block-size = 43122 z-tape-name = /dev/qft0
  ntape-name = /dev/nqft0 s-tape-name = /dev/scsi s-ntape-name =
  /dev/nscsi -z

  then the block-size is set to 43122 only if the  zftape  driver
  selected, otherwise, it is set to 12300. Also, the device names
  set to /dev/qft0 & /dev/nqft0 if the zftape driver is selected,
or to
  /dev/scsi &/dev/nscsi if the scsi driver is selected.  If the
  preference  given is block-size=43122, then the block-size will
be set
  to 43122 regardless of the tape driver selected.

  19.  Screen Colours

  from the command line, or

       color-normal = yellow,blue

  in a preference file.

  Below is a list of the possible colors to change

        title bar (blue on white)

        main screen   (white on blue)

        dialog boxes    (white on red)

        status boxes    (white on red)

        screen used to select files  (black on green)

        screen used to show selected files (white on blue)

        screen used to show unselected files (white on blue)

        status bar at bottom of the screen (blue on white)

        screen used to show help screen (black on cyan)
        screen  used  to  show  current volume contents (white on

        screen used to get data (eg.  change  preferences,  enter
        title) (white on black).

  20.  Multiple Tape Backups

  20.2.  Reading

  End of tape is indicated by one of:

  o  error code == -1 && errno == ENOSPC

  o  error code == -1 && errno == ENODATA

  o  returned less bytes than we asked for

  End of volume is indicated by

  o  zero bytes read

  o  error code == -1 && errno == ENODATA

  This  is  what ftape does for floppy controller tape drives. If
  using another sort of tape drive, then the multiple tape backup
  feature  will only work if the above is true. If it is not true
and you
  are able to work out what your particular tape drive  does,  if
you send
  me details, I will try and incorporate it into future releases.
  especially interested in users of SCSI drives since I  have  no
  to them.

  If  your  tape drive doesn't support the above, you can use the


  size option to tell taper the size of  your  tape  drive.  Tape
size is
  specified  in  megabytes,  eg.  --tape-size 120 means that your
tape is
  120MB, --tape-size 250 means that your tape is 250MB. Note that
  must  be  uncompressed  sizes. You must specify the same number
  time you start taper - you can put it in your  preference  file
  necessary.  If  you don't specify the same number, you will get
  spurious, unpredictable results. Note that you should  subtract
  10%  from  the manufacturers stated size to account for format­
ting etc..
  (eg. for a 120MB tape, tell taper that it is 108MB).

     define the TAPER_BIG_ENDIAN makefile option, taper will con­
     everything read from the tape to big endian so that your ma­
     can use it. Even if you make a backup from a big endian  ma­
     the data on the tape will be in little endian format.

  o   The  info  files are also stored in little endian format so
that they
     should be portable accross different architectures.

  o  Data types are defined  in  config.h.   Taper  uses  32  bit
signed &
     unsigned  data, unsigned 16 bit, and 8 bit signed & unsigned
     Change the appropriate types for  your  machine.  Attributes
such as
     gid_t,  uid_t,  dev_t, umode_t, and time_t are hard-coded to
     intel defaults of unsigned short (unsigned 16 bit) and  long
     bits) respectively. If your machine uses different types for
     then you should look at the code in tapeio.c,  specifically,
     functions  tape_read_fi  and  tape_write_fi and modify it to
     the intel types to a type applicable for  your  machine.  If
     machine  uses longer data types than an unsigned 16 bit used
     intel linux, then, for the time being, you  are  in  strife.
In a
     future  taper version, I intend to move away from the 16 bit
     and use my own representation. However this will  mean  that
     archives are incompatible with the new format, so I won't be
     this for a while.

  o  Since version 6.3, taper aligns all structures on  addresses
     are  divisable by 4. It does this by padding out the strings
so that
     they have a length divisable by 4. Then an offset  is  added
     is the number of bytes that the structure needs to make it a
     of a multiple of 4). Versions less than 6.3 do  not  support

  Maximum length of total pathname is set  by  MAXNAMLEN.  It  is
  set  to  255 bytes long. If you have a very long pathname, then
you may
  cause taper to segfault.

  If a file grows while taper is trying to back it up, only the
  beginning part of the file is backed up (specifically, the num­
ber of
  bytes the file was when taper started to back up this file) and
  rest is lost. This is  because  of  inadequate  mandatory  file
locking. I
  know  that  this  is  being worked in the kernel and hopefully,
when the
  kernel code pertaining to this is stable, I can implement it in

  23.  Bugs

  Please report bugs to me at the address below. If the bug caus­
es a
  segment violation or causes the program to crash in  any  other
way, if
  you know how to use gdb, could you re-compile your source using
  Makefile.debug makefile, and tell me what source line the  pro­
  crashed. Also, please tell me what kernel version, gcc version,
  library version, ncurses version you are using.

  As this is a sideline, I may not be able to respond to e-mail
  immediately.  However, if you do not receive a reply within one
  then repost as I may have forgotten about it!

  24.  Major bugs in early versions

  There  was  a bug in taper-5.1.1 when creating archives. If you
made an
  archive with 5.1.1, unfortunately, you will have  to  re-backup
if you
  find that restore doesn't work since it was a pretty major bug.
  However, since taper-5.1.1 was only released a day before 5.1.2
  fixed the bug) was released, hopefully, not too many people are

  archive  and  taper  will recognize the buggy archive and fudge
your info
  file automatically for you.

  I don't believe it - the bug crept back into 5.1.5 - it's  like
a virus
  that won't go away! Anyway, 5.2 corrects it.

  In versions 5.6 to 6.1 (inclusive), there was an obscure backup
  which causes a problem if there were  two  buffers  queued  for
  when  the tape drive was closed. Unfortunately, there is no fix
  this, however, it is a relatively rare bug, and  at  most,  you
will lose
  the  last  two  blocks of the backup. This bug only occurred if
you used
  triple buffering.

  In versions up to 6.1.3, there was a problem with internal com­
  of files > 32K. It was a spurious bug.

  25.  Finally

  Wow!   You  made  it  through  all the 'documentation'! I'm im­

  I would appreciate a short message if you find the program use­
ful and
  are using it. This will allow me to work out whether people are
  it and whether to continue development. If you could also state
  machine  you  are  using,  hard  drive/floppy controllers, tape
drive type,
  SCSI card etc.., then this will help me to maintain a  compati­

  Happy backing up,

  Yusuf Nagree

An undefined database error occurred. SELECT distinct pages.pagepath,pages.pageid FROM pages, page2command WHERE pages.pageid = page2command.pageid AND commandid =

Help us cut cost by not downloading the whole site!
Use of automated download sofware ("harvesters") such as wget, httrack, etc. causes the site to quickly exceed its bandwidth limitation and therefore is expressedly prohibited. For more details on this, take a look here



Security Code
Security Code
Type Security Code

Don't have an account yet? You can create one. As a registered user you have some advantages like theme manager, comments configuration and post comments with your name.

Help if you can!

Amazon Wish List

Did You Know?
You can choose larger fonts by selecting a different themes.


Tell a Friend About Us

Bookmark and Share

Web site powered by PHP-Nuke

Is this information useful? At the very least you can help by spreading the word to your favorite newsgroups, mailing lists and forums.
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters. Articles are the property of their respective owners. Unless otherwise stated in the body of the article, article content (C) 1994-2013 by James Mohr. All rights reserved. The stylized page/paper, as well as the terms "The Linux Tutorial", "The Linux Server Tutorial", "The Linux Knowledge Base and Tutorial" and "The place where you learn Linux" are service marks of James Mohr. All rights reserved.
The Linux Knowledge Base and Tutorial may contain links to sites on the Internet, which are owned and operated by third parties. The Linux Tutorial is not responsible for the content of any such third-party site. By viewing/utilizing this web site, you have agreed to our disclaimer, terms of use and privacy policy. Use of automated download software ("harvesters") such as wget, httrack, etc. causes the site to quickly exceed its bandwidth limitation and are therefore expressly prohibited. For more details on this, take a look here

PHP-Nuke Copyright © 2004 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Page Generation: 0.26 Seconds