Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SDD(1E)			    Schily's USER COMMANDS		       SDD(1E)

NAME
       sdd  -  disk dump and restore to	and from tape or file; copy and/or re-
       block

SYNOPSIS
       sdd [ 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	inout and output.

       If  ibs	and obs	differ,	sdd is faster than dd due to the use of	an in-
       telligent 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 se-
	      curity 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 will 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 in-
	      put/output volume	before beginning transfer. (You	can  skip  la-
	      bels  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.

       secsize=#
	      Set  the	basic buffersize for error recovery via	-noerror to #.
	      The default is 512 to match the most usual physical sector size.
	      Since  error  recovery  is done at the level of the basic	buffer
	      size, you	need to	use this option	in error recovery mode in case
	      you  are accessing a drive with a	different physical sector size
	      than 512 bytes.

       -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.  If this option is used and -noseek has not been
	      specified	as well, ibs and obs need to be	multiples of the error
	      recovery blocksize specified via secsize=#.

       -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 exists.

       -md5   Compute  the  md5	 sum  for  the data.  If the option -onull was
	      used, sdd	computes the md5 sum on	the input data,	otherwise  the
	      output data is used.

       -version
	      Prints the sdd version number string and exists.

EXAMPLES
       sdd 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 ALSO
       dd(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 to 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 the	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  re-
       mote  files  for	non root users.	 This is done by using the rcmd(3) in-
       terface 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  -un-
       block 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			  2020/05/30			       SDD(1E)

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | EXAMPLES | FILES | SEE ALSO | DIAGNOSTICS | NOTES | SUID NOTES | BUGS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=sdd&sektion=1&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help