X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Ftar;a=blobdiff_plain;f=README;h=ed5d79887a58f7384c5f176ee387b5a8b423b7fa;hp=3387258401b19561a03dd2461a876e663f477f69;hb=HEAD;hpb=f6bb9ed8625cd6a37d861762f035db642c783ef5 diff --git a/README b/README index 3387258..ed5d798 100644 --- a/README +++ b/README @@ -1,98 +1,253 @@ -This GNU tar 1.10. Please send bug reports, etc., to -bug-gnu-utils@prep.ai.mit.edu. +README for GNU tar +See the end of file for copying conditions. -GNU tar is based heavily on John Gilmore's public domain tar, but with -added features. The manual is currently being written. An old -manual, surely riddled with errors, is in tar.texinfo. Please don't -send in bug reports about that manual. In particular, the mechanism -for doing incremental dumps has been significantly changed. +* Introduction -This distribution also includes rmt, the remote tape server (which -must reside in /etc). The mt program is in the GNU cpio distribution. +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. -To compile tar (and rmt, if your system has the needed features) on -Unix-like systems: +If you got the 'tar' distribution in 'shar' format, time stamps ought to be +properly restored; do not ignore such complaints at 'unshar' time. -1. Type `./configure'. This shell script attempts to guess correct -values for various system-dependent variables used during compilation, -and creates the file `Makefile'. This takes a couple of minutes. +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. -If you want to compile in a different directory from the one -containing the source code, `cd' to that directory and run `configure' -with the option `+srcdir=DIR', where DIR is the directory that -contains the source code. The object files and executables will be -put in the current directory. This option only works with versions of -`make' that support the VPATH variable. `configure' ignores any other -arguments you give it. +GNU 'tar' is derived from John Gilmore's public domain 'tar'. -If your system requires unusual options for compilation or linking -that `configure' doesn't know about, you can give `configure' initial -values for variables by setting them in the environment; in -Bourne-compatible shells, you can do that on the command line like -this: -$ CC='gcc -traditional' LIBS=-lposix ./configure +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. -2. If you want to change the directories where the programs will be -installed, or the optimization options, edit `Makefile' and change -those values. If you have an unusual system that needs special -compilation options that `configure' doesn't know about, and you -didn't pass them in the environment when running `configure', you -should add them to `Makefile' now. Alternately, teach `configure' how -to figure out that it is being run on a system where they are needed, -and mail the diffs to the address listed at the top of this file so we -can include them in the next release. +Besides those configure options documented in files 'INSTALL' and +'ABOUT-NLS', an extra option may be accepted after './configure': -3. Type `make'. +* Install -4. If your system needs to link with -lPW to get alloca, but has -rename in the C library (so WANT_RENAME is not used), -lPW might give -you an incorrect version of rename. On HP-UX this manifests itself as -an undefined data symbol called "Error" when linking tar. If this -happens, use `ar x' to extract alloca.o from libPW.a and `ar rc' to -put it in a library liballoca.a, and put that in LIBS instead of -lPW. -This problem does not occur when using gcc, which has alloca built in. +** Selecting the default archive format. -5. If the programs compile successfully, type `make install' to -install them. +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. -6. After you have installed the programs, you can remove the binaries -from the source directory by typing `make clean'. Type `make -distclean' if you also want to remove `Makefile', for instance if you -are going to recompile tar next on another type of machine. +** Selecting the default archive device -makefile.pc is a makefile for Turbo C 2.0 on MS-DOS. +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. -Various people have been having problems using floppies on a NeXT. -I've gotten conflicting reports about what should be done to solve the -problems, and we have no way to test it ourselves. +** 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.: -User-visible changes since 1.09: +./configure DEFAULT_RMT_DIR=/etc -Filename to -G is optional. -C works right. -Names +newer and +newer-mtime work right. +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: --g is now +incremental --G is now +listed-incremental +./configure --with-rmt=/etc/rmt -Sparse files now work correctly. +This will also disable building the included version of rmt. -+volume is now called +label. +** Installing backup scripts. -+exclude now takes a filename argument, and +exclude-from does what -+exclude used to do. +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. -Exit status is now correct. +Use option --enable-backup-scripts to compile and install these +scripts. -+totals keeps track of total I/O and prints it when tar exits. +** '--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. -When using +label with +extract, the label is now a regexp. +* Installation hints -New option +tape-length (-L) does multi-volume handling like BSD dump: -you tell tar how big the tape is and it will prompt at that point -instead of waiting for a write error. +Here are a few hints which might help installing 'tar' on some systems. -New backup scripts level-0 and level-1 which might be useful to -people. They use a file "backup-specs" for information, and shouldn't -need local modification. These are what we use to do all our backups -at the FSF. +** gzip and bzip2. + +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 +. You can work around the +incompatibility by using a shell command like + 'gzip -d is not found (Slackware). + +** OPENStep 4.2 swap files + +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. + +* Special topics + +Here are a few special matters about GNU 'tar', not related to build +matters. See previous section for such. + +** File attributes. + +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. + +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. + +** POSIX compliance. + +GNU 'tar' is able to create archive in the following formats: + + *** 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) + +In addition to those, GNU 'tar' is also able to read archives +produced by 'star' archiver. + +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. + +Please read the file NEWS for more information about POSIX compliance +and new 'tar' features. + +* What's next? + +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. + +* Bug reporting. + +Send bug reports to . 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. + +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 . + + +* 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 . + +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. + +Local Variables: +mode: outline +paragraph-separate: "[ ]*$" +version-control: never +End: