summaryrefslogtreecommitdiffstats
path: root/doc/tarlz.1
blob: 9d63da53971b23f8838d6247b6e8238e817a81bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.49.2.
.TH TARLZ "1" "January 2024" "tarlz 0.25" "User Commands"
.SH NAME
tarlz \- creates tar archives with multimember lzip compression
.SH SYNOPSIS
.B tarlz
\fI\,operation \/\fR[\fI\,options\/\fR] [\fI\,files\/\fR]
.SH DESCRIPTION
Tarlz is a massively parallel (multi\-threaded) combined implementation of
the tar archiver and the lzip compressor. Tarlz uses the compression library
lzlib.
.PP
Tarlz creates tar archives using a simplified and safer variant of the POSIX
pax format compressed in lzip format, keeping the alignment between tar
members and lzip members. The resulting multimember tar.lz archive is
backward compatible with standard tar tools like GNU tar, which treat it
like any other tar.lz archive. Tarlz can append files to the end of such
compressed archives.
.PP
Keeping the alignment between tar members and lzip members has two
advantages. It adds an indexed lzip layer on top of the tar archive, making
it possible to decode the archive safely in parallel. It also minimizes the
amount of data lost in case of corruption.
.PP
The tarlz file format 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, the option '\-\-keep\-damaged' can be used to
recover as much data as possible from each damaged member, and lziprecover
can be used to recover some of the damaged members.
.SS "Operations:"
.TP
\fB\-\-help\fR
display this help and exit
.TP
\fB\-V\fR, \fB\-\-version\fR
output version information and exit
.TP
\fB\-A\fR, \fB\-\-concatenate\fR
append archives to the end of an archive
.TP
\fB\-c\fR, \fB\-\-create\fR
create a new archive
.TP
\fB\-d\fR, \fB\-\-diff\fR
find differences between archive and file system
.TP
\fB\-\-delete\fR
delete files/directories from an archive
.TP
\fB\-r\fR, \fB\-\-append\fR
append files to the end of an archive
.TP
\fB\-t\fR, \fB\-\-list\fR
list the contents of an archive
.TP
\fB\-x\fR, \fB\-\-extract\fR
extract files/directories from an archive
.TP
\fB\-z\fR, \fB\-\-compress\fR
compress existing POSIX tar archives
.TP
\fB\-\-check\-lib\fR
check version of lzlib and exit
.SH OPTIONS
.TP
\fB\-B\fR, \fB\-\-data\-size=\fR<bytes>
set target size of input data blocks [2x8=16 MiB]
.TP
\fB\-C\fR, \fB\-\-directory=\fR<dir>
change to directory <dir>
.TP
\fB\-f\fR, \fB\-\-file=\fR<archive>
use archive file <archive>
.TP
\fB\-h\fR, \fB\-\-dereference\fR
follow symlinks; archive the files they point to
.TP
\fB\-n\fR, \fB\-\-threads=\fR<n>
set number of (de)compression threads [2]
.TP
\fB\-o\fR, \fB\-\-output=\fR<file>
compress to <file> ('\-' for stdout)
.TP
\fB\-p\fR, \fB\-\-preserve\-permissions\fR
don't subtract the umask on extraction
.TP
\fB\-q\fR, \fB\-\-quiet\fR
suppress all messages
.TP
\fB\-v\fR, \fB\-\-verbose\fR
verbosely list files processed
.TP
\fB\-0\fR .. \fB\-9\fR
set compression level [default 6]
.TP
\fB\-\-uncompressed\fR
don't compress the archive created
.TP
\fB\-\-asolid\fR
create solidly compressed appendable archive
.TP
\fB\-\-bsolid\fR
create per block compressed archive (default)
.TP
\fB\-\-dsolid\fR
create per directory compressed archive
.TP
\fB\-\-no\-solid\fR
create per file compressed archive
.TP
\fB\-\-solid\fR
create solidly compressed archive
.TP
\fB\-\-anonymous\fR
equivalent to '\-\-owner=root \fB\-\-group\fR=\fI\,root\/\fR'
.TP
\fB\-\-owner=\fR<owner>
use <owner> name/ID for files added to archive
.TP
\fB\-\-group=\fR<group>
use <group> name/ID for files added to archive
.TP
\fB\-\-exclude=\fR<pattern>
exclude files matching a shell pattern
.TP
\fB\-\-ignore\-ids\fR
ignore differences in owner and group IDs
.TP
\fB\-\-ignore\-metadata\fR
compare only file size and file content
.TP
\fB\-\-ignore\-overflow\fR
ignore mtime overflow differences on 32\-bit
.TP
\fB\-\-keep\-damaged\fR
don't delete partially extracted files
.TP
\fB\-\-missing\-crc\fR
exit with error status if missing extended CRC
.TP
\fB\-\-mtime=\fR<date>
use <date> as mtime for files added to archive
.TP
\fB\-\-out\-slots=\fR<n>
number of 1 MiB output packets buffered [64]
.TP
\fB\-\-warn\-newer\fR
warn if any file is newer than the archive
.PP
If no archive is specified, tarlz tries to read it from standard input or
write it to standard output.
.PP
Exit status: 0 for a normal exit, 1 for environmental problems
(file not found, files differ, 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 tarlz to panic.
.SH "REPORTING BUGS"
Report bugs to lzip\-bug@nongnu.org
.br
Tarlz home page: http://www.nongnu.org/lzip/tarlz.html
.SH COPYRIGHT
Copyright \(co 2024 Antonio Diaz Diaz.
Using lzlib 1.14\-rc1
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>
.br
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
.SH "SEE ALSO"
The full documentation for
.B tarlz
is maintained as a Texinfo manual.  If the
.B info
and
.B tarlz
programs are properly installed at your site, the command
.IP
.B info tarlz
.PP
should give you access to the complete manual.