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

FreeBSD Manual Pages

  
 
  

home | help
DC3DD(1)			 User Commands			      DC3DD(1)

NAME
       dc3dd - convert and copy	a file

DESCRIPTION
       ------ usage: ------

	      dc3dd [OPTION 1] [OPTION 2] ... [OPTION N]

	      *or*

	      dc3dd [HELP OPTION]

	      where each OPTION	is selected from the basic or advanced options
	      listed  below,  or HELP OPTION is	selected from the help options
	      listed below.

       -------------- basic options: --------------

       if=DEVICE or FILE
	      Read input from a	device or a file (see note #1 below for	how to
	      read from	standard input). This option can only be used once and
	      cannot be	combined with ifs=, pat=, or tpat=.

       ifs=BASE.FMT
	      Read input from a	set of files with base name BASE  and  sequen-
	      tial file	name extensions	conforming to the format specifier FMT
	      (see note	#4 below for how to specify FMT). This option can only
	      be used once and cannot be combined with if=, pat=, or tpat=.

       of=FILE or DEVICE
	      Write  output  to	a file or device (see note #2 below for	how to
	      write to standard	output). This option can  be  used  more  than
	      once (see	note #3	below for how to generate multiple outputs).

       hof=FILE	or DEVICE
	      Write  output  to	 a  file or device, hash the output bytes, and
	      verify by	comparing the output hash(es) to the  input  hash(es).
	      This  option  can	 be used more than once	(see note #3 below for
	      how to generate multiple outputs).

       ofs=BASE.FMT
	      Write output to a	set of files with base name BASE  and  sequen-
	      tial  file  name	extensions generated from the format specifier
	      FMT (see note #4 below for how to	specify	FMT). This option  can
	      be  used	more  than once	(see note #3 below for how to generate
	      multiple outputs). Specify the maximum size of each file in  the
	      set using	ofsz=.

       hofs=BASE.FMT
	      Write  output  to	a set of files with base name BASE and sequen-
	      tial file	name extensions	generated from	the  format  specifier
	      FMT  (see	note #4	below for how to specify FMT). Hash the	output
	      files and	verify by comparing the	output hash(es)	to  the	 input
	      hash(es).	 This  option  can be used more	than once (see note #3
	      below for	how to generate	multiple outputs). Specify the maximum
	      size of each file	in the set using ofsz=.

       ofsz=BYTES
	      Set the maximum size of each file	in the sets of files specified
	      using ofs= or hofs= to BYTES (see	 note  #5  below).  A  default
	      value  for  this	option	may be set at compile time using -DDE-
	      FAULT_OUTPUT_FILE_SIZE followed by the desired value in BYTES.

       hash=ALGORITHM
	      Compute an ALGORITHM hash	of the input and also of  any  outputs
	      specified	using hof=, hofs=, or fhod=, where ALGORITHM is	one of
	      md5,  sha1,  sha256, or sha512. This option may be used once for
	      each supported ALGORITHM.	Alternatively, hashing	can  be	 acti-
	      vated   at   compile   time   using   one	  or   more  of	 -DDE-
	      FAULT_HASH_MD5,-DDEFAULT_HASH_SHA1,  -DDEFAULT_HASH_SHA256,  and
	      -DDEFAULT_HASH_SHA512.

       log=FILE
	      Log  I/O	statistcs,  diagnostics, and total hashes of input and
	      output to	FILE. If hlog= is not specified, piecewise  hashes  of
	      multiple file input and output are also logged to	FILE. This op-
	      tion can be used more than once to generate multiple logs.

       hlog=FILE
	      Log  total hashes	and piecewise hashes to	FILE.  This option can
	      be used more than	once to	generate multiple logs.

       mlog=FILE
	      Create hash log that is easier for machine to read

       ----------------- advanced options: -----------------

       fhod=DEVICE
	      The same as hof=DEVICE, with additional hashing  of  the	entire
	      output  DEVICE. This option can be used more than	once (see note
	      #3 below for how to generate multiple outputs).

       rec=off
	      By default, zeros	are written to the output(s) in	place  of  bad
	      sectors  when  the  input	is a device.  Use this option to cause
	      the program to instead exit when a bad sector is encountered.

       wipe=DEVICE
	      Wipe DEVICE by writing zeros (default) or	a pattern specified by
	      pat= or tpat=.

       hwipe=DEVICE
	      Wipe DEVICE by writing zeros (default) or	a pattern specified by
	      pat= or tpat=. Verify DEVICE after writing it by hashing it  and
	      comparing	the hash(es) to	the input hash(es).

       pat=HEX
	      Use  pattern  as input, writing HEX to every byte	of the output.
	      This option can only be used once	and cannot  be	combined  with
	      if=, ifs=, or tpat=.

       tpat=TEXT
	      Use text pattern as input, writing the string TEXT repeatedly to
	      the output. This option can only be used once and	cannot be com-
	      bined with if=, ifs=, or pat=.

       cnt=SECTORS
	      Read only	SECTORS	input sectors. Must be used with pat= or tpat=
	      if not using the pattern with wipe= or hwipe= to wipe a device.

       iskip=SECTORS
	      Skip SECTORS sectors at start of the input device	or file.

       oskip=SECTORS
	      Skip SECTORS sectors at start of the output file.	Specifying os-
	      kip= automatically sets app=on.

       app=on Do not overwrite an output file specified	with of= if it already
	      exists, appending	output instead.

       ssz=BYTES
	      Unconditionally  use  BYTES (see note #5 below) bytes for	sector
	      size. If ssz= is not specified, sector  size  is	determined  by
	      probing  the  device;  if	the probe fails	or the target is not a
	      device, a	sector size of 512 bytes is assumed.

       bufsz=BYTES
	      Set the size of the internal byte	buffers	to BYTES (see note  #5
	      below).  This  effectively sets the maximum number of bytes that
	      may be read at a time from the input. BYTES must be  a  multiple
	      of sector	size. Use this option to fine-tune performance.

       verb=on
	      Activate	verbose	 reporting,  where sectors in/out are reported
	      for each file in sets of files specified using  ifs=,  ofs=,  or
	      hofs=.   Alternatively,  verbose	reporting  may be activated at
	      compile time using -DDEFAULT_VERBOSE_REPORTING.

       nwspc=on
	      Activate compact reporting, where	the use	of white space to  di-
	      vide  log	 output	 into logical sections is suppressed. Alterna-
	      tively, compact reporting	may be activated at compile time using
	      -DDEFAULT_COMPACT_REPORTING.

       b10=on Activate base 10 bytes reporting,	where the progress display re-
	      ports 1000 bytes instead of 1024 bytes as	1  KB.	Alternatively,
	      base  10	bytes reporting	may be activated at compile time using
	      -DDEFAULT_BASE_TEN_BYTES_REPORTING.

       corruptoutput=on
	      For verification testing and demonstration purposes, corrupt the
	      output file(s) with extra	bytes so a hash	 mismatch  is  guaran-
	      teed.

       ------------- help options: -------------

       --help display this help	and exit

       --version
	      output version information and exit

       --flags
	      display compile-time flags and exit

       ------ notes: ------

       1. To read from stdin, do not specify if=, ifs=,	pat=, or tpat=.	 2. To
       write to	stdout,	do not specify of=, hof=, ofs=,	hofs=, fhod=,

	      wipe=, or	hwipe=.

       3.  To  write  to  multiple outputs specify more	than one of of=, hof=,
       ofs=,

	      hofs=, or	fhod=, in any combination.

       4. FMT is a pattern for a sequence of file extensions that can  be  nu-
       merical

	      starting	at  zero,  numerical starting at one, or alphabetical.
	      Specify FMT by using a series of zeros, ones,  or	 a's,  respec-
	      tively.  The  number  of	characters  used indicates the desired
	      length of	the extensions.	 For example, a	FMT specifier of  0000
	      indicates	 four  character  numerical  extensions	 starting with
	      0000.

   5. BYTES may	be followed by the following multiplicative suffixes:
	      c	(1), w (2), b (512), kB	(1000),	K (1024),  MB  (1000*1000),  M
	      (1024*1024),  GB (1000*1000*1000), G (1024*1024*1024), and so on
	      for T, P,	E, Z, and Y.

       6. Consider using cnt=, iskip= and oskip= to work around

	      unreadable sectors if error recovery fails.

       7. Sending an interrupt (e.g., CTRL+C) to dc3dd will cause

	      the program to report the	work completed at the time the	inter-
	      rupt is received and then	exit.

       dc3dd completed at 2023-04-04 18:08:06 -0400

AUTHOR
       Written	by  Paul  Rubin, David MacKenzie, Stuart Kemp, Jesse Kornblum,
       Andrew Medico, Richard Cordovano, Justin	 Lowe,	Frank  Westerman,  and
       Joseph Lininger.

REPORTING BUGS
       Report bugs to <dc3dd@dc3.mil>.

COPYRIGHT
       Copyright  (C) 2008 Free	Software Foundation, Inc.  License GPLv3+: GNU
       GPL version 3 or	later <http://gnu.org/licenses/gpl.html>
       This is free software: you are free  to	change	and  redistribute  it.
       There is	NO WARRANTY, to	the extent permitted by	law.

SEE ALSO
       The full	documentation for dc3dd	is maintained as a Texinfo manual.  If
       the  info  and  dc3dd programs are properly installed at	your site, the
       command

	      info dc3dd

       should give you access to the complete manual.

dc3dd 7.3.1			  April	2023			      DC3DD(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=dc3dd&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help