Provided by: dar_2.5.14+bis-1_amd64 bug


       dar_split - dar helper to split an archive over several tapes


       dar_split { split_input | [-s] split_output } <filename>

       dar_split -v

       dar_split -h


       dar_split  is  to  be  used  with  dar to read or write a large archive from or to several


       dar_split has two modes of operation: split_input and split_output

       split_input         in this mode dar_split  copies  <filename>  to  its  standard  output.
                           <filename>  may  be a special device like /dev/tape or any other inode
                           that has the ability to  access  removeable  volumes.  When  dar_split
                           reaches  the  end  of <filename> it suspends and waits for the user to
                           press the return key in order to continue. In the meanwhile  the  user
                           can  rewind  and  change  the tape. When dar_split is awaken again, it
                           reopens <filename> and sends its content to its standard output as  if
                           it  was  the  continuation of what was read so far before reaching the
                           end of file.

       split_output        in this mode  dar_split  copies  its  standard  input  to  <filename>.
                           However  if  <filename>  is full, dar_split suspends and waits for the
                           user to press the return key in order to continue. In  the  meanwhile,
                           the  user  can  rewind  and  change the tape. When dar_split is awaken
                           again, it reopens <filename> and continues to copy to <filename>  what
                           was not yet written previously.


       -s  is  only  available for split_output mode an leads dar_split to perform sync writes in
       place of normal writes. This has the drawback to drastically reduce performances  but  may
       be  necessary under certain circumstances where the operating system cache reports a write
       operation as successful while the cache underlying medium is already full.


       creating an archive over several tapes

              dar -c - ...possibily other dar options... | dar_split split_output /dev/tape

       Here dar generates the archive to its standard output  which  is  read  by  dar_split  and
       copied  to  /dev/tape.  When the tape reaches its send, dar_split asks for the user to hit
       return to continue.

       reading an archive splitted over several tapes

              dar_split split_input /dev/tape | dar -t - --sequential-read ...possibily other dar

       Here  dar_split  reads  /dev/tape  and  sends  its  content to dar which *must* be used in
       --senquential-read mode in order to read an archive from its standard  input  without  the
       help  of  dar_slave.  When  the  tape  reaches its end, dar_split asks for the user to hit
       return to continue.

       Note that dar_split can also be used with tar for the same purpose as with dar:

              tar -cz ... | dar_split split_output /dev/tape

       without -f option nor TAPE environment variable, tar sends  the  tar  archive  to  stdout,
       which get fet to dar_split for slicing

              dar_split split_input /dev/tape | tar -tz

       without  -f  option  nor  TAPE environement variable, tar read the tar archive from stdin,
       however you must specify the correct option  corresponding  to  the  compression  used  at
       archive creation time.

       The  advantage  here is to be able to save a huge dar or tar archive on several tapes that
       could be either partially filled or having different sizes, without having to calculate in
       advance  the  size  of  slices  to  specify.  The drawback is that this implies sequential
       reading for dar (for tar also, but tar cannot do else).

With or without filesystem

       You can use dar_split with floppies, zip/jazz disks or  usb  key  too,  but  it  has  many
       disadvantages  compared  to  the normal way of using this media: doing that way avoids you
       relying on a filesystem, thus you cannot have direct access to file  contents,  which  dar
       knows  how  to  take  advantage  of, and you are instead stuck with sequential read access
       which is long as it requires reading the whole archive (same way as tar does).

       When instead using dar alone in normal mode (non sequential reading mode  using  filenames
       instead  of  standard  input/output),  you  have the opportunity to create redundancy data
       beside dar slices thanks  to  par2,  which  is  not  possible  without  a  filesystem.  At
       restorationt  time,  thanks  to dar archive's catalog, dar can directly seek to the file's
       data    you    want    to    restore,    which    is    very     quick     compared     to
       reading/unciphering/uncompressing the whole archive...

       Note that copying tape contents generated by dar_split to different files which name would
       correspond to dar slices, does not make a valid multi-sliced  archive  because  the  slice
       header  is  missing  in  slices (except in the first). You can however concatenate all the
       pieces of data generated by dar_split and have a valid single sliced dar archive that  you
       can  use  in direct access mode. However attention must be paied not to add any extra data
       after data generated by dar through dar_split (in particular if  the  last  tape  was  not
       full), in that case you are stuck with --sequential-read mode.


       dar_split exists with the following codes:

       0         upon normal execution

       1         syntax error on command-line

       2         could not open source or destination files


       Any signal sent to dar_split except SIG_PIPE will abort the program immediately


       dar(1), dar_xform(1), dar_manager(1), dar_slave(1), dar_cp(1)


       Denis Corbin