lziprecover1
Recovers data from damaged files
Usage
lziprecover [options]
[files]
Overview
Lziprecover is a data recovery tool and decompressor for files in the lzip compressed data format (.lz). Lziprecover also provides Forward Error Correction (FEC) able to repair any kind of file.
With the help of lziprecover, losing an entire archive just because of a corrupt byte near the beginning is a thing of the past.
Lziprecover can remove the damaged members from multimember files, for example multimember tar.lz archives.
Lziprecover provides random access to the data in multimember files; it only decompresses the members containing the desired data.
Lziprecover is not a replacement for regular backups, but a last line of defense for the case where the backups are also damaged.
Options
-
-h, --help -
display this help and exit
-
-V, --version -
output version information and exit
-
-a, --trailing-error -
exit with error status if trailing data
-
-A, --alone-to-lz -
convert lzma-alone files to lzip format
-
-b, --block-size=<bytes> -
make FEC block size a multiple of <bytes>
-
-B, --byte-repair -
try to repair a corrupt byte in file
-
-c, --stdout -
write to standard output, keep input files
-
-d, --decompress -
decompress, test compressed file integrity
-
-D, --range-decompress=<n-m> -
decompress a range of bytes to stdout
-
-e, --reproduce -
try to reproduce a zeroed sector in file
-
--lzip-level=N|a|m[N] -
reproduce one level, all, or match length
-
--lzip-name=<name> -
name of lzip executable for
--reproduce
-
--reference-file=<file> -
reference file for
--reproduce
-
-f, --force -
overwrite existing output files
-
-F, --fec=c[N]|r|t|l -
create, repair, test, list (using) fec file
-
-0 .. -9 -
set FEC fragmentation level [default 9]
-
--fec-file=<file>[/] -
read fec file from <file> or directory
-
-i, --ignore-errors -
ignore non-fatal errors
-
-k, --keep -
keep (don't delete) input files
-
-l, --list -
print (un)compressed file sizes
-
-m, --merge -
repair errors in file using several copies
-
-n, --threads=<n> -
set number of threads for fec create [2]
-
-o, --output=<file>[/] -
place the output into <file> or directory
-
-q, --quiet -
suppress all messages
-
-r, --recursive -
(fec) operate recursively on directories
-
-R, --dereference-recursive -
(fec) recursively follow symbolic links
-
-s, --split -
split multimember file in single-member files
-
-t, --test -
test compressed file integrity
-
-v, --verbose -
be verbose (a 2nd
-vgives more)
-
--dump=<list>:d:e:t -
dump members, damaged/empty, tdata to stdout
-
--remove=<list>:d:e:t -
remove members, tdata from files in place
-
--strip=<list>:d:e:t -
copy files to stdout stripping members given
-
--loose-trailing -
allow trailing data seeming corrupt header
-
--nonzero-repair -
repair in place a nonzero first LZMA byte
If no file names are given, or if a file is '-', lziprecover decompresses from standard input to standard output. Numbers may be followed by a multiplier: k = kB = 10^3 = 1000, Ki = KiB = 2^10 = 1024, M = 10^6, Mi = 2^20, G = 10^9, Gi = 2^30, etc... The argument to --fec=create may be a number of blocks (-Fc20), a percentage (-Fc5%), or a size in bytes (-Fc10KiB).
To extract all the files from archive 'foo.tar.lz', use the commands 'tar -xf foo.tar.lz' or 'lziprecover -cd foo.tar.lz | tar -xf -'.
Exit status: 0 for a normal exit, 1 for environmental problems (file not found, invalid command-line options, I/O errors, etc), 2 to indicate a corrupt or invalid input file, 3 for an internal consistency error (e.g., bug) which caused lziprecover to panic.
Releases
8 releases since Debian 6.0 (Squeeze); the text changed 7 times.
--alone-to-lz since Debian 9 (Stretch);
--block-size since Debian 13 (Trixie);
--byte-repair since Debian 13 (Trixie);
--decompress since Debian 7 (Wheezy);
--dereference-recursive since Debian 13 (Trixie);
--dump since Debian 10 (Buster);
--fec since Debian 13 (Trixie);
--fec-file since Debian 13 (Trixie);
--force since Debian 7 (Wheezy);
--ignore-errors since Debian 8 (Jessie);
--keep since Debian 7 (Wheezy);
--list since Debian 7 (Wheezy);
--loose-trailing since Debian 10 (Buster);
--lzip-level since Debian 11 (Bullseye);
--lzip-name since Debian 11 (Bullseye);
--merge since Debian 7 (Wheezy);
--nonzero-repair since Debian 13 (Trixie);
--output since Debian 7 (Wheezy);
--range-decompress since Debian 7 (Wheezy);
--recursive since Debian 13 (Trixie);
--reference-file since Debian 11 (Bullseye);
--remove since Debian 10 (Buster);
--reproduce since Debian 11 (Bullseye);
--split since Debian 7 (Wheezy);
--stdout since Debian 7 (Wheezy);
--strip since Debian 10 (Buster);
--test since Debian 7 (Wheezy);
--threads since Debian 13 (Trixie);
--trailing-error since Debian 9 (Stretch);
-0 since Debian 13 (Trixie);
-9 since Debian 13 (Trixie);
-A since Debian 9 (Stretch);
-B since Debian 13 (Trixie);
-D since Debian 7 (Wheezy);
-F since Debian 13 (Trixie);
-R since Debian 7 (Wheezy);
-a since Debian 9 (Stretch);
-b since Debian 13 (Trixie);
-c since Debian 7 (Wheezy);
-d since Debian 7 (Wheezy);
-e since Debian 11 (Bullseye);
-f since Debian 7 (Wheezy);
-i since Debian 8 (Jessie);
-k since Debian 7 (Wheezy);
-l since Debian 7 (Wheezy);
-m since Debian 7 (Wheezy);
-n since Debian 13 (Trixie);
-o since Debian 7 (Wheezy);
-r since Debian 13 (Trixie);
-s since Debian 7 (Wheezy);
-t since Debian 7 (Wheezy).
--repair until Debian 12 (Bookworm).