1DAR_SPLIT(1) General Commands Manual DAR_SPLIT(1)
2
3
4
6 dar_split - dar helper to split an archive over several tapes
7
9 dar_split { split_input | [-s] split_output } <filename>
10
11 dar_split -v
12
13 dar_split -h
14
16 dar_split is to be used with dar to read or write a large archive from
17 or to several tapes.
18
19
21 dar_split has two modes of operation: split_input and split_output
22
23 split_input in this mode dar_split copies <filename> to its
24 standard output. <filename> may be a special device
25 like /dev/tape or any other inode that has the
26 ability to access removeable volumes. When
27 dar_split reaches the end of <filename> it suspends
28 and waits for the user to press the return key in
29 order to continue. In the meanwhile the user can
30 rewind and change the tape. When dar_split is
31 awaken again, it reopens <filename> and sends its
32 content to its standard output as if it was the
33 continuation of what was read so far before reach‐
34 ing the end of file.
35
36 split_output in this mode dar_split copies its standard input to
37 <filename>. However if <filename> is full,
38 dar_split suspends and waits for the user to press
39 the return key in order to continue. In the mean‐
40 while, the user can rewind and change the tape.
41 When dar_split is awaken again, it reopens <file‐
42 name> and continues to copy to <filename> what was
43 not yet written previously.
44
45
47 -s is only available for split_output mode an leads dar_split to per‐
48 form sync writes in place of normal writes. This has the drawback to
49 drastically reduce performances but may be necessary under certain cir‐
50 cumstances where the operating system cache reports a write operation
51 as successful while the cache underlying medium is already full.
52
53
55 creating an archive over several tapes
56
57 dar -c - ...possibily other dar options... | dar_split
58 split_output /dev/tape
59
60 Here dar generates the archive to its standard output which is read by
61 dar_split and copied to /dev/tape. When the tape reaches its send,
62 dar_split asks for the user to hit return to continue.
63
64 reading an archive splitted over several tapes
65
66 dar_split split_input /dev/tape | dar -t - --sequential-read
67 ...possibily other dar options...
68
69 Here dar_split reads /dev/tape and sends its content to dar which
70 *must* be used in --senquential-read mode in order to read an archive
71 from its standard input without the help of dar_slave. When the tape
72 reaches its end, dar_split asks for the user to hit return to continue.
73
74 Note that dar_split can also be used with tar for the same purpose as
75 with dar:
76
77 tar -cz ... | dar_split split_output /dev/tape
78
79 without -f option nor TAPE environment variable, tar sends the tar ar‐
80 chive to stdout, which get fet to dar_split for slicing
81
82 dar_split split_input /dev/tape | tar -tz
83
84 without -f option nor TAPE environement variable, tar read the tar ar‐
85 chive from stdin, however you must specify the correct option corre‐
86 sponding to the compression used at archive creation time.
87
88 The advantage here is to be able to save a huge dar or tar archive on
89 several tapes that could be either partially filled or having different
90 sizes, without having to calculate in advance the size of slices to
91 specify. The drawback is that this implies sequential reading for dar
92 (for tar also, but tar cannot do else).
93
94
96 You can use dar_split with floppies, zip/jazz disks or usb key too, but
97 it has many disadvantages compared to the normal way of using this
98 media: doing that way avoids you relying on a filesystem, thus you can‐
99 not have direct access to file contents, which dar knows how to take
100 advantage of, and you are instead stuck with sequential read access
101 which is long as it requires reading the whole archive (same way as tar
102 does).
103
104 When instead using dar alone in normal mode (non sequential reading
105 mode using filenames instead of standard input/output), you have the
106 opportunity to create redundancy data beside dar slices thanks to par2,
107 which is not possible without a filesystem. At restoration time, thanks
108 to dar archive's catalog, dar can directly seek to the file's data you
109 want to restore, which is very quick compared to reading/uncipher‐
110 ing/uncompressing the whole archive...
111
112 Note that copying tape contents generated by dar_split to different
113 files which name would correspond to dar slices, does not make a valid
114 multi-sliced archive because the slice header is missing in slices
115 (except in the first). You can however concatenate all the pieces of
116 data generated by dar_split and have a valid single sliced dar archive
117 that you can use in direct access mode. However attention must be paied
118 not to add any extra data after data generated by dar through dar_split
119 (in particular if the last tape was not full), in that case you can
120 only read the archive with --sequential-read mode.
121
122
124 dar_split exists with the following codes:
125
126 0 upon normal execution
127
128 1 syntax error on command-line
129
130 2 could not open source or destination files
131
132
134 Any signal sent to dar_split except SIG_PIPE will abort the program
135 immediately
136
137
139 dar(1), dar_xform(1), dar_manager(1), dar_slave(1), dar_cp(1)
140
141
143 http://sourceforge.net/p/dar/bugs/
144
145
147 http://dar.linux.free.fr/
148 Denis Corbin
149 France
150 Europe
151
152
153
1543rd Berkeley Distribution August 18th, 2018 DAR_SPLIT(1)