Files
dvdisaster/documentation/dvdisaster.en.1
2021-10-09 15:22:57 +02:00

452 lines
14 KiB
Groff

.TH DVDISASTER 1 "2018-05-14" "0.79.7" "protection for optical media"
.SH NAME
DVDISASTER \- data loss/scratch/aging protection for optical media
.SH SYNOPSIS
.B dvdisaster
.RB [\| \-r \||\| \-c \||\| \-f \||\| \-s \||\| \-t[q] \||\| \-u \|]
.RB [\| \-d
.IR device \|]
.RB [\| \-p
.IR prefix \|]
.RB [\| \-i
.IR image \|]
.RB [\| \-e
.IR eccfile \|]
.RB [\| \-o
.IR file|image \|]
.RB [\| \-a
.IR method-list \|]
.RB [\| \-j
.IR n \|]
.RB [\| -n
.IR n% \|]
.RB [\| -m
.IR n \|]
.RB [\| -v \|]
.RB [\| -x
.IR n \|]
.RB [\| \-\-adaptive-read \|]
.RB [\| \-\-auto-suffix \|]
.RB [\| \-\-cache-size
.IR n \|]
.RB [\| \-\-dao \|]
.RB [\| \-\-defective-dump
.IR d \|]
.RB [\| \-\-driver
.IR d \|]
.RB [\| \-\-eject \|]
.RB [\| \-\-encoding-algorithm
.IR n \|]
.RB [\| \-\-encoding-io-strategy
.IR n \|]
.RB [\| \-\-fill-unreadable
.IR n \|]
.RB [\| \-\-ignore-fatal-sense \|]
.RB [\| \-\-ignore-iso-size \|]
.RB [\| \-\-internal-rereads
.IR n \|]
.RB [\| \-\-medium-info \|]
.RB [\| \-\-no-progress \|]
.RB [\| \-\-old-ds-marker \|]
.RB [\| \-\-no-bdr-defect-management \|]
.RB [\| \-\-prefetch-sectors
.IR n \|]
.RB [\| \-\-raw-mode
.IR n \|]
.RB [\| \-\-read-attempts
.IR n-m \|]
.RB [\| \-\-read-medium
.IR n \|]
.RB [\| \-\-read-raw \|]
.RB [\| \-\-regtest \|]
.RB [\| \-\-resource-file
.IR n \|]
.RB [\| \-\-speed-warning
.IR n \|]
.RB [\| \-\-spinup\-delay
.IR n \|]
.RB [\| \-\-version \|]
.SH DESCRIPTION
.B DVDISASTER
provides a margin of safety against data loss on optical media caused by
scratches or aging media. It creates error correction data which is used to
recover unreadable sectors if the disc becomes damaged at a later time.
.SH TYPICAL USAGE
.TP
\fBdvdisaster\fP \fB-d\fP \fI/dev/hdc\fP \fB-s\fP
Scans the medium in drive \fI/dev/hdc\fP for errors.
.TP
\fBdvdisaster\fP \fB-d\fP \fI/dev/hdc\fP \fB-i\fP \fImedium.iso\fP \fB-r\fP
Reads an image from drive \fI/dev/hdc\fP into the file \fImedium.iso\fP.
.TP
\fBdvdisaster\fP \fB-d\fP \fI/dev/hdc\fP \fB-i\fP \fImedium.iso\fP \fB--read-raw\fP \fB-r\fP
Creates an image as described above. Each sector's integrity is verified
by using its EDC and L-EC raw data. Only possible for CD media; otherwise
the \fB--read-raw\fP option is silently ignored.
.TP
\fBdvdisaster\fP \fB-d\fP \fI/dev/hdc\fP \fB-i\fP \fImedium.iso\fP \fB--read-attempts\fP \fIn-m\fP \fB-r\fP
Creates an image as described above. Defective sectors are retried at least \fIn\fP
times and at most \fIm\fP times. Recovery of defective CD media may improve when
combined with \fB--read-raw\fP.
.TP
\fBdvdisaster\fP \fB-d\fP \fI/dev/hdc\fP \fB-i\fP \fImedium.iso\fP \fB-e\fP \fIcorr.ecc\fP \fB-r\fP \fB--adaptive-read\fP
Uses the adaptive reading strategy to read an image from
drive \fI/dev/hdc\fP into the file \fImedium.iso\fP.
Reading will stop when enough data has been
gathered to repair the image using the error correction file \fIcorr.ecc\fP.
.TP
\fBdvdisaster\fP \fB-i\fP \fImedium.iso\fP \fB-e\fP \fIcorr.ecc\fP \fB-c\fP
Creates an error correction file \fIcorr.ecc\fP for the image \fImedium.iso\fP.
.TP
\fBdvdisaster\fP \fB-i\fP \fImedium.iso\fP \fB-m\fIRS02\fP \fB-n\fP \fI350000\fP \fB-c\fP
Augments the image \fImedium.iso\fP with error correction information,
expanding the image to no more than \fI350000\fP sectors. If \fB-n\fP is omitted the image
will be expanded to the smallest possible medium size (CD, DVD, DVD9).
Note the missing blank between \fB-m\fP and \fIRS02\fP.
.TP
\fBdvdisaster\fP \fB-i\fP \fImedium.iso\fP \fB-e\fP \fIcorr.ecc\fP \fB-f\fP
Repairs the image file \fImedium.iso\fP using the error correction file \fIcorr.ecc\fP.
.TP
\fBdvdisaster\fP \fB-i\fP \fImedium.iso\fP \fB-e\fP \fIcorr.ecc\fP \fB-t\fP
Verifies the image \fImedium.iso\fP with information from
the error correction file \fIcorr.ecc\fP.
.TP
\fBNOTE:\fP
Omit the \fB-e corr.ecc\fP options when working with augmented images in the examples above.
.SH OPTIONS
Action selection (at least one action must be specified):
.TP
.B \-r, \-\-read
Read the medium image to hard disc. Use \-rn-m to read a certain sector range,
e.g. \-r100-200.
.TP
.B \-c, \-\-create
Create .ecc information for the medium image.
.TP
.B \-f, \-\-fix
Try to fix medium image using .ecc information.
.TP
.B \-s, \-\-scan
Scan the medium for read errors.
.TP
.B \-t, \-\-test, \-tq, \-\-test=q
Test integrity of the .iso and .ecc files. When the
"q" option is given, only information is output
which can be gathered without fully scanning the files.
.TP
.B \-u, \-\-unlink
Delete .iso files (when other actions complete).
.PP
Drive and file specification:
.TP
.B \-d, \-\-device device
read from given device (default: /dev/cdrom).
.TP
.B \-p, \-\-prefix prefix
prefix of .iso/.ecc file (default: medium.* ).
.TP
.B \-i, \-\-image imagefile
name of image file (default: medium.iso).
.TP
.B \-e, \-\-ecc eccfile
name of parity file (default: medium.ecc).
.TP
.B \-o, \-\-ecc-target file|image
Specifies whether RS03 should create error correction files
or augmented images (default: image).
.TP
Tweaking options (see manual before using!):
.TP
.B \-a, \-\-assume method1,method2,...
Assumes that the image is augmented with one of the given methods.
This enables an exhaustive search for method signatures
and might be helpful for detecting error correction information on
damaged media. If the image does
not contain the specified error correction information, a significant
amount of CPU and I/O time may be wasted.
.RS
Possible values are RS02 and RS03.
.RE
.TP
.B \-j, \-\-jump n
jump n sectors forward after a read error (default: 16).
.TP
.B \-n, \-\-redundancy n[unit]
Error correction data redundancy. Allowed values depend
on the method:
.RS
RS01- and RS03-error correction files
.RS
\-n x\ \ creates error correction file with x roots.
.RE
.RS
\-n x% creates error correction file with x percent redundancy.
.RE
.RS
\-n xm creates error correction file of approx. x MiB size.
.RE
.RE
.RS
RS01 error correction flles additionally support:
.RS
\-n normal - optimized codec for 14.3% redundancy/32 roots.
.RE
.RS
\-n high\ \ \ - optimized codec for 33.5% redundancy/64 roots.
.RE
.RE
.RS
RS02 images:
.RS
\-n CD\ \ \ \ augments image suitable for CD media.
.RE
.RS
\-n DVD\ \ \ augments image suitable for DVD media.
.RE
.RS
\-n DVD9\ augments image suitable for DVD9 media.
.RE
.RS
\-n BD\ \ \ \ augments image suitable for BD media.
.RE
.RS
\-n BD2\ \ augments image suitable for two layered BD media.
.RE
.RS
\-n BDXL3 augments image suitable for three layered BDXL media.
.RE
.RS
\-n BDXL4 augments image suitable for quadruple layered BDXL media.
.RE
.RS
\-n BDNODM\ \ \ \ augments image suitable for BD media burnt without defect management.
.RE
.RS
\-n BD2NODM\ \ augments image suitable for two layered BD media burnt without defect management.
.RE
.RS
\-n BDXL3NODM augments image suitable for three layered BDXL media burnt without defect management.
.RE
.RS
\-n BDXL4NODM augments image suitable for quadruple layered BDXL media burnt without defect management.
.RE
.RS
\-n x\ \ \ \ \ augments image using approx. x sectors in total.
.RE
.RS
\-n x%\ \ \ \ augments image with approx. x% redundancy.
.RE
.RS
\-n xr\ \ \ \ augments image with x roots error correction data.
.RE
.RE
.RS
RS03 images:
.RS
Setting the redundancy is not possible due to constraints in the format.
The codec will automatically choose the size of the smallest fitting medium.
However, see --no-bdr-defect-management below.
.RE
.RE
.TP
.B \-\-no-bdr-defect-management
Enable bigger augmented images for BD-R (around +3%).
If you know you will use a BD-R medium and want to maximize the free space
for parity data, you can skip the defect management formatting before burning,
at the expense of potential coasters. Specify this option to tell dvdisaster
to produce bigger images that will only fit on BD-R media burnt without defect
management. Some burning softwares call it "formatting" the BD-R before burning.
Note that should you need to repair such an augmented image, you'll then need to
specify this option on the command-line too.
.RE
.TP
.B \-m, \-\-method n
lists/selects error correction methods (default: RS01).
.RS
Possible values are RS01 and RS02.
.RE
.TP
.B \-v, \-\-verbose n%
more diagnostic messages
.TP
.B \-x, \-\-threads n
Use n threads for encoding with the RS03 method. Use 2 or 4 threads for 2 or 4 core
processors respectively.
On larger machines save one core for housekeeping; e.g. use 7 threads
on an eight core machine.
.TP
.B \-\-adaptive-read
use optimized strategy for reading damaged media.
.TP
.B \-\-auto-suffix
automatically add .iso and .ecc file suffixes.
.TP
.B \-\-cache-size n
image cache size in MiB during \-c mode (default: 32MiB).
.TP
.B \-\-dao
assume DAO disc; do not trim image end.
.TP
.B \-\-defective-dump d
Specifies the sub directory for storing incomplete raw sectors.
.TP
.B \-\-driver d (Linux only)
Selects between the sg (SG_IO) driver (default setting) and the
older cdrom (CDROM_SEND_PACKET) driver for accessing the optical drives.
Both drivers should work equally well; however the cdrom driver is known
to cause system failures on some ancient SCSI controllers.
The older cdrom driver was the default up to and including dvdisaster 0.72.x;
if the now pre-selected sg driver changes something to the worse for you
please switch back to the older driver using \-\-driver=cdrom.
.TP
.B \-\-eject
eject medium after successful read.
.TP
.B \-\-encoding-algorithm [32bit|64bit|SSE2|AltiVec]
This option affects the speed of generating RS03 error correction data.
dvdisaster can either use a generic encoding algorithm using 32bit or 64bit
wide operations running on the integer unit of the processor, or use
processor specific extensions.
.RS
Available extensions are SSE2 for x86 based processors and AltiVec
on PowerPC processors. These extensions encode with 128bit wide operations
and will usually provide the fastest encoding variant. The
SSE2/AltiVec algorithms will automatically be selected
if the processor supports them and nothing else is specified by this option.
.RE
.TP
.B \-\-encoding-io-strategy [readwrite|mmap]
This option controls how dvdisaster performs its disk I/O while creating error
correction data with RS03. Try both options and see which performs best on your hardware
setting.
.RS
The "readwrite" option activates dvdisaster's own I/O scheduler
which reads and writes image data using normal file I/O. The advantage of this
scheme is that dvdisaster knows exactly which data needs to be cached and preloaded;
the disadvantage is that all data needs to be copied between the kernel and
dvdisaster's own buffers. Usually, this I/O scheme works best on slow storage
with high latency and seek times; e.g. on all storage involving spinning platters.
The "mmap" option uses the kernel's memory mapping scheme for direct access
to the image file. This has the advantage of minimal overhead, but may be adversely
affected by poor caching and preloading decisions made by the kernel (since the kernel does not
know what dvdisaster is going to do with the data). This scheme
performs well when encoding in a RAM-based file system (such as /dev/shm on Linux)
and on very fast media with low latency such as SSDs.
.RE
.TP
.B \-\-fill-unreadable n
fill unreadable sectors with byte n. Useful for processing images which have been created by other tools. For example, ddrescue fills unreadable sectors with zeros; therefore \-\-fill-unreadable=0 should be used. Please note: Sparse files can not be processed with dvdisaster.
.TP
.B \-\-ignore-fatal-sense
continue reading after potentially fatal error condition.
.TP
.B \-\-ignore-iso-size
By default getting the image size from the ISO/UDF filesystem is preferred
over querying the drive as most drives report unreliable values.
.RS
However in some rare cases the image size recorded in the ISO/UDF
filesystem is wrong. Some Linux live CDs may have this problem.
If you read back the ISO image from such CDs and its md5sum does
not match the advertised one, try re-reading the image with
this option turned on.
.RE
.RS
Do not blindly turn this option on as it will most likely
create sub optimal or corrupted ISO images, especially if you
plan to use the image for error correction data generation.
.RE
.TP
.B \-\-internal-rereads n
internal read attempts for defective CD media sectors (default: \-1)
.RS
The drive firmware usually retries unreadable sectors a few times before
giving up and returning a read error. It is more efficient to set this to 0 or 1
and manage read attempts through the \-\-read-attempts parameter. Most drives ignore
this setting anyways. Use \-1 to leave the drive at its default setting.
.RE
.TP
.B \-\-medium-info
Prints information about the currently inserted medium.
.TP
.B \-\-no-progress
Suppresses the progress percentage indicator.
.TP
.B \-\-old-ds-marker
Marks missing sectors in a manner which is compatible with
dvdisaster 0.70 or older.
.RS
The default marking method is recommended for dvdisaster 0.72 and later
versions. However images marked with the current method can not
be processed with older dvdisaster versions as missing sectors
would not be recognized in the image.
Do not process the same image with different settings for this option.
.RE
.TP
.B \-\-prefetch-sectors n
number of sectors to preload during RS03 de-/encoding (default: 32)
.RS
Using a value of n uses approx. n MiB of RAM.
.RE
.TP
.B \-\-raw-mode n
selects raw reading mode for CD media (default: 20)
.RS
The recommended mode is 20, which makes the drive apply its built-in error
correction to the best possible extent before transferring a defective sector.
However some drives can only read defective sectors using mode 21, skipping
the last stage of the internal error correction and returning
the uncorrected sector instead.
.RE
.TP
.B \-\-read-attempts n-m
attempts n up to m reads of a defective sector.
.TP
.B \-\-read-medium n
read the whole medium up to n times.
.TP
.B \-\-read-raw
performs read in raw mode if possible.
.TP
.B \-\-regtest
modifies some outputs for better processing with the regression test scripts.
.TP
.B \-\-resource-file n
Specifies the path to the configuration file (default: $HOME/.dvdisaster)
.TP
.B \-\-speed-warning n
print warning if speed changes by more than n percent.
.TP
.B \-\-spinup-delay n
wait n seconds for drive to spin up.
.TP
.B \-\-version
print version number and some configuration information.
.PP
.SH SEE ALSO
.B Documentation
DVDISASTER is documented by its own manual, installed in
.IR %docdir%
.SH AUTHOR
DVDISASTER was written by Carsten Gnoerlich <carsten@dvdisaster.com>.
.PP
This manual page was written by Daniel Baumann
<daniel.baumann@panthera-systems.net>, for the Debian project (but may be used
by others). Since version 0.70 it is maintained by Carsten Gnoerlich.