63 lines
2.6 KiB
Text
63 lines
2.6 KiB
Text
|
Description
|
||
|
|
||
|
Tarlz is a small and simple implementation of the tar archiver. By
|
||
|
default tarlz creates, lists and extracts archives in the 'ustar' format
|
||
|
compressed with lzip on a per file basis. Tarlz can append files to the
|
||
|
end of such compressed archives.
|
||
|
|
||
|
Each tar member is compressed in its own lzip member, as well as the
|
||
|
end-of-file blocks. This same method works for any tar format (gnu,
|
||
|
ustar, posix) and is fully backward compatible with standard tar tools
|
||
|
like GNU tar, which treat the resulting multimember tar.lz archive like
|
||
|
any other tar.lz archive.
|
||
|
|
||
|
Tarlz can create tar archives with four levels of compression
|
||
|
granularity; per file, per directory, appendable solid, and solid.
|
||
|
|
||
|
Tarlz is intended as a showcase project for the maintainers of real tar
|
||
|
programs to evaluate the format and perhaps implement it in their tools.
|
||
|
|
||
|
The diagram below shows the correspondence between tar members (formed
|
||
|
by a header plus optional data) in the tar archive and lzip members in
|
||
|
the resulting multimember tar.lz archive:
|
||
|
|
||
|
tar
|
||
|
+========+======+========+======+========+======+========+
|
||
|
| header | data | header | data | header | data | eof |
|
||
|
+========+======+========+======+========+======+========+
|
||
|
|
||
|
tar.lz
|
||
|
+===============+===============+===============+========+
|
||
|
| member | member | member | member |
|
||
|
+===============+===============+===============+========+
|
||
|
|
||
|
Of course, compressing each file (or each directory) individually is
|
||
|
less efficient than compressing the whole tar archive, but it has the
|
||
|
following advantages:
|
||
|
|
||
|
* The resulting multimember tar.lz archive can be decompressed in
|
||
|
parallel with plzip, multiplying the decompression speed.
|
||
|
|
||
|
* New members can be appended to the archive (by removing the eof
|
||
|
member) just like to an uncompressed tar archive.
|
||
|
|
||
|
* It is a safe posix-style backup format. In case of corruption,
|
||
|
tarlz can extract all the undamaged members from the tar.lz
|
||
|
archive, skipping over the damaged members, just like the standard
|
||
|
(uncompressed) tar. Moreover, lziprecover can be used to recover at
|
||
|
least part of the contents of the damaged members.
|
||
|
|
||
|
* A multimember tar.lz archive is usually smaller than the
|
||
|
corresponding solidly compressed tar.gz archive, except when
|
||
|
individually compressing files smaller than about 32 KiB.
|
||
|
|
||
|
|
||
|
Copyright (C) 2013-2018 Antonio Diaz Diaz.
|
||
|
|
||
|
This file is free documentation: you have unlimited permission to copy,
|
||
|
distribute and modify it.
|
||
|
|
||
|
The file Makefile.in is a data file used by configure to produce the
|
||
|
Makefile. It has the same copyright owner and permissions that configure
|
||
|
itself.
|