1DAR_SPLIT(1)                General Commands Manual               DAR_SPLIT(1)
2
3
4

NAME

6       dar_split - dar helper to split an archive over several tapes
7

SYNOPSIS

9       dar_split  [-b  <bytes>]  [-r <rate>] { [-c <count>] split_input | [-s]
10       split_output } <filename>
11
12       dar_split -V
13
14       dar_split -h
15

DESCRIPTION

17       dar_split is to be used with dar to read or write a large archive  from
18       or to several tapes.
19
20

COMMANDS

22       dar_split has two modes of operation: split_input and split_output
23
24       split_input         in  this  mode,  dar_split copies <filename> to its
25                           standard output. <filename> may be a special device
26                           like  /dev/tape  or  any  other  inode that has the
27                           ability to access removable volumes. When dar_split
28                           reaches the end of <filename> it suspends and waits
29                           for the user to press the return key  in  order  to
30                           continue.  In the meanwhile the user can rewind and
31                           change the tape. When dar_split is awaken again, it
32                           reopens  <filename>  and  sends  its content to its
33                           standard output as if it was  the  continuation  of
34                           what  was  read  so  far before reaching the end of
35                           file.
36
37       split_output        in this mode dar_split copies its standard input to
38                           <filename>.   However   if   <filename>   is  full,
39                           dar_split suspends and waits for the user to  press
40                           the  return  key in order to continue. In the mean‐
41                           while, the user can rewind  and  change  the  tape.
42                           When  dar_split  is awaken again, it reopens <file‐
43                           name> and continues to copy to <filename> what  was
44                           not  yet  written  previously. Pay attention to the
45                           fact that if you don't change the  destination  me‐
46                           dia,  the  continuation of data copy may erase what
47                           was written so far depending on the type of media.
48
49

OPTIONS

51       -s                  this option is only available in split_output  mode
52                           an  leads dar_split to perform sync writes in place
53                           of normal writes. This has the drawback to  drasti‐
54                           cally  reduce performances but may be necessary un‐
55                           der certain circumstances where the operating  sys‐
56                           tem  cache  reports a write operation as successful
57                           while the cache underlying medium is already full.
58
59
60       -b <bytes>          this option makes read and write  system  call  not
61                           exceeding  the  given amount of bytes instead of by
62                           default using the maximum amount  the  system  per‐
63                           mits.  This  may reduce performances as it will re‐
64                           quire dar_split to make more system call to achieve
65                           the same operation, but can cope this way with some
66                           devices that accept only limited  buffer  size  per
67                           system call.
68
69
70       -r <rate>           this  option  limits the transfer rate to the given
71                           value in bytes per second.
72
73
74       -c <count>          this option limit the number of tape dar_split will
75                           read data from. If you know by advance this number,
76                           this avoid you having to  stop  by  hand  dar_split
77                           once  the archive has been fully read. It will stop
78                           once the end of file of the <count> last file  will
79                           be reached. This option is of course only available
80                           in split_input mode.
81
82

EXAMPLES OF USE

84       creating an archive over several tapes
85
86              dar  -c  -  ...possibily  other  dar  options...   |   dar_split
87              split_output /dev/tape
88
89       Here  dar generates the archive to its standard output which is read by
90       dar_split and copied to /dev/tape. When  the  tape  reaches  its  send,
91       dar_split asks for the user to hit return to continue.
92
93       reading an archive splitted over several tapes
94
95              dar_split  split_input  /dev/tape  |  dar -t - --sequential-read
96              ...possibily other dar options...
97
98       Here dar_split reads /dev/tape and  sends  its  content  to  dar  which
99       *must*  be  used in --senquential-read mode in order to read an archive
100       from its standard input without the help of dar_slave.  When  the  tape
101       reaches its end, dar_split asks for the user to hit return to continue.
102
103       Note  that  dar_split can also be used with tar for the same purpose as
104       with dar:
105
106              tar -cz ... | dar_split split_output /dev/tape
107
108       without -f option nor TAPE environment variable, tar sends the tar  ar‐
109       chive to stdout, which get fet to dar_split for slicing
110
111              dar_split split_input /dev/tape | tar -tz
112
113       without  -f option nor TAPE environement variable, tar read the tar ar‐
114       chive from stdin, however you must specify the  correct  option  corre‐
115       sponding to the compression used at archive creation time.
116
117       The  advantage  here is to be able to save a huge dar or tar archive on
118       several tapes that could be either partially filled or having different
119       sizes,  without  having  to  calculate in advance the size of slices to
120       specify. The drawback is that this implies sequential reading  for  dar
121       (for tar also, but tar cannot do else).
122
123

With or without filesystem

125       You can use dar_split with floppies, zip/jazz disks or usb key too, but
126       it has many disadvantages compared to the normal way of using this  me‐
127       dia: doing that way avoids you relying on a filesystem, thus you cannot
128       have direct access to file contents, which dar knows how to take advan‐
129       tage of, and you are instead stuck with sequential read access which is
130       long as it requires reading the whole archive (same way as tar does).
131
132       When instead using dar alone in normal  mode  (non  sequential  reading
133       mode  using  filenames  instead of standard input/output), you have the
134       opportunity to create redundancy data beside dar slices thanks to par2,
135       which is not possible without a filesystem. At restoration time, thanks
136       to dar archive's catalog, dar can directly seek to the file's data  you
137       want  to  restore,  which  is  very quick compared to reading/uncipher‐
138       ing/uncompressing the whole archive...
139
140       Note that copying tape contents generated  by  dar_split  to  different
141       files  which name would correspond to dar slices, does not make a valid
142       multi-sliced archive because the slice header is missing in slices (ex‐
143       cept  in the first). You can however concatenate all the pieces of data
144       generated by dar_split and have a valid single sliced dar archive  that
145       you  can use in direct access mode. However attention must be paied not
146       to add any extra data after data generated by dar through dar_split (in
147       particular  if  the  last tape was not full), in that case you can only
148       read the archive with --sequential-read mode.
149
150

EXIT CODES

152       dar_split exists with the following codes:
153
154       0         upon normal execution
155
156       1         syntax error on command-line
157
158       2         could not open source or destination files
159
160

SIGNALS

162       Any signal sent to dar_split except SIG_PIPE will abort the program im‐
163       mediately
164
165

SEE ALSO

167       dar(1), dar_xform(1), dar_manager(1), dar_slave(1), dar_cp(1)
168
169

KNOWN BUGS

171       http://sourceforge.net/p/dar/bugs/
172
173

AUTHOR

175       http://dar.linux.free.fr/
176       Denis Corbin
177       France
178       Europe
179
180
181
1823rd Berkeley Distribution       June 19th, 2022                   DAR_SPLIT(1)
Impressum