1DC3DD(1)                         User Commands                        DC3DD(1)
2
3
4

NAME

6       dc3dd - convert and copy a file
7

DESCRIPTION

9       ------ usage: ------
10
11              dc3dd [OPTION 1] [OPTION 2] ... [OPTION N]
12
13              *or*
14
15              dc3dd [HELP OPTION]
16
17              where each OPTION is selected from the basic or advanced options
18              listed below, or HELP OPTION is selected from the  help  options
19              listed below.
20
21       -------------- basic options: --------------
22
23       if=DEVICE or FILE
24              Read input from a device or a file (see note #1 below for how to
25              read from standard input). This option can only be used once and
26              cannot be combined with ifs=, pat=, or tpat=.
27
28       ifs=BASE.FMT
29              Read  input  from a set of files with base name BASE and sequen‐
30              tial file name extensions conforming to the format specifier FMT
31              (see note #4 below for how to specify FMT). This option can only
32              be used once and cannot be combined with if=, pat=, or tpat=.
33
34       of=FILE or DEVICE
35              Write output to a file or device (see note #2 below for  how  to
36              write  to  standard  output).  This option can be used more than
37              once (see note #3 below for how to generate multiple outputs).
38
39       hof=FILE or DEVICE
40              Write output to a file or device, hash  the  output  bytes,  and
41              verify  by  comparing the output hash(es) to the input hash(es).
42              This option can be used more than once (see note  #3  below  for
43              how to generate multiple outputs).
44
45       ofs=BASE.FMT
46              Write  output  to a set of files with base name BASE and sequen‐
47              tial file name extensions generated from  the  format  specifier
48              FMT  (see note #4 below for how to specify FMT). This option can
49              be used more than once (see note #3 below for  how  to  generate
50              multiple  outputs). Specify the maximum size of each file in the
51              set using ofsz=.
52
53       hofs=BASE.FMT
54              Write output to a set of files with base name BASE  and  sequen‐
55              tial  file  name  extensions generated from the format specifier
56              FMT (see note #4 below for how to specify FMT). Hash the  output
57              files  and  verify by comparing the output hash(es) to the input
58              hash(es). This option can be used more than once  (see  note  #3
59              below for how to generate multiple outputs). Specify the maximum
60              size of each file in the set using ofsz=.
61
62       ofsz=BYTES
63              Set the maximum size of each file in the sets of files specified
64              using  ofs=  or  hofs=  to  BYTES (see note #5 below). A default
65              value for this option may be set at  compile  time  using  -DDE‐
66              FAULT_OUTPUT_FILE_SIZE followed by the desired value in BYTES.
67
68       hash=ALGORITHM
69              Compute  an  ALGORITHM hash of the input and also of any outputs
70              specified using hof=, hofs=, or fhod=, where ALGORITHM is one of
71              md5,  sha1,  sha256, or sha512. This option may be used once for
72              each supported ALGORITHM. Alternatively, hashing  can  be  acti‐
73              vated   at   compile   time   using   one   or   more  of  -DDE‐
74              FAULT_HASH_MD5,-DDEFAULT_HASH_SHA1,  -DDEFAULT_HASH_SHA256,  and
75              -DDEFAULT_HASH_SHA512.
76
77       log=FILE
78              Log  I/O  statistcs,  diagnostics, and total hashes of input and
79              output to FILE. If hlog= is not specified, piecewise  hashes  of
80              multiple file input and output are also logged to FILE. This op‐
81              tion can be used more than once to generate multiple logs.
82
83       hlog=FILE
84              Log total hashes and piecewise hashes to FILE.  This option  can
85              be used more than once to generate multiple logs.
86
87       mlog=FILE
88              Create hash log that is easier for machine to read
89
90       ----------------- advanced options: -----------------
91
92       fhod=DEVICE
93              The  same  as  hof=DEVICE, with additional hashing of the entire
94              output DEVICE. This option can be used more than once (see  note
95              #3 below for how to generate multiple outputs).
96
97       rec=off
98              By  default,  zeros are written to the output(s) in place of bad
99              sectors when the input is a device.  Use this  option  to  cause
100              the program to instead exit when a bad sector is encountered.
101
102       wipe=DEVICE
103              Wipe DEVICE by writing zeros (default) or a pattern specified by
104              pat= or tpat=.
105
106       hwipe=DEVICE
107              Wipe DEVICE by writing zeros (default) or a pattern specified by
108              pat=  or tpat=. Verify DEVICE after writing it by hashing it and
109              comparing the hash(es) to the input hash(es).
110
111       pat=HEX
112              Use pattern as input, writing HEX to every byte of  the  output.
113              This  option  can  only be used once and cannot be combined with
114              if=, ifs=, or tpat=.
115
116       tpat=TEXT
117              Use text pattern as input, writing the string TEXT repeatedly to
118              the output. This option can only be used once and cannot be com‐
119              bined with if=, ifs=, or pat=.
120
121       cnt=SECTORS
122              Read only SECTORS input sectors. Must be used with pat= or tpat=
123              if not using the pattern with wipe= or hwipe= to wipe a device.
124
125       iskip=SECTORS
126              Skip SECTORS sectors at start of the input device or file.
127
128       oskip=SECTORS
129              Skip SECTORS sectors at start of the output file. Specifying os‐
130              kip= automatically sets app=on.
131
132       app=on Do not overwrite an output file specified with of= if it already
133              exists, appending output instead.
134
135       ssz=BYTES
136              Unconditionally  use  BYTES (see note #5 below) bytes for sector
137              size. If ssz= is not specified, sector  size  is  determined  by
138              probing  the  device;  if the probe fails or the target is not a
139              device, a sector size of 512 bytes is assumed.
140
141       bufsz=BYTES
142              Set the size of the internal byte buffers to BYTES (see note  #5
143              below).  This  effectively sets the maximum number of bytes that
144              may be read at a time from the input. BYTES must be  a  multiple
145              of sector size. Use this option to fine-tune performance.
146
147       verb=on
148              Activate  verbose  reporting,  where sectors in/out are reported
149              for each file in sets of files specified using  ifs=,  ofs=,  or
150              hofs=.   Alternatively,  verbose  reporting  may be activated at
151              compile time using -DDEFAULT_VERBOSE_REPORTING.
152
153       nwspc=on
154              Activate compact reporting, where the use of white space to  di‐
155              vide  log  output  into logical sections is suppressed. Alterna‐
156              tively, compact reporting may be activated at compile time using
157              -DDEFAULT_COMPACT_REPORTING.
158
159       b10=on Activate base 10 bytes reporting, where the progress display re‐
160              ports 1000 bytes instead of 1024 bytes as 1  KB.  Alternatively,
161              base  10  bytes reporting may be activated at compile time using
162              -DDEFAULT_BASE_TEN_BYTES_REPORTING.
163
164       corruptoutput=on
165              For verification testing and demonstration purposes, corrupt the
166              output  file(s)  with  extra bytes so a hash mismatch is guaran‐
167              teed.
168
169       ------------- help options: -------------
170
171       --help display this help and exit
172
173       --version
174              output version information and exit
175
176       --flags
177              display compile-time flags and exit
178
179       ------ notes: ------
180
181       1. To read from stdin, do not specify if=, ifs=, pat=, or tpat=.  2. To
182       write to stdout, do not specify of=, hof=, ofs=, hofs=, fhod=,
183
184              wipe=, or hwipe=.
185
186       3.  To  write  to  multiple outputs specify more than one of of=, hof=,
187       ofs=,
188
189              hofs=, or fhod=, in any combination.
190
191       4. FMT is a pattern for a sequence of file extensions that can  be  nu‐
192       merical
193
194              starting  at  zero,  numerical starting at one, or alphabetical.
195              Specify FMT by using a series of zeros, ones,  or  a's,  respec‐
196              tively.  The  number  of  characters  used indicates the desired
197              length of the extensions.  For example, a FMT specifier of  0000
198              indicates  four  character  numerical  extensions  starting with
199              0000.
200
201   5. BYTES may be followed by the following multiplicative suffixes:
202              c (1), w (2), b (512), kB (1000), K (1024),  MB  (1000*1000),  M
203              (1024*1024),  GB (1000*1000*1000), G (1024*1024*1024), and so on
204              for T, P, E, Z, and Y.
205
206       6. Consider using cnt=, iskip= and oskip= to work around
207
208              unreadable sectors if error recovery fails.
209
210       7. Sending an interrupt (e.g., CTRL+C) to dc3dd will cause
211
212              the program to report the work completed at the time the  inter‐
213              rupt is received and then exit.
214
215       dc3dd completed at 2023-04-04 18:08:06 -0400
216

AUTHOR

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

REPORTING BUGS

223       Report bugs to <dc3dd@dc3.mil>.
224
226       Copyright  ©  2008  Free Software Foundation, Inc.  License GPLv3+: GNU
227       GPL version 3 or later <http://gnu.org/licenses/gpl.html>
228       This is free software: you are free  to  change  and  redistribute  it.
229       There is NO WARRANTY, to the extent permitted by law.
230

SEE ALSO

232       The full documentation for dc3dd is maintained as a Texinfo manual.  If
233       the info and dc3dd programs are properly installed at  your  site,  the
234       command
235
236              info dc3dd
237
238       should give you access to the complete manual.
239
240
241
242dc3dd 7.3.1                       April 2023                          DC3DD(1)
Impressum