]> Dogcows Code - chaz/tar/blobdiff - README
Options to control option handling in file lists.
[chaz/tar] / README
diff --git a/README b/README
index 88a70df36a5fac4285a76b28d42c4e693df29e91..ed5d79887a58f7384c5f176ee387b5a8b423b7fa 100644 (file)
--- a/README
+++ b/README
-This is an unofficial port of GNU `tar' 1.12 to large
-file environments like Solaris 2.6 and HP-UX 10.20 that rely on integer
-system types longer than `long'.  Ordinary GNU `tar' 1.12 cannot handle
-files larger than 2 GB when compiled in such environments.  This port
-addresses that problem, and fixes some other well-known bugs in GNU tar 1.12.
-Please send bug reports specific to this unofficial version of GNU `tar'
-to <eggert@twinsun.com>.
-
-This is not intended to be a forked release for GNU tar; it's
-just an interim experimental release, mostly intended for
-Large File Summit hosts like Solaris 2.6.  The patches of this
-release have all been submitted via the usual channels and
-they should no longer be needed once the next official release
-of GNU tar is out.
+README for GNU tar
+See the end of file for copying conditions.
 
+* Introduction
 
 Please glance through *all* sections of this
-`README' file before starting configuration.  Also make sure you read files
-`ABOUT-NLS' and `INSTALL' if you are not familiar with them already.
+'README' file before starting configuration.  Also make sure you read files
+'ABOUT-NLS' and 'INSTALL' if you are not familiar with them already.
 
-If you got the `tar' distribution in `shar' format, timestamps ought to be
-properly restored, do not ignore such complaints at `unshar' time.
+If you got the 'tar' distribution in 'shar' format, time stamps ought to be
+properly restored; do not ignore such complaints at 'unshar' time.
 
-GNU `tar' saves many files together into a single tape or disk
+GNU 'tar' saves many files together into a single tape or disk
 archive, and can restore individual files from the archive.  It includes
 multivolume support, the ability to archive sparse files, automatic archive
 compression/decompression, remote archives and special features that allow
-`tar' to be used for incremental and full backups.  This distribution
-also includes `rmt', the remote tape server.  The `mt' tape drive control
-program is in the GNU `cpio' distribution.
-
-GNU `tar' is derived from John Gilmore's public domain `tar'.
-
-See file `ABOUT-NLS' for how to customize this program to your language.
-See file `BACKLOG' for a summary of pending mail and articles.
-See file `COPYING' for copying conditions.
-See file `INSTALL' for compilation and installation instructions.
-See file `PORTS' for various ports of GNU tar to non-Unix systems.
-See file `NEWS' for a list of major changes in the current release.
-See file `THANKS' for a list of contributors.
-
-Besides those configure options documented in files `INSTALL' and
-`ABOUT-NLS', a few extra options may be accepted after `./configure':
-
-* `--with-dmalloc' is a debugging option for looking at memory management
-problems, it prerequires Gray Watson's package, which is available as
-`ftp://ftp.letters.com/src/dmalloc/dmalloc.tar.gz'.
-
-The default archive device is now `stdin' on read and `stdout' on write.
-The installer can still override this by presetting `DEFAULT_ARCHIVE'
-in the environment before configuring (the behavior of `-[0-7]' or
-`-[0-7]lmh' options in `tar' are then derived automatically).  Similarly,
-`DEFAULT_BLOCKING' can be preset to something else than 20.
-
-For comprehensive modifications to GNU tar, you might need tools beyond
-those used in simple installations.  Fully install GNU m4 1.4 first,
-and only then, Autoconf 2.13 or later.  Install Perl, then Automake
-1.4 or later.  You might need Bison 1.26 or later, and GNU tar itself.
-All are available on GNU archive sites, like in
-ftp://ftp.gnu.org/pub/gnu/.
-
-Send bug reports to `tar-bugs@gnu.ai.mit.edu'.  (Beware, old-timers: it is
-`@gnu', not `@prep'; and not `bug-gnu-utils' anymore.)  A bug report is
-an adequate description of the problem: your input, what you expected,
-what you got, and why this is wrong.  Diffs are welcome, but they only
-describe a solution, from which the problem might be uneasy to infer.
-If needed, submit actual data files with your report.  Small data files
-are preferred.  Big files may sometimes be necessary, but do not send them
-to the report address; rather take special arrangement with the maintainer.
+'tar' to be used for incremental and full backups.  This distribution
+also includes 'rmt', the remote tape server.  The 'mt' tape drive control
+program is in the GNU 'cpio' distribution.
 
-Your feedback will help us to make a better and more portable package.
-Consider documentation errors as bugs, and report them as such.  If you
-develop anything pertaining to `tar' or have suggestions, let us know
-and share your findings by writing at `tar-forum@iro.umontreal.ca'.
+GNU 'tar' is derived from John Gilmore's public domain 'tar'.
+
+See file 'ABOUT-NLS' for how to customize this program to your language.
+See file 'COPYING' for copying conditions.
+See file 'INSTALL' for compilation and installation instructions.
+See file 'NEWS' for a list of major changes in the current release.
+See file 'THANKS' for a list of contributors.
+
+Besides those configure options documented in files 'INSTALL' and
+'ABOUT-NLS', an extra option may be accepted after './configure':
+
+* Install
+
+** Selecting the default archive format.
+
+The default archive format is GNU, this can be overridden by
+presetting DEFAULT_ARCHIVE_FORMAT while configuring. The allowed
+values are GNU, V7, OLDGNU, USTAR and POSIX.
+
+** Selecting the default archive device
+
+The default archive device is now 'stdin' on read and 'stdout' on write.
+The installer can still override this by presetting 'DEFAULT_ARCHIVE'
+in the environment before configuring (the behavior of '-[0-7]' or
+'-[0-7]lmh' options in 'tar' are then derived automatically).  Similarly,
+'DEFAULT_BLOCKING' can be preset to something else than 20.
+
+** Selecting full pathname of the "rmt" binary.
+
+Previous versions of tar always looked for "rmt" binary in the
+directory "/etc/rmt". However, the "rmt" program included
+in the distribution was installed under "$prefix/libexec/rmt".
+To fix this discrepancy, tar now looks for "$prefix/libexec/rmt".
+If you do not want this behavior, specify full path name of
+"rmt" binary using DEFAULT_RMT_DIR variable, e.g.:
+
+./configure DEFAULT_RMT_DIR=/etc
+
+If you already have a copy of "rmt" installed and wish to use it
+instead of the version supplied with the distribution, use --with-rmt
+option:
+
+./configure --with-rmt=/etc/rmt
+
+This will also disable building the included version of rmt.
+
+** Installing backup scripts.
+
+This version of tar is shipped with the shell scripts for producing
+incremental backups (dumps) and restoring filesystems from them.
+The name of the backup script is "backup". The name of the
+restore script is "restore". They are installed in "$prefix/sbin"
+directory.
+
+Use option --enable-backup-scripts to compile and install these
+scripts.
+
+** '--disable-largefile' omits support for large files, even if the
+operating system supports large files.  Typically, large files are
+those larger than 2 GB on a 32-bit host.
 
-.--------------------.
-| Installation hints |
-`--------------------'
+* Installation hints
 
-Here are a few hints which might help installing `tar' on some systems.
+Here are a few hints which might help installing 'tar' on some systems.
 
-* Static linking.
+** gzip and bzip2.
 
-Some platform will, by default, prepare a smaller `tar' executable
-which depends on shared libraries.  Since GNU `tar' may be used for
+GNU tar uses the gzip and bzip2 programs to read and write compressed
+archives.  If you don't have these programs already, you need to
+install them.  Their sources can be found at:
+
+ftp://ftp.gnu.org/gnu/gzip/
+http://sourceware.cygnus.com/bzip2/
+
+If you see the following symptoms:
+
+   $ tar -xzf file.tar.gz
+   gzip: stdin: decompression OK, trailing garbage ignored
+   tar: Child returned status 2
+
+then you have encountered a gzip incompatibility that should be fixed
+in gzip test version 1.3, which as of this writing is available at
+<ftp://alpha.gnu.org/gnu/gzip/>.  You can work around the
+incompatibility by using a shell command like
+ 'gzip -d <file.tar.gz | tar -xzf -'.
+
+** Solaris issues.
+
+GNU tar exercises many features that can cause problems with older GCC
+versions.  In particular, GCC 2.8.1 (sparc, -O1 or -O2) is known to
+miscompile GNU tar.  No compiler-related problems have been reported
+when using GCC 2.95.2 or later.
+
+Recent versions of Solaris tar sport a new -E option to generate
+extended headers in an undocumented format.  GNU tar does not
+understand these headers.
+
+** Static linking.
+
+Some platform will, by default, prepare a smaller 'tar' executable
+which depends on shared libraries.  Since GNU 'tar' may be used for
 system-level backups and disaster recovery, installers might prefer to
-force static linking, making a bigger `tar' executable maybe, but able to
+force static linking, making a bigger 'tar' executable maybe, but able to
 work standalone, in situations where shared libraries are not available.
 The way to achieve static linking varies between systems.  Set LDFLAGS
-to a value from the table below, before configuration (see `INSTALL').
+to a value from the table below, before configuration (see 'INSTALL').
 
        Platform        Compiler        LDFLAGS
 
        (any)           Gnu C           -static
-       AIX             (vendor)        "-bnso -bI:/lib/syscalls.exp"
+       AIX             (vendor)        -bnso -bI:/lib/syscalls.exp
        HPUX            (vendor)        -Wl,-a,archive
        IRIX            (vendor)        -non_shared
        OSF             (vendor)        -non_shared
@@ -100,93 +136,118 @@ to a value from the table below, before configuration (see `INSTALL').
        Solaris         (vendor)        -Bstatic
        SunOS           (vendor)        -Bstatic
 
-* Failed `incremen.sh'.
+** Failed tests 'ignfail.sh' or 'incremen.sh'.
 
-In an NFS environment, lack of synchronisation between machine clocks
-might create difficulties to any tool comparing dates and file timestamps,
-like `tar' in incremental dumps.  This has been a recurrent problem in
-GNU Makefiles for the last few years.  We would like a general solution.
+In an NFS environment, lack of synchronization between machine clocks
+might create difficulties to any tool comparing dates and file time stamps,
+like 'tar' in incremental dumps.  This has been a recurrent problem with
+GNU Make for the last few years.  We would like a general solution.
 
-* BSD compatibility matters.
+** BSD compatibility matters.
 
-Set LIBS to `-lbsd' before configuration (see `INSTALL') if the linker
-complains about undefined `valloc' (AIX) or `bsd_ioctl' (Slackware).
-Also set CPPFLAGS to `-I/usr/include/bsd/sys' before configuration to
-solve dirent problems (NeXT), or to `-I/usr/include/bsd' if <sgtty.h>
-is not found (Slackware).
+Set LIBS to '-lbsd' before configuration (see 'INSTALL') if the linker
+complains about 'bsd_ioctl' (Slackware).  Also set CPPFLAGS to
+'-I/usr/include/bsd' if <sgtty.h> is not found (Slackware).
 
-* `union wait' problems.
+** OPENStep 4.2 swap files
 
-Configuration of `union wait' does not always take the best decision.
-If you have this problem, edit file `config.cache' after configuration,
-find the line about `tar_cv_header_union_wait', change `yes' by `no'
-or vice-versa, execute `./config.status', then launch `make'.
+Tar cannot read the file /private/vm/swapfile.front (even as root).
+This file is not a real file, but some kind of uncompressed view of
+the real compressed swap file; there is no reason to back it up, so
+the simplest workaround is to avoid tarring this file.
 
-* `%lld' unsupported in `printf'.
+* Special topics
 
-GNU C has `long long', but the underneath C library might not support
-the `%lld' format.  If you have this problem, edit file `config.cache'
-after configuration, find the line about `ac_cv_sizeof_long_long, change
-`8' by `0', execute `./config.status', then launch `make'.
+Here are a few special matters about GNU 'tar', not related to build
+matters.  See previous section for such.
 
-* FreeBSD users -- `configure' fails.
+** File attributes.
 
-It has been reported that `configure' does not run on FreeBSD 2.1.7,
-because of a buggy `sh'.  It works using `bash', however.
+About *security*, it is probable that future releases of 'tar' will have
+some behavior changed.  There are many pending suggestions to choose from.
+Today, extracting an archive not being 'root', 'tar' will restore suid/sgid
+bits on files but owned by the extracting user.  'root' automatically gets
+a lot of special privileges, '-p' might later become required to get them.
 
-* ISC users -- `S_*' symbols undefined.
+GNU 'tar' does not properly restore symlink attributes.  Various systems
+implement flavors of symbolic links showing different behavior and
+properties.  We did not successfully sorted all these out yet.  Currently,
+the 'lchown' call will be used if available, but that's all.
 
-On ISC 4.1mu, POSIX environment, set CFLAGS to `-posix' and CPPFLAGS to
-`-D_SYSV3' before configuration (see `INSTALL').  This will trigger the
-definition of a few `S_' prefixed symbols from <sys/stat.h>.
+** POSIX compliance.
 
-* Ultrix users -- broken `make'.
+GNU 'tar' is able to create archive in the following formats:
 
-It seems that Ultrix make does not correctly handle shell commands
-having logical connectives in them.  Use `s5make' if you have it, try
-`PROG_ENV=SYSTEM_FIVE make' (works on Ultrix 4.4), or install GNU Make.
+  *** The format of UNIX version 7
+  *** POSIX.1-1988 format, also known as "ustar format"
+  *** POSIX.1-2001 format, also known as "pax format"
+  *** Old GNU format (described below)
 
-.------------------.
-| Special topics.  |
-`------------------'
+In addition to those, GNU 'tar' is also able to read archives
+produced by 'star' archiver.
 
-Here are a few special matters about GNU `tar', not related to build
-matters.  See previous section for such.
+A so called 'Old GNU' format is based on an early draft of the
+POSIX 1003.1 'ustar' standard which is different from the final
+standard. It defines its extensions (such as incremental backups
+and handling of the long file names) in a way incompatible with
+any existing tar archive format, therefore the use of old GNU
+format is strongly discouraged.
 
-* File attributes.
+Please read the file NEWS for more information about POSIX compliance
+and new 'tar' features.
 
-About *security*, it is probable that future releases of `tar' will have
-some behaviour changed.  There are many pending suggestions to choose from.
-Today, extracting an archive not being `root', `tar' will restore suid/sgid
-bits on files but owned by the extracting user.  `root' automatically gets
-a lot of special priviledges, `-p' might later become required to get them.
-
-GNU `tar' does not properly restore symlink attributes.  Various systems
-implement flavours of symbolic links showing different behaviour and
-properties.  We did not successfully sorted all these out yet.  Currently,
-the `lchown' call will be used if available, but that's all.
+* What's next?
 
-* POSIX compliance.
+GNU tar will be merged into GNU paxutils: a project containing
+several utilities related to creating and handling archives in
+various formats. The project will include tar, cpio and pax
+utilities.
 
-GNU `tar' implements an early draft of the POSIX 1003.1 `ustar' standard
-which is different from the final standard.  This will be progressively
-corrected over the incoming few years.  Don't be mislead by the mere
-existence of the --posix option.  Later releases will become able to
-read truly POSIX archives, and also to produce them under option.  (Also,
-if you look at the internals, don't take the GNU extensions you see for
-granted, as they are planned to change.)  GNU tar 2.0 will produce POSIX
-archives by default, but there is a long way before we get there.
+* Bug reporting.
 
-* What's next?
+Send bug reports to <bug-tar@gnu.org>.  A bug report should contain
+an adequate description of the problem, your input, what you expected,
+what you got, and why this is wrong.  Diffs are welcome, but they only
+describe a solution, from which the problem might be uneasy to infer.
+If needed, submit actual data files with your report.  Small data files
+are preferred.  Big files may sometimes be necessary, but do not send them
+to the report address; rather take special arrangement with the maintainer.
 
-The emphasis from 1.11.2 to 1.12 has been on solving the main portability,
-execution or usability bugs.  This was accompanied all over with an
-internal cleanup in the sources, and the reassembly of a `tar' manual.
-
-The `BACKLOG' file shows an approximative priorisation of the many pending
-problems and suggestions.  Besides pending problems and all other matters
-listed above, the cleanup is planned to continue and extend to the general
-organisation of the code, preparing a long time in advance for a possible
-merge of the `cpio' and `tar' distributions, into some common `paxutils'.
-We also want to address some long-awaited performance issues (for example:
-double buffering) or enhancements (for example: per-file compression).
+Your feedback will help us to make a better and more portable package.
+Consider documentation errors as bugs, and report them as such.  If you
+develop anything pertaining to 'tar' or have suggestions, let us know
+and share your findings by writing to <bug-tar@gnu.org>.
+
+\f
+* Copying
+
+Copyright 1990-1992, 1994, 1997-2001, 2003-2004, 2007, 2012-2014 Free
+Software Foundation, Inc.
+
+This file is part of GNU tar.
+
+GNU tar is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3 of the License, or
+(at your option) any later version.
+
+GNU tar is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+NOTE ON COPYRIGHT YEARS
+
+In copyright notices where the copyright holder is the Free Software
+Foundation, then where a range of years appears, this is an inclusive
+range that applies to every year in the range.  For example: 2005-2008
+represents the years 2005, 2006, 2007, and 2008.
+\f
+Local Variables:
+mode: outline
+paragraph-separate: "[ \f]*$"
+version-control: never
+End:
This page took 0.029003 seconds and 4 git commands to generate.