SDD(1) Schily´s USER COMMANDS SDD(1)NAMEsdd - disk dump and restore to and from tape or file; copy and/or
reblock
SYNOPSISsdd [ option=value ] [ -flag ]
DESCRIPTION
Sdd copies the specified input file to a specified output file perform‐
ing the requested conversions. The standard input and output are used
by default. The input and output block size may be specified to take
advantage of raw physical I/O.
After completion, sdd reports the number of whole records, the sum of
bytes from partial input and output blocks and the total amount in kilo
bytes on input and output.
If ibs and obs differ, sdd is faster than dd due to the use of an
intelligent algorithm.
OPTIONS-help Print a summary of the available options.
if=name
Input is taken from file name; default is stdin.
If sdd is installed suid root, name may be in remote syntax:
user@host:filename as in rcp(1) even if invoked by non root
users. See SUID NOTES for more information.
To make a file local although it includes a colon (:), the file‐
name must start with: '/', './' or '../'
of=name
Output is taken from file name; default is stdout. Note that
sdd creates and truncates the output file by default; therefore
the oseek=# option is useless without the -notrunc option except
in special cases such as using magnetic tape or disk special
files.
If sdd is installed suid root, name may be in remote syntax:
user@host:filename as in rcp(1) even if invoked by non root
users.
Note that if sdd talks to an old rmt remote tape server, it does
not open a remote file with the O_CREAT open flag because this
would be extremely dangerous. If the rmt server on the other
side is the rmt server that comes with star or the GNU rmt
server, sdd may use the symbolic mode for the open flags. Only
the symbolic open modes allow to send all possible open modes in
a portable way to remote tape servers.
It is recommended to use the rmt server that comes with star.
It is the only rmt server that gives platform independent com‐
patibility with BSD, Sun and GNU rmt clients and it includes
security features that may be set up in /etc/default/rmt.
-inull Do not read input from file. This is similar to if=/dev/zero
but much faster. Sdd uses a prepared cleared buffer to satisfy
writes.
-onull Do not produce any output. This is similar to of=/dev/null but
actually does not write to any file.
ibs=#, obs=#, bs=#
Set input block size, output block size or both to # (default
512 Bytes).
cbs=# Set Conversion buffer size to #.
ivsize=#, ovsize=#
Set input volume size or output volume size to #. You can make
copies from devices of different size by using this option. If
you want to make a copy to a tape having a size of 60 MBytes you
should use the option ovsize=60M. If the capacity of the tape
is exceeded, sdd wil ask for a second volume. In case ivsize is
exceeded, if N<cr> is typed, it is treated as an EOF condition
and sdd writes any buffered data to output and exits. In case
ovsize is exceeded, if N<cr> is typed, sdd stops and the statis‐
tics it prints show that more data were read than written.
count=#
Transfer # of input records or until EOF.
iseek=#, iskip=#
Seek/skip the first # Bytes from input before beginning trans‐
fer.
oseek=#, oskip=#
Seek/skip the first # Bytes from output before beginning trans‐
fer.
seek=#, skip=#
Seek/skip the first # Bytes from input and output before begin‐
ning transfer.
ivseek=#, ovseek=#
Seek # Bytes from input/output at the beginning of each
input/output volume before beginning transfer. (You can skip
labels of disks and floppies with this option.) Note that the
iseek/oseek options still work, but only apply to the first vol‐
ume. Their values are added to the values of ivseek and ovseek.
-notrunc
Do not truncate an already existing output file before beginning
transfer. This enables it to copy one file into another.
-pg Print a dot to stderr each time a record is written to indicate
progress.
-time, -t
Report the total time and the transfer rate.
-noerror
Do not stop transfer on I/O errors. Error messages will appear
on the screen.
-noerrwrite
Do not write blocks that are not read correctly. Seek on the
output to skip the bad block. The output file must be seekable
or -noerrwrite will not work correctly.
-noseek
Do not seek after I/O errors. This implies try=1.
try=# Set retry count to #. Only if -noerror was specified. (default
2)
-debug Turn on debugging messages. You can get knowledge about record
sizes on tapes with variable record size with this option.
-fill Pad every output record with zeros up to obs. If ibs equals
obs, or only bs was specified, every record will be padded with
zeros, otherwise this only applies to the last record.
-swab Swaps bytes (except for the last byte in odd block sizes and odd
transfers due to EOF).
-block, -unblock
Convert fixed length records to variable records and vice versa.
-lcase, -ucase
Map alphabetics to lower/upper case.
-ascii, -ebcdic, -ibm
Convert EBCDIC to ASCII resp. ASCII to EBCDIC resp. ASCII to
the IBM variant of EBCDIC.
-help Prints a short summary of the sdd options and exits.
-version
Prints the sdd version number string and exits.
EXAMPLESsdd if=/dev/rsd0a of=/dev/nrst8 bs=2x7x17b
Copies the disk /dev/rsd0a to the tape /dev/nrst8 using a record size
of 2*7*17 blocks. (this is 2 Cylinders.)
sdd if=/dev/rsd0c of=/dev/rsd1c seek=1b bs=63k
Copy the whole disk sd0 to sd1 preserving the old label on disk sd1.
FILES
None.
SEE ALSOdd(1), star(1), rmt(1), tr(1), cp(1), copy(1)DIAGNOSTICS
sdd: Read f records + p bytes (total of x bytes = d.nnk).
sdd: Wrote f records + p bytes (total of x bytes = d.nnk).
The number of full records, the number of bytes in partial records and
the total amount of data in KBytes.
With the QUIT signal ( usually ^\ ) the actual state is displayed.
NOTES
Opposed to dd, sdd is able to handle -iseek -oseek -seek as well as
-iskip -oskip -skip regardless of the buffer size. You can make a whole
physical copy of a disk without copying the label in one pass of sdd.
When numbers are unspecified they are taken to be bytes.
You can make them `words' (2 bytes) if they are followed by a `w' or
`W'.
You can make them blocks (512 bytes) if they are followed by a `b' or
`B'.
You can make them Kbytes (1024 bytes) if they are followed by a `k' or
`K'.
You can make them Mbytes (1024 * 1024 bytes) if they are followed by a
`m' or `M'.
You can make them Gbytes (1024 * 1024 *1024 bytes) if they are followed
by a `g' or `G'.
A pair of numbers may be separated by `*' or `x' to indicate a product.
SUID NOTES
If sdd is installed suid root, sdd is able to make connections to
remote files for non root users. This is done by using the rcmd(3)
interface to get a connection to a rmt(1) server.
Sdd resets its effective uid back to the real user id immediately after
setting up the remote connection to the rmt server and before opening
any other file.
BUGS
The option iskip=# and oskip=# and skip=# as well as -block and
-unblock are not implemented.
It is confusing to allow the use of all additions together with the
record counter -count as they are possible with obs=#.
Joerg Schilling 01/07/20 SDD(1)