SPLITPIPE(1)
===========
bert hubert <ahu@ds9a.nl>
v0.2, 17 April 2005

NAME
----
splitpipe - spread piped input over a number of volumes (DVD's, CD's etc)

SYNOPSIS
--------
'splitpipe' -o command [--buffer-size, -b] [--debug, -d] [--help, -h]
		       [--label, -L] [--no-prompt, -n] [--verbose, -v]
		       [--version] [--volume-size, -s] 

DESCRIPTION
-----------
splitpipe(1) accepts input, either from files, pipes or sockets and, using a
large buffer for performance reasons, outputs it over one or more volumes.
Volumes can be DVD's, CD's, floppies, hard disks or files.

This allows the operator to make, for example, tar(1) archives larger than a
single DVD.

Volumes contain markers to signify which backup session they belong to, and
their order in the set. Furthermore, a running checksum is kept to guarantee
data integrity.

For the benefit of numbering volumes, the environment variable *SPVOLNUM* is
defined to be the volume number, starting at 1. This variable is visible for
the output program.

Volumes created by splitpipe(1) can be read by joinpipe(1)

EXAMPLES
--------

To backup /home to one or more DVDs:

 # tar cz /home | splitpipe -s dvd  -o 'growisofs -Z /dev/dvd=/dev/stdin'

To restore:

 # joinpipe /dev/dvd | tar xzf -

To store to numbered files of at most 50 megabytes each:

 # tar cz / | splitpipe -s 50000 -o 'cat > backup.$SPVOLNUM'

OPTIONS
-------
--buffer-size, -b::
	Configures the size of the buffer between input and output. In
	megabytes. Defaults to 10.

--debug, -d::
	Give large amounts of debugging output, possibly damaging
	performance

--help, -h::
	Print a helpful message

--label, -L::
	Assign a label to this session. 

--ouput program, -o::
	This specifies a script, either shell, or a program that is called
	for each volume. Mandatory.

--verbose, -v::
	Be verbose, but not overly so. 

--version::
	Print version information


--volume-size, -s::
	Sets the maximum size of volume output to this number of kilobytes.
	Alternatively, a preset size may be specified. Currently defined
	volume sizes are: 'floppy', 'cd', 'cd-80', 'cdr-80', 'dvd' and 
	'dvd-5'. Run 'splitpipe --help' for the most up to date list.

--no-prompt, -n::
	Do not prompt the user to change volumes. Mostly useful when writing
	to files, but might also come in handy with automated disk changers.


BUGS
----
Does not yet allow retrying failed output, even when the failed data is 
still available in the ringbuffer.

AUTHOR
------
Written by Netherlabs Computer Consulting BV, bert hubert, <ahu@ds9a.nl>

RESOURCES
---------
Website: http://ds9a.nl/splitpipe

SEE ALSO
--------
joinpipe(1), splitpipe(5)

COPYING
-------
Copyright (C) 2005 Netherlabs Computer Consulting. Free use of this software
is granted under the terms of the GNU General Public License (GPL) version
2.

