1 | GNU tar NEWS - User visible changes.
|
---|
2 | Please send GNU tar bug reports to <bug-tar@gnu.org>
|
---|
3 | |
---|
4 |
|
---|
5 | version 1.16.1
|
---|
6 |
|
---|
7 | * New option --exclude-tag allows to specify "exclusion tag files", i.e.
|
---|
8 | files whose presence in a directory means that the directory should not
|
---|
9 | be archived.
|
---|
10 |
|
---|
11 | * The --exclude-cache option excludes directories that contain the
|
---|
12 | CACHEDIR.TAG file from being archived. Previous versions excluded
|
---|
13 | directory contents only, while the directories themselves were
|
---|
14 | still added to the archive.
|
---|
15 |
|
---|
16 | * Support for reading ustar type 'N' header logical records has been removed.
|
---|
17 | This GNU extension was generated only by very old versions of GNU 'tar'.
|
---|
18 | Unfortunately its implementation had security holes; see
|
---|
19 | <http://archives.neohapsis.com/archives/fulldisclosure/2006-11/0344.html>.
|
---|
20 | We don't expect that any tar archives in practical use have type 'N'
|
---|
21 | records, but if you have one and you trust its contents, you can
|
---|
22 | decode it with GNU tar 1.16 or earlier.
|
---|
23 |
|
---|
24 | * Race conditions have been fixed that in some cases briefly allowed
|
---|
25 | files extracted by 'tar -x --same-owner' (or plain 'tar -x', when
|
---|
26 | running as root) to be accessed by users that they shouldn't have been.
|
---|
27 |
|
---|
28 | |
---|
29 |
|
---|
30 | version 1.16 - Sergey Poznyakoff, 2006-10-21
|
---|
31 |
|
---|
32 | * After creating an archive, tar exits with code 1 if some files were
|
---|
33 | changed while being read. Previous versions exited with code 2 (fatal
|
---|
34 | error), and only if some files were truncated while being archived.
|
---|
35 |
|
---|
36 | * New option --mtime allows to set modification times for all archive
|
---|
37 | members during creation.
|
---|
38 |
|
---|
39 | * Bug fixes
|
---|
40 | ** Avoid running off file descriptors when using multiple -C options.
|
---|
41 | ** tar --index-file=FILE --file=- sent the archive to FILE, and
|
---|
42 | the listing to stderr.
|
---|
43 |
|
---|
44 | |
---|
45 |
|
---|
46 | version 1.15.91 - Sergey Poznyakoff, 2006-06-16
|
---|
47 |
|
---|
48 | * Incompatible changes
|
---|
49 |
|
---|
50 | ** Globbing
|
---|
51 |
|
---|
52 | Previous versions of GNU tar assumed shell-style globbing when
|
---|
53 | extracting from or listing an archive. For example:
|
---|
54 |
|
---|
55 | tar xf foo.tar '*.c'
|
---|
56 |
|
---|
57 | would extract all files whose names end in '.c'. This behavior
|
---|
58 | was not documented and was incompatible with traditional tar
|
---|
59 | implementations. Therefore, starting from this version, GNU tar
|
---|
60 | no longer uses globbing by default. For example, the above invocation
|
---|
61 | is now interpreted as a request to extract from the archive the file
|
---|
62 | named '*.c'.
|
---|
63 |
|
---|
64 | To treat member names as globbing patterns, use --wildcards option.
|
---|
65 | If you wish tar to mimic the behavior of versions up to 1.15.90,
|
---|
66 | add --wildcards to the value of the environment variable TAR_OPTIONS.
|
---|
67 |
|
---|
68 | The exact way in which tar interprets member names is controlled by the
|
---|
69 | following command line options:
|
---|
70 |
|
---|
71 | --wildcards use wildcards
|
---|
72 | --anchored patterns match file name start
|
---|
73 | --ignore-case ignore case
|
---|
74 | --wildcards-match-slash wildcards match `/'
|
---|
75 |
|
---|
76 | Each of these options has a '--no-' counterpart that disables its
|
---|
77 | effect (e.g. --no-wildcards).
|
---|
78 |
|
---|
79 | These options affect both the interpretation of member names from
|
---|
80 | command line and that of the exclusion patterns (given with --exclude
|
---|
81 | and --exclude-from options). The defaults are:
|
---|
82 |
|
---|
83 | 1. For member names: --no-wildcards --anchored
|
---|
84 | 2. For exclusion patterns: --wildcards --no-anchored --wildcards-match-slash
|
---|
85 |
|
---|
86 | The options can appear multiple times in the command line, thereby
|
---|
87 | changing the way command line arguments are interpreted. For example,
|
---|
88 | to use case-insensitive matching in exclude patterns and to revert to
|
---|
89 | case-sensitive matching for the rest of command line, one could write:
|
---|
90 |
|
---|
91 | tar xf foo.tar --ignore-case --exclude-from=FILE --no-ignore-case file.name
|
---|
92 |
|
---|
93 | ** Short option -l is now an alias of --check-links option, which complies
|
---|
94 | with UNIX98. This ends the transition period started with version 1.14.
|
---|
95 |
|
---|
96 | * New features
|
---|
97 |
|
---|
98 | ** New option --transform allows to transform file names before storing them
|
---|
99 | in the archive or member names before extracting. The option takes a
|
---|
100 | sed replace expression as its argument. For example,
|
---|
101 |
|
---|
102 | tar cf foo.tar --transform 's,^,prefix/,'
|
---|
103 |
|
---|
104 | will add 'prefix/' to all file names stored in foo.tar.
|
---|
105 |
|
---|
106 | ** --strip-components option works when deleting and comparing. In previous
|
---|
107 | versions it worked only with --extract.
|
---|
108 |
|
---|
109 | ** New option --show-transformed-names enables display of transformed file
|
---|
110 | or archive. It generalizes --show-stored-names option, introduced in
|
---|
111 | 1.15.90. In particular, when creating an archive in verbose mode, it lists
|
---|
112 | member names as stored in the archive, i.e., with any eventual prefixes
|
---|
113 | removed and file name transformations applied. The option is useful,
|
---|
114 | for example, while comparing `tar cv' and `tar tv' outputs.
|
---|
115 |
|
---|
116 | ** New incremental snapshot file format keeps information about file names
|
---|
117 | as well as that about directories.
|
---|
118 |
|
---|
119 | ** The --checkpoint option takes an optional argument specifying the number
|
---|
120 | of records between the two successive checkpoints. Optional dot
|
---|
121 | starting the argument intructs tar to print dots instead of textual
|
---|
122 | checkpoints.
|
---|
123 |
|
---|
124 | ** The --totals option can be used with any tar operation (previous versions
|
---|
125 | understood it only with --create). If an argument to this option is
|
---|
126 | given, it specifies the signal upon delivery of which the statistics
|
---|
127 | is to be printed. Both forms of this option (with and without
|
---|
128 | argument) can be given to in a single invocation of tar.
|
---|
129 |
|
---|
130 | * Bug fixes
|
---|
131 | ** Detect attempts to update compressed archives.
|
---|
132 |
|
---|
133 | |
---|
134 |
|
---|
135 | version 1.15.90 - Sergey Poznyakoff, 2006-02-19
|
---|
136 |
|
---|
137 | * New features
|
---|
138 |
|
---|
139 | ** Any number of -T (--files-from) options may be used in the command line.
|
---|
140 | The file specified with -T may include any valid `tar' options,
|
---|
141 | including another -T option.
|
---|
142 | Compatibility note: older versions of tar would only recognize -C
|
---|
143 | as an option name within the file list file. Now any file whose name
|
---|
144 | starts with - is handled as an option. To insert file names starting with
|
---|
145 | dash, use the --add-file option.
|
---|
146 |
|
---|
147 | ** List files containing null-separated file names are detected and processed
|
---|
148 | automatically. It is no longer necessary to give the --null option.
|
---|
149 |
|
---|
150 | ** New option --no-unquote disables the unquoting of input file names.
|
---|
151 | This is useful for processing output from `find dir -print0'.
|
---|
152 | An orthogonal option --unquote is provided as well.
|
---|
153 |
|
---|
154 | ** New option --test-label tests the archive volume label.
|
---|
155 | If an argument is specified, the label is compared against its value.
|
---|
156 | Tar exits with code 0 if the two strings match, and with code 2 if
|
---|
157 | they do not.
|
---|
158 |
|
---|
159 | If no argument is given, the --verbose option is implied. In this case,
|
---|
160 | tar prints the label name if present and exits with code 0.
|
---|
161 |
|
---|
162 | ** New option --show-stored-names. When creating an archive in verbose mode,
|
---|
163 | it lists member names as stored in the archive, i.e., with any eventual
|
---|
164 | prefixes removed. The option is useful, for example, while comparing
|
---|
165 | `tar cv' and `tar tv' outputs.
|
---|
166 |
|
---|
167 | ** New option --to-command pipes the contents of archive members to the
|
---|
168 | specified command.
|
---|
169 |
|
---|
170 | ** New option --atime-preserve=system, which uses the O_NOATIME feature
|
---|
171 | of recent Linux kernels to avoid some problems when preserving file
|
---|
172 | access times.
|
---|
173 |
|
---|
174 | ** New option --delay-directory-restore delays restoring modification times
|
---|
175 | and permissions of extracted directories until the end of extraction.
|
---|
176 | This is necessary for restoring from archives with unusual member
|
---|
177 | ordering (in particular, those created with --no-recursion option).
|
---|
178 | This option is implied when restoring from incremental archives.
|
---|
179 |
|
---|
180 | ** New option --restrict prohibits use of some potentially harmful tar
|
---|
181 | options. Currently it disables '!' escape in multi-volume name menu.
|
---|
182 |
|
---|
183 | ** New options --quoting-style and --quote-chars control the way tar
|
---|
184 | quotes member names on output. The --quoting-style takes an argument
|
---|
185 | specifying the quoting style to use (literal, shell, shell-always,
|
---|
186 | c, escape, locale, clocale). The argument to --quote-chars is a string
|
---|
187 | specifying characters to quote, even if the selected quoting style
|
---|
188 | would not quote them otherwise. The option --no-quote-chars is
|
---|
189 | provided to disable quoting certain characters.
|
---|
190 |
|
---|
191 | ** The end-of-volume script (introduced with --info-script option) can
|
---|
192 | get current archive name from the environment variable TAR_ARCHIVE and
|
---|
193 | the volume number from the variable TAR_VOLUME. It can alter the
|
---|
194 | archive name by writing new name to the file descriptor 3.
|
---|
195 |
|
---|
196 | ** Better support for full-resolution time stamps. Tar cannot restore
|
---|
197 | time stamps to full nanosecond resolution, though, until the kernel
|
---|
198 | guys get their act together and give us a system call to set file time
|
---|
199 | stamps to nanosecond resolution.
|
---|
200 |
|
---|
201 | ** The -v option now prints time stamps only to 1-minute resolution,
|
---|
202 | not full resolution, to avoid using up too many output columns.
|
---|
203 | Nanosecond resolution is now supported, but that would be too much.
|
---|
204 |
|
---|
205 | * Bug fixes
|
---|
206 |
|
---|
207 | ** Allow non-option arguments to be interspersed with options.
|
---|
208 | ** When extracting or listing archives in old GNU format, tar
|
---|
209 | used to read an extra block of data after a long name header
|
---|
210 | if length of the member name was divisible by block size (512).
|
---|
211 | Consequently, the file pointer was set off and the next member
|
---|
212 | was not processed correctly.
|
---|
213 | ** Previous version created invalid archives when files shrink
|
---|
214 | during reading.
|
---|
215 | ** Compare mode (tar d) hanged when trying to compare file contents.
|
---|
216 | ** Previous versions in certain cases failed to restore directory
|
---|
217 | modification times.
|
---|
218 | ** When creating an archive, do not attempt to store files whose
|
---|
219 | meta-data cannot be stored in the header due to format limitations
|
---|
220 | (for ustar and v7 formats).
|
---|
221 | ** The --version option now also outputs information about copyright,
|
---|
222 | license, and credits. This reverts to the behavior of tar 1.14 and
|
---|
223 | earlier, and conforms to the GNU coding standards. The --license (-L)
|
---|
224 | option introduced in tar 1.15 has been removed, since it's no longer
|
---|
225 | needed.
|
---|
226 |
|
---|
227 | |
---|
228 |
|
---|
229 | version 1.15.1 - Sergey Poznyakoff, 2004-12-21
|
---|
230 |
|
---|
231 | This version fixes a bug introduced in 1.15 which caused
|
---|
232 | tar to refuse to extract files from standard input.
|
---|
233 |
|
---|
234 | |
---|
235 |
|
---|
236 | version 1.15 - Sergey Poznyakoff, 2004-12-20
|
---|
237 |
|
---|
238 | * Compressed archives are recognised automatically, it is no longer
|
---|
239 | necessary to specify -Z, -z, or -j options to read them. Thus, you can
|
---|
240 | now run `tar tf archive.tar.gz'.
|
---|
241 |
|
---|
242 | * When restoring incremental dumps, --one-file-system option
|
---|
243 | prevents directory hierarchies residing on different devices
|
---|
244 | from being purged.
|
---|
245 |
|
---|
246 | With the previous versions of tar it was dangerous to create
|
---|
247 | incremental dumps with --one-file-system option, since they
|
---|
248 | would recursively remove mount points when restoring from the
|
---|
249 | back up. This change fixes the bug.
|
---|
250 |
|
---|
251 | * Renamed --strip-path to --strip-components for consistency with
|
---|
252 | the GNU convention.
|
---|
253 |
|
---|
254 | * Skipping archive members is sped up if the archive media supports
|
---|
255 | seeks.
|
---|
256 |
|
---|
257 | * Restore script starts restoring only if it is given --all (-a) option,
|
---|
258 | or some patterns. This is to prevent accidental restores.
|
---|
259 |
|
---|
260 | * `tar --verify' prints a warning if during archive creation some of
|
---|
261 | the file names had their prefixes stripped off.
|
---|
262 |
|
---|
263 | * New option --exclude-caches instructs tar to exclude cache directories
|
---|
264 | automatically on archive creation. Cache directories are those
|
---|
265 | containing a standardized tag file, as specified at:
|
---|
266 |
|
---|
267 | http://www.brynosaurus.com/cachedir/spec.html
|
---|
268 |
|
---|
269 | * New configure option --with-rmt allows to specify full path name to
|
---|
270 | the `rmt' utility. This supersedes DEFAULT_RMT_COMMAND variable
|
---|
271 | introduced in version 1.14
|
---|
272 |
|
---|
273 | * New configure variable DEFAULT_RMT_DIR allows to specify the directory
|
---|
274 | where to install `rmt' utility. This is necessary since modifying
|
---|
275 | --libexecdir as was suggested for version 1.14 produced a side effect: it
|
---|
276 | also modified installation prefix for backup scripts (if
|
---|
277 | --enable-backup-scripts was given).
|
---|
278 |
|
---|
279 | * Bug fixes:
|
---|
280 | ** Fixed flow in recognizing files to be included in incremental dumps.
|
---|
281 | ** Correctly recognize sparse archive members when used with -T option.
|
---|
282 | ** GNU multivolume headers cannot store filenames longer than 100 characters.
|
---|
283 | Do not allow multivolume archives to begin with such filenames.
|
---|
284 | ** If a member with link count > 2 was stored in the archive twice,
|
---|
285 | previous versions of tar were not able to extract it, since they
|
---|
286 | were trying to link the file to itself, which always failed and
|
---|
287 | lead to removing the already extracted copy. Preserve the first
|
---|
288 | extracted copy in such cases.
|
---|
289 | ** Restore script was passing improper argument to tar --listed option (which
|
---|
290 | didn't affect the functionality, but was logically incorrect).
|
---|
291 | ** Fixed verification of created archives.
|
---|
292 | ** Fixed unquoting of file names containing backslash escapes (previous
|
---|
293 | versions failed to recognize \a and \v).
|
---|
294 | ** When attempting to delete a non-existing member from the archive, previous
|
---|
295 | versions of tar used to overwrite last archive block with zeroes.
|
---|
296 |
|
---|
297 | |
---|
298 |
|
---|
299 | version 1.14 - Sergey Poznyakoff, 2004-05-11
|
---|
300 |
|
---|
301 | * Added support for POSIX.1-2001 and ustar archive formats.
|
---|
302 | * New option --format allows to select the output archive format
|
---|
303 | * The default output format can be selected at configuration time
|
---|
304 | by presetting the environment variable DEFAULT_ARCHIVE_FORMAT.
|
---|
305 | Allowed values are GNU, V7, OLDGNU and POSIX.
|
---|
306 | * New option --strip-path allows to cut off a given number of
|
---|
307 | path elements from the name of the file being extracted.
|
---|
308 |
|
---|
309 | * New options --index-file, --no-overwrite-dir. The --overwrite-dir
|
---|
310 | option is now the default; use --no-overwrite-dir if you prefer
|
---|
311 | the previous default behavior.
|
---|
312 |
|
---|
313 | * The semantics of -o option is changed. When extracting, it
|
---|
314 | does the same as --no-same-owner GNU tar option. This is compatible
|
---|
315 | with UNIX98 tar. Otherwise, its effect is the same as that of
|
---|
316 | --old-archive option. This latter is deprecated and will be removed
|
---|
317 | in future.
|
---|
318 |
|
---|
319 | * New option --check-links prints a message if not all links are dumped
|
---|
320 | for a file being archived. This corresponds to the UNIX98 -l option.
|
---|
321 | The current semantics of the -l option is retained for compatibility
|
---|
322 | with previous releases, however such usage is strongly deprecated as
|
---|
323 | the option will change to its UNIX98 semantics in the future releases.
|
---|
324 |
|
---|
325 | * New option --occurrence[=N] can be used in conjunction with one of
|
---|
326 | the subcommands --delete, --diff, --extract or --list when a list of
|
---|
327 | files is given either on the command line or via -T option. This
|
---|
328 | option instructs tar to process only the Nth occurrence of each named
|
---|
329 | file. N defaults to 1, so `tar -x -f archive --occurrence filename'
|
---|
330 | extracts the first occurrence of `filename' from `archive'
|
---|
331 | and terminates without scanning to the end of the archive.
|
---|
332 |
|
---|
333 | * New option --pax-option allows to control the handling of POSIX
|
---|
334 | keywords in `pax' extended headers. It is equivalent to `pax'
|
---|
335 | -o option.
|
---|
336 |
|
---|
337 | * --incremental and --listed-incremental options work correctly on
|
---|
338 | individual files, as well as on directories.
|
---|
339 |
|
---|
340 | * New scripts: backup (replaces old level-0 and level-1) and restore.
|
---|
341 | The scripts are compiled and installed if --enable-backup-scripts
|
---|
342 | option is given to configure.
|
---|
343 |
|
---|
344 | * By default tar searches "rmt" utility in "$prefix/libexec/rmt",
|
---|
345 | which is consistent with the location where the version of "rmt"
|
---|
346 | included in the package is installed. Previous versions of tar
|
---|
347 | used "/etc/rmt". To install "rmt" to its traditional location,
|
---|
348 | run configure with option --libexecdir=/etc. Otherwise, if you
|
---|
349 | already have rmt installed and wish to use it, instead of the
|
---|
350 | shipped in version, set the variable DEFAULT_RMT_COMMAND to
|
---|
351 | the full path name of the utility, e.g., ./configure
|
---|
352 | DEFAULT_RMT_COMMAND=/etc/rmt.
|
---|
353 |
|
---|
354 | Notice also that the full path name of the "rmt" utility to
|
---|
355 | use can be set at runtime, by giving option --rmt-command to
|
---|
356 | tar.
|
---|
357 |
|
---|
358 | * Removed obsolete command line options:
|
---|
359 | ** --absolute-paths superseded by --absolute-names
|
---|
360 | ** --block-compress is not needed any longer
|
---|
361 | ** --block-size superseded by --blocking-factor
|
---|
362 | ** --modification-time superseded by --touch
|
---|
363 | ** --read-full-blocks superseded by --read-full-records
|
---|
364 | ** --record-number superseded by --block-number
|
---|
365 | ** --version-control superseded by --backup
|
---|
366 |
|
---|
367 | * New message translations fi (Finnish), gl (Galician), hr (Croatian),
|
---|
368 | hu (Hungarian), ms (Malaysian), nb (Norwegian), ro (Romanian), sk
|
---|
369 | (Slovak), zh_CN (Chinese simplified), zh_TW (Chinese traditional).
|
---|
370 | The code 'no' for Norwegian (Bokmål) has been withdrawn; use 'nb' instead.
|
---|
371 |
|
---|
372 | * Bug fixes.
|
---|
373 |
|
---|
374 | |
---|
375 |
|
---|
376 | version 1.13.25 - Paul Eggert, 2001-09-26
|
---|
377 |
|
---|
378 | * Bug fixes.
|
---|
379 |
|
---|
380 | |
---|
381 |
|
---|
382 | version 1.13.24 - Paul Eggert, 2001-09-22
|
---|
383 |
|
---|
384 | * New option --overwrite-dir.
|
---|
385 | * Fixes for buffer overrun, porting, and copyright notice problems.
|
---|
386 | * The message translations for Korean are available again.
|
---|
387 |
|
---|
388 | |
---|
389 |
|
---|
390 | version 1.13.23 - Paul Eggert, 2001-09-13
|
---|
391 |
|
---|
392 | * Bug, porting, and copyright notice fixes.
|
---|
393 |
|
---|
394 | |
---|
395 |
|
---|
396 | version 1.13.22 - Paul Eggert, 2001-08-29
|
---|
397 |
|
---|
398 | * Bug fixes.
|
---|
399 |
|
---|
400 | |
---|
401 |
|
---|
402 | version 1.13.21 - Paul Eggert, 2001-08-28
|
---|
403 |
|
---|
404 | * Porting and copyright notice fixes.
|
---|
405 |
|
---|
406 | |
---|
407 |
|
---|
408 | version 1.13.20 - Paul Eggert, 2001-08-27
|
---|
409 |
|
---|
410 | * Some bugs were fixed:
|
---|
411 | - security problems
|
---|
412 | - hard links to symbolic links
|
---|
413 |
|
---|
414 | * New option --recursion (the default) that is the inverse of --no-recursion.
|
---|
415 |
|
---|
416 | * New options --anchored, --ignore-case, --wildcards,
|
---|
417 | --wildcards-match-slash, and their negations (e.g., --no-anchored).
|
---|
418 | Along with --recursion and --no-recursion, these options control how
|
---|
419 | exclude patterns are interpreted.
|
---|
420 |
|
---|
421 | * The default interpretation of exclude patterns is now --no-anchored
|
---|
422 | --no-ignore-case --recursion --wildcards --wildcards-match-slash.
|
---|
423 | This is a quiet change to the semantics of --exclude. The previous
|
---|
424 | semantics were a failed attempt at backward compatibility but it
|
---|
425 | became clear that the semantics were puzzling and did not satisfy
|
---|
426 | everybody. Rather than continue to try to revive that dead horse we
|
---|
427 | thought it better to substitute cleaner semantics, with options so
|
---|
428 | that you can change the behavior more to your liking.
|
---|
429 |
|
---|
430 | * New message translations for Indonesian and Turkish.
|
---|
431 | The translation for Korean has been withdrawn due to encoding errors.
|
---|
432 | It will be reissued once those are fixed.
|
---|
433 |
|
---|
434 | |
---|
435 |
|
---|
436 | version 1.13.19 - Paul Eggert, 2001-01-13
|
---|
437 |
|
---|
438 | * The -I option has been withdrawn, as it was buggy and confusing.
|
---|
439 | Eventually it is planned to be reintroduced, with the same meaning as -T.
|
---|
440 |
|
---|
441 | * With an option like -N DATE, if DATE starts with "/" or ".", it is taken
|
---|
442 | to be a file name; the last-modified time of that file is used as the date.
|
---|
443 |
|
---|
444 | |
---|
445 |
|
---|
446 | version 1.13.18 - Paul Eggert, 2000-10-29
|
---|
447 |
|
---|
448 | * Some security problems have been fixed. `tar -x' now modifies only
|
---|
449 | files under the working directory, unless you also specify an unsafe
|
---|
450 | option like --absolute-names or --overwrite.
|
---|
451 |
|
---|
452 | * The short name of the --bzip option has been changed to -j,
|
---|
453 | and -I is now an alias for -T, for compatibility with Solaris tar.
|
---|
454 |
|
---|
455 | * The manual is now distributed under the GNU Free Documentation License.
|
---|
456 |
|
---|
457 | * The new environment variable TAR_OPTIONS holds default command-line options.
|
---|
458 |
|
---|
459 | * The --no-recursion option now affects extraction too.
|
---|
460 |
|
---|
461 | * The wording in some diagnostics has been changed slightly.
|
---|
462 |
|
---|
463 | * Snapshot files now record whether each file was accessed via NFS.
|
---|
464 | The new file format is upward- and downward-compatible with the old.
|
---|
465 |
|
---|
466 | * New language supported: da.
|
---|
467 |
|
---|
468 | * Compilation by traditional (K&R) C compilers is no longer supported.
|
---|
469 | If you still use such a compiler, please use GCC instead.
|
---|
470 |
|
---|
471 | * This version of tar works best with GNU gzip test version 1.3 or later.
|
---|
472 | Please see <ftp://alpha.gnu.org/gnu/gzip/>.
|
---|
473 |
|
---|
474 | * `tar --delete -f -' now works again.
|
---|
475 |
|
---|
476 | |
---|
477 |
|
---|
478 | version 1.13.17 - Paul Eggert, 2000-01-07.
|
---|
479 |
|
---|
480 | * `tar --delete -f -' is no longer allowed; it was too buggy.
|
---|
481 | * Diagnostic messages have been made more regular and consistent.
|
---|
482 |
|
---|
483 | |
---|
484 |
|
---|
485 | version 1.13.16 - Paul Eggert, 1999-12-13.
|
---|
486 |
|
---|
487 | * By default, tar now refuses to overwrite an existing file when
|
---|
488 | extracting files from an archive; instead, it removes the file
|
---|
489 | before extracting it. If the existing file is a symbolic link, the
|
---|
490 | link is removed and not the pointed-to file. There is one
|
---|
491 | exception: existing nonempty directories are not removed, nor are
|
---|
492 | their ownerships or permissions extracted. This fixes some
|
---|
493 | longstanding security problems.
|
---|
494 |
|
---|
495 | The new --overwrite option enables the old default behavior.
|
---|
496 |
|
---|
497 | For regular files, tar implements this change by using the O_EXCL
|
---|
498 | option of `open' to ensure that it creates the file; if this fails, it
|
---|
499 | removes the file and tries again. This is similar to the behavior of
|
---|
500 | the --unlink-first option, but it is faster in the common case of
|
---|
501 | extracting a new directory.
|
---|
502 |
|
---|
503 | * By default, tar now ignores file names containing a component of `..'
|
---|
504 | when extracting, and warns about such file names when creating an archive.
|
---|
505 | To enable the old behavior, use the -P or --absolute-names option.
|
---|
506 |
|
---|
507 | * Tar now handles file names with multibyte encodings (e.g., UTF-8, Shift-JIS)
|
---|
508 | correctly. It relies on the mbrtowc function to handle multibyte characters.
|
---|
509 |
|
---|
510 | * The file generated by -g or --listed-incremental now uses a format
|
---|
511 | that is independent of locale, so that users need not worry about
|
---|
512 | locale when restoring a backup. This is needed for proper support
|
---|
513 | of multibyte characters. Old-format files can still be read, and
|
---|
514 | older versions of GNU tar can read new-format files, unless member
|
---|
515 | names have multibyte chars.
|
---|
516 |
|
---|
517 | * Many diagnostics have been changed slightly, so that file names are
|
---|
518 | now output unambiguously. File names in diagnostics now are either
|
---|
519 | `quoted like this' (in the default C locale) or are followed by
|
---|
520 | colon, newline, or space, depending on context. Unprintable
|
---|
521 | characters are escaped with a C-like backslash conventions.
|
---|
522 | Terminating characters (e.g., close-quote, colon, newline)
|
---|
523 | are also escaped as needed.
|
---|
524 |
|
---|
525 | * tar now ignores socket files when creating an archive.
|
---|
526 | Previously tar archived sockets as fifos, which caused problems.
|
---|
527 |
|
---|
528 | |
---|
529 |
|
---|
530 | version 1.13.15 - Paul Eggert, 1999-12-03.
|
---|
531 |
|
---|
532 | * If a file's ctime changes when being archived, report an error.
|
---|
533 | Previously tar looked at mtime, which missed some errors.
|
---|
534 |
|
---|
535 | |
---|
536 |
|
---|
537 | version 1.13.14 - Paul Eggert, 1999-11-07.
|
---|
538 |
|
---|
539 | * New translations ja, pt_BR.
|
---|
540 | * New options --help and --version for rmt.
|
---|
541 | * Ignore Solaris door files when creating an archive.
|
---|
542 |
|
---|
543 | |
---|
544 |
|
---|
545 | version 1.13.13 - Paul Eggert, 1999-10-11.
|
---|
546 |
|
---|
547 | * Invalid headers in tar files now elicit errors, not just warnings.
|
---|
548 | * `tar --version' output conforms to the latest GNU coding standards.
|
---|
549 | * If you specify an invalid date, `tar' now substitutes (time_t) -1.
|
---|
550 | * `configure --with-dmalloc' is no longer available.
|
---|
551 |
|
---|
552 | |
---|
553 |
|
---|
554 | version 1.13.12 - Paul Eggert, 1999-09-24.
|
---|
555 |
|
---|
556 | * `tar' now supports hard links to symbolic links.
|
---|
557 |
|
---|
558 | * New options --no-same-owner, --no-same-permissions.
|
---|
559 |
|
---|
560 | * --total now also outputs a human-readable size, and a throughput value.
|
---|
561 |
|
---|
562 | * `tar' now uses two's-complement base-256 when outputting header
|
---|
563 | values that are out of the range of the standard unsigned base-8
|
---|
564 | format. This affects archive members with negative or huge time
|
---|
565 | stamps or uids, and archive members 8 GB or larger. The new tar
|
---|
566 | archives cannot be read by traditional tar, or by older versions of
|
---|
567 | GNU tar. Use the --old-archive option to revert to the old
|
---|
568 | behavior, which uses unportable representations for negative values,
|
---|
569 | and which rejects large files.
|
---|
570 |
|
---|
571 | * On 32-bit hosts, `tar' now assumes that an incoming time stamp T in
|
---|
572 | the range 2**31 <= T < 2**32 represents the negative time (T -
|
---|
573 | 2**32). This behavior is nonstandard and is not portable to 64-bit
|
---|
574 | time_t hosts, so `tar' issues a warning.
|
---|
575 |
|
---|
576 | * `tar' no longer gives up extracting immediately upon discovering
|
---|
577 | that an archive contains garbage at the end. It attempts to extract
|
---|
578 | as many files as possible from the good data before the garbage.
|
---|
579 |
|
---|
580 | * A read error now causes a nonzero exit status, not just a warning.
|
---|
581 |
|
---|
582 | * Some diagnostics have been reworded for consistency.
|
---|
583 |
|
---|
584 | |
---|
585 |
|
---|
586 | version 1.13.11 - Paul Eggert, 1999-08-23.
|
---|
587 |
|
---|
588 | * The short name of the --bzip option has been changed to -I,
|
---|
589 | for compatibility with paxutils.
|
---|
590 |
|
---|
591 | * -T /dev/null now matches nothing; previously, it matched anything
|
---|
592 | if no explicit operands were given.
|
---|
593 |
|
---|
594 | * The `--' option now works the same as with other GNU utilities;
|
---|
595 | it causes later operands to be interpreted as file names, not options,
|
---|
596 | even if they begin with `-'.
|
---|
597 |
|
---|
598 | * For the --newer and --after-date options, the table of time zone
|
---|
599 | abbreviations like `EST' has been updated to match current practice.
|
---|
600 | Also, local time abbreviations are now recognized, even if they are
|
---|
601 | not in tar's hardwired table. Remember, though, that you should use
|
---|
602 | numeric UTC offsets like `-0500' instead of abbreviations like
|
---|
603 | `EST', as abbreviations are not standardized and are ambiguous.
|
---|
604 |
|
---|
605 | |
---|
606 |
|
---|
607 | version 1.13.10 - Paul Eggert, 1999-08-20.
|
---|
608 |
|
---|
609 | * `tar' now uses signed base-64 when outputting header values that are
|
---|
610 | out of the range of the standard unsigned base-8 format. [This
|
---|
611 | change was superseded in 1.13.12, described above.]
|
---|
612 |
|
---|
613 | |
---|
614 |
|
---|
615 | version 1.13.9 - Paul Eggert, 1999-08-18.
|
---|
616 |
|
---|
617 | * `tar' now writes two zero blocks at end-of-archive instead of just one.
|
---|
618 | POSIX.1 requires this, and some other `tar' implementations check for it.
|
---|
619 |
|
---|
620 | * `tar' no longer silently accepts a block containing nonzero checksum bytes
|
---|
621 | as a zero block.
|
---|
622 |
|
---|
623 | * `tar' now reads buggy tar files that have a null byte at the start of a
|
---|
624 | numeric header field.
|
---|
625 |
|
---|
626 | |
---|
627 |
|
---|
628 | version 1.13.8 - Paul Eggert, 1999-08-16.
|
---|
629 |
|
---|
630 | * For compatibility with traditional `tar', intermediate directories
|
---|
631 | created automatically by root are no longer given the uid and gid of
|
---|
632 | the original file or directory.
|
---|
633 |
|
---|
634 | |
---|
635 |
|
---|
636 | version 1.13.7 - Paul Eggert, 1999-08-14.
|
---|
637 |
|
---|
638 | * --listed-incremental and --newer are now incompatible options.
|
---|
639 |
|
---|
640 | * When creating an archive, leading `./' is no longer stripped,
|
---|
641 | to match traditional tar's behavior (and simplify the documentation).
|
---|
642 |
|
---|
643 | * --diff without --absolute-names no longer falls back on absolute names.
|
---|
644 |
|
---|
645 | |
---|
646 |
|
---|
647 | version 1.13.6 - Paul Eggert, 1999-08-11.
|
---|
648 |
|
---|
649 | * An --exclude pattern containing / now excludes a file only if it matches an
|
---|
650 | initial prefix of the file name; a pattern without / continues to
|
---|
651 | exclude a file if it matches any file name component.
|
---|
652 |
|
---|
653 | * The protocol for talking to rmt has been extended slightly.
|
---|
654 | Open flags are now communicated in symbolic format as well as numeric.
|
---|
655 | The symbolic format (e.g., "O_WRONLY|O_CREAT|O_TRUNC") is for portability
|
---|
656 | when rmt is operating on a different operating system from tar.
|
---|
657 | The numeric format is retained, and rmt uses it if symbolic format is absent,
|
---|
658 | for backward compatibility with older versions of tar and rmt.
|
---|
659 |
|
---|
660 | * When writing GNU tar format headers, tar now uses signed base-64
|
---|
661 | for values that cannot be represented in unsigned octal.
|
---|
662 | This supports larger files (2**66 - 1 bytes instead of 2**33 - 1 bytes),
|
---|
663 | larger uids, negative time stamps, etc.
|
---|
664 |
|
---|
665 | * When extracting files with unknown ownership, tar now looks up the
|
---|
666 | uid and gid "nobody" on hosts whose headers do not define UID_NOBODY
|
---|
667 | and GID_NOBODY, and falls back on uid/gid -2 if there is no "nobody".
|
---|
668 |
|
---|
669 | * tar -t --numeric-owner now prints numeric uids and gids, not symbolic.
|
---|
670 |
|
---|
671 | * New option -y or --bzip2 for bzip2 compression, by popular request.
|
---|
672 |
|
---|
673 | |
---|
674 |
|
---|
675 | version 1.13.5 - Paul Eggert, 1999-07-20.
|
---|
676 |
|
---|
677 | * Do the delayed updates of file metadata even after a fatal error.
|
---|
678 |
|
---|
679 | |
---|
680 |
|
---|
681 | version 1.13.4 - Paul Eggert, 1999-07-20.
|
---|
682 |
|
---|
683 | * Do not chmod unless we are root or the -p option was given;
|
---|
684 | this matches historical practice.
|
---|
685 |
|
---|
686 | |
---|
687 |
|
---|
688 | version 1.13.3 - Paul Eggert, 1999-07-16.
|
---|
689 |
|
---|
690 | * A path name is excluded if any of its file name components matches an
|
---|
691 | excluded pattern, even if the path name was specified on the command line.
|
---|
692 | Also see 1.13.6 for later changes in this area.
|
---|
693 |
|
---|
694 | |
---|
695 |
|
---|
696 | version 1.13.2 - Paul Eggert, 1999-07-14.
|
---|
697 |
|
---|
698 | * Bug reporting address changed to <bug-tar@gnu.org>.
|
---|
699 |
|
---|
700 | |
---|
701 |
|
---|
702 | version 1.13.1 - Paul Eggert, 1999-07-12.
|
---|
703 |
|
---|
704 | * Bug fixes only.
|
---|
705 | |
---|
706 |
|
---|
707 | version 1.13 - Paul Eggert, 1999-07-08.
|
---|
708 |
|
---|
709 | * Support for large files, e.g., files larger than 2 GB on many 32-bit hosts.
|
---|
710 | Also, support for larger uids, device ids, etc.
|
---|
711 | * Many bug fixes and porting fixes.
|
---|
712 | * This release is only for fixes. A more ambitious test release,
|
---|
713 | with new features, is available as part of the paxutils. Please see:
|
---|
714 | ftp://alpha.gnu.org/gnu/paxutils/
|
---|
715 | The fixes in this release are intended to be merged with paxutils
|
---|
716 | at some point, but they haven't been merged yet.
|
---|
717 | * An interim GNU tar alpha had new --bzip2 and --ending-file options,
|
---|
718 | but they have been removed to maintain compatibility with paxutils.
|
---|
719 | Please try --use=bzip2 instead of --bzip2.
|
---|
720 | |
---|
721 |
|
---|
722 | Version 1.12 - François Pinard, 1997-04.
|
---|
723 |
|
---|
724 | Sensitive matters
|
---|
725 | * Use shell globbing patterns for --label, instead of regular expressions.
|
---|
726 | * Do not quote anymore internally over the quoting done by the shell.
|
---|
727 |
|
---|
728 | Output for humans
|
---|
729 | * Offer internationalization capabilities of most recent GNU gettext.
|
---|
730 | * Messages available in many more languages, thanks to all translators!
|
---|
731 | * Usage of ISO 8601 dates in listings, instead of local American dates.
|
---|
732 | * More normalization and cleanup in error messages.
|
---|
733 |
|
---|
734 | Creation
|
---|
735 | * For helping using tar with find, offer a --no-recursion option.
|
---|
736 | * Implement --numeric-owner for ignoring symbolic names at create time.
|
---|
737 | * New --owner, --group --mode options, still preliminary.
|
---|
738 | * Recognize creating an archive on /dev/null, so Amanda works faster.
|
---|
739 | * Object to the creation of an empty archive (like in `tar cf FILE').
|
---|
740 | * Barely start implementing --posix and POSIXLY_CORRECT.
|
---|
741 |
|
---|
742 | Extraction
|
---|
743 | * Make a better job at restoring file and directory attributes.
|
---|
744 | * Automatically attempt deleting existing files when in the way.
|
---|
745 | * Option --unlink-first (-U) removes most files prior to extraction.
|
---|
746 | * Option --recursive-unlink removes non-empty directories when in the way.
|
---|
747 | * Option --numeric-owner ignores owner/group names, it uses UID/GID instead.
|
---|
748 | * Use global umask when creating missing intermediate directories.
|
---|
749 | * When symlinks are not available, extract symbolic links as hard links.
|
---|
750 | * Diagnose extraction of contiguous files as regular files.
|
---|
751 | * New --backup, --suffix and --version-control options.
|
---|
752 |
|
---|
753 | Various changes
|
---|
754 | * Better support of huge archives with --tape-length and --totals.
|
---|
755 | * Rename option --read-full-blocks (-B) to --read-full-records (-B).
|
---|
756 | * Rename option --block-size (-b) to --blocking-factor (-b).
|
---|
757 | * Rename option --record-number (-R) to --block-number (-R).
|
---|
758 | * With --block-number (-R), report null blocks and end of file.
|
---|
759 | * Implement --record-size for introducing a size in bytes.
|
---|
760 | * Delete --block-compress option and rather decide it automatically.
|
---|
761 | * Rename option --modification-time to --touch.
|
---|
762 |
|
---|
763 | Many bugs are squashed, while others still run free.
|
---|
764 | |
---|
765 |
|
---|
766 | Version 1.11.8 - François Pinard, 1995-06.
|
---|
767 |
|
---|
768 | * Messages available in French, German, Portuguese and Swedish.
|
---|
769 | * The distribution provides a rudimentary Texinfo manual.
|
---|
770 | * The device defaults to stdin/stdout, unless overridden by the installer.
|
---|
771 | * Option --sparse (-S) should work on more systems.
|
---|
772 | * Option --rsh-command may select an alternative remote shell program.
|
---|
773 |
|
---|
774 | Most changes are internal, and should yield better portability.
|
---|
775 | |
---|
776 |
|
---|
777 | Version 1.11.2 - Michael Bushnell, 1993-03.
|
---|
778 |
|
---|
779 | * Changes in backup scripts: cleaned up considerably; notices error
|
---|
780 | conditions better over rsh; DUMP_REMIND_SCRIPT is now an option in
|
---|
781 | backup-specs; new file dump-remind is an example of a
|
---|
782 | DUMP_REMIND_SCRIPT.
|
---|
783 |
|
---|
784 | * Superfluous "Reading dirname" was a bug; fixed.
|
---|
785 |
|
---|
786 | * Incompatibility problems with a bug on Solaris are fixed.
|
---|
787 |
|
---|
788 | * New option --gzip (aliases are --ungzip and -z); calls gzip instead
|
---|
789 | of compress. Also, --use-compress-program lets you specify any
|
---|
790 | compress program. --compress-block is renamed --block-compress and
|
---|
791 | now requires one of the three compression options to be specified.
|
---|
792 |
|
---|
793 | * Several error messages are cleaned up.
|
---|
794 |
|
---|
795 | * Directory owners are now set properly when running as root.
|
---|
796 |
|
---|
797 | * Provide DUMP_REMIND_SCRIPT in backup-specs as a possible option
|
---|
798 | for --info-script.
|
---|
799 |
|
---|
800 | * Behave better with broken rmt servers.
|
---|
801 |
|
---|
802 | * Dump scripts no longer use --atime-preserve; this causes a nasty probem.
|
---|
803 |
|
---|
804 | * Several Makefile cleanups.
|
---|
805 | |
---|
806 |
|
---|
807 | Version 1.11.1 - Michael Bushnell, 1992-09.
|
---|
808 |
|
---|
809 | * Many bug fixes.
|
---|
810 | |
---|
811 |
|
---|
812 | Version 1.11 - Michael Bushnell, 1992-09.
|
---|
813 | Version 1.10.16 - 1992-07.
|
---|
814 | Version 1.10.15 - 1992-06.
|
---|
815 | Version 1.10.14 - 1992-05.
|
---|
816 | Version 1.10.13 - 1992-01.
|
---|
817 |
|
---|
818 | * Many bug fixes.
|
---|
819 |
|
---|
820 | * Now uses GNU standard configure, generated by Autoconf.
|
---|
821 |
|
---|
822 | * Long options now use `--'; use of `+' is deprecated and support
|
---|
823 | for it will eventually be removed.
|
---|
824 |
|
---|
825 | * New option --null causes filenames read by -T to be
|
---|
826 | null-terminated, and causes -C to be ignored.
|
---|
827 |
|
---|
828 | * New option --remove-files deletes files (but not directories)
|
---|
829 | after they are added to the archive.
|
---|
830 |
|
---|
831 | * New option --ignore-failed-read prevents read-errors from affecting
|
---|
832 | the exit status.
|
---|
833 |
|
---|
834 | * New option --checkpoint prints occasional messages as the tape
|
---|
835 | is being read or written.
|
---|
836 |
|
---|
837 | * New option --show-omitted-dirs prints the names of directories
|
---|
838 | omitted from the archive.
|
---|
839 |
|
---|
840 | * Some tape drives which use a non-standard method of indicating
|
---|
841 | end-of-tape now work correctly with multi-tape archives.
|
---|
842 |
|
---|
843 | * --volno-file: Read the volume number used in prompting the user
|
---|
844 | (but not in recording volume ID's on the archive) from a file.
|
---|
845 |
|
---|
846 | * When using --multi-volume, you can now give multiple -f arguments;
|
---|
847 | the various tape drives will get used in sequence and then wrap
|
---|
848 | around to the beginning.
|
---|
849 |
|
---|
850 | * Remote archive names no longer have to be in /dev: any file with a
|
---|
851 | `:' is interpreted as remote. If new option --force-local is given,
|
---|
852 | then even archive files with a `:' are considered local.
|
---|
853 |
|
---|
854 | * New option --atime-preserve restores (if possible) atimes to
|
---|
855 | their original values after dumping the file.
|
---|
856 |
|
---|
857 | * No longer does tar confusingly dump "." when you don't tell it
|
---|
858 | what to dump.
|
---|
859 |
|
---|
860 | * When extracting directories, tar now correctly restores their
|
---|
861 | modification and access times.
|
---|
862 |
|
---|
863 | * Longnames support is redone differently--long name info directly
|
---|
864 | precedes the long-named file or link in the archive, so you no
|
---|
865 | longer have to wait for the extract to hit the end of the tape for
|
---|
866 | long names to work.
|
---|
867 | |
---|
868 |
|
---|
869 | Version 1.10 - Michael Bushnell, 1991-07.
|
---|
870 |
|
---|
871 | * Filename to -G is optional. -C works right. Names +newer and
|
---|
872 | +newer-mtime work right.
|
---|
873 |
|
---|
874 | * -g is now +incremental, -G is now +listed-incremental.
|
---|
875 |
|
---|
876 | * Sparse files now work correctly.
|
---|
877 |
|
---|
878 | * +volume is now called +label.
|
---|
879 |
|
---|
880 | * +exclude now takes a filename argument, and +exclude-from does
|
---|
881 | what +exclude used to do.
|
---|
882 |
|
---|
883 | * Exit status is now correct.
|
---|
884 |
|
---|
885 | * +totals keeps track of total I/O and prints it when tar exits.
|
---|
886 |
|
---|
887 | * When using +label with +extract, the label is now a regexp.
|
---|
888 |
|
---|
889 | * New option +tape-length (-L) does multi-volume handling like BSD
|
---|
890 | dump: you tell tar how big the tape is and it will prompt at that
|
---|
891 | point instead of waiting for a write error.
|
---|
892 |
|
---|
893 | * New backup scripts level-0 and level-1 which might be useful
|
---|
894 | to people. They use a file "backup-specs" for information, and
|
---|
895 | shouldn't need local modification. These are what we use to do
|
---|
896 | all our backups at the FSF.
|
---|
897 | |
---|
898 |
|
---|
899 | Version 1.09 - Jay Fenlason, 1990-10.
|
---|
900 | Version 1.08 - Jay Fenlason, 1990-01.
|
---|
901 | Versions 1.07 back to 1.00 by Jay Fenlason.
|
---|
902 |
|
---|
903 | * See ChangeLog for more details.
|
---|
904 |
|
---|
905 | |
---|
906 |
|
---|
907 |
|
---|
908 | Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003,
|
---|
909 | 2004, 2005, 2006 Free Software Foundation, Inc.
|
---|
910 |
|
---|
911 | This file is part of GNU tar.
|
---|
912 |
|
---|
913 | GNU tar is free software; you can redistribute it and/or modify
|
---|
914 | it under the terms of the GNU General Public License as published by
|
---|
915 | the Free Software Foundation; either version 2, or (at your option)
|
---|
916 | any later version.
|
---|
917 |
|
---|
918 | GNU tar is distributed in the hope that it will be useful,
|
---|
919 | but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
920 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
---|
921 | GNU General Public License for more details.
|
---|
922 |
|
---|
923 | You should have received a copy of the GNU General Public License
|
---|
924 | along with tar; see the file COPYING. If not, write to
|
---|
925 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
---|
926 | Boston, MA 02110-1301, USA.
|
---|
927 | |
---|
928 |
|
---|
929 | Local variables:
|
---|
930 | mode: outline
|
---|
931 | paragraph-separate: "[ |
---|
932 | ]*$"
|
---|
933 | end:
|
---|