]>
Commit | Line | Data |
---|---|---|
3aa399bc | 1 | Please glance through *all* sections of this |
ea6fcdf2 PE |
2 | `README' file before starting configuration. Also make sure you read files |
3 | `ABOUT-NLS' and `INSTALL' if you are not familiar with them already. | |
c086e08a | 4 | |
0b277662 PE |
5 | If you got the `tar' distribution in `shar' format, time stamps ought to be |
6 | properly restored; do not ignore such complaints at `unshar' time. | |
ea6fcdf2 PE |
7 | |
8 | GNU `tar' saves many files together into a single tape or disk | |
9 | archive, and can restore individual files from the archive. It includes | |
10 | multivolume support, the ability to archive sparse files, automatic archive | |
11 | compression/decompression, remote archives and special features that allow | |
12 | `tar' to be used for incremental and full backups. This distribution | |
13 | also includes `rmt', the remote tape server. The `mt' tape drive control | |
14 | program is in the GNU `cpio' distribution. | |
15 | ||
16 | GNU `tar' is derived from John Gilmore's public domain `tar'. | |
17 | ||
18 | See file `ABOUT-NLS' for how to customize this program to your language. | |
ea6fcdf2 PE |
19 | See file `COPYING' for copying conditions. |
20 | See file `INSTALL' for compilation and installation instructions. | |
21 | See file `PORTS' for various ports of GNU tar to non-Unix systems. | |
22 | See file `NEWS' for a list of major changes in the current release. | |
23 | See file `THANKS' for a list of contributors. | |
24 | ||
25 | Besides those configure options documented in files `INSTALL' and | |
bf9a7d3d | 26 | `ABOUT-NLS', an extra option may be accepted after `./configure': |
ea6fcdf2 | 27 | |
bf9a7d3d PE |
28 | * `--disable-largefile' omits support for large files, even if the |
29 | operating system supports large files. Typically, large files are | |
30 | those larger on 2 GB on a 32-bit host. | |
ea6fcdf2 PE |
31 | |
32 | The default archive device is now `stdin' on read and `stdout' on write. | |
33 | The installer can still override this by presetting `DEFAULT_ARCHIVE' | |
34 | in the environment before configuring (the behavior of `-[0-7]' or | |
35 | `-[0-7]lmh' options in `tar' are then derived automatically). Similarly, | |
36 | `DEFAULT_BLOCKING' can be preset to something else than 20. | |
37 | ||
38 | For comprehensive modifications to GNU tar, you might need tools beyond | |
39 | those used in simple installations. Fully install GNU m4 1.4 first, | |
13140bca | 40 | and only then, Autoconf 2.13 or later. Install Perl, then Automake |
bf9a7d3d | 41 | 1.4 or later. You might need Bison 1.28 or later, and GNU tar itself. |
13140bca PE |
42 | All are available on GNU archive sites, like in |
43 | ftp://ftp.gnu.org/pub/gnu/. | |
ea6fcdf2 | 44 | |
6c48e007 | 45 | Send bug reports to `bug-tar@gnu.org'. (Beware, old-timers: it is |
ea6fcdf2 PE |
46 | `@gnu', not `@prep'; and not `bug-gnu-utils' anymore.) A bug report is |
47 | an adequate description of the problem: your input, what you expected, | |
48 | what you got, and why this is wrong. Diffs are welcome, but they only | |
49 | describe a solution, from which the problem might be uneasy to infer. | |
50 | If needed, submit actual data files with your report. Small data files | |
51 | are preferred. Big files may sometimes be necessary, but do not send them | |
52 | to the report address; rather take special arrangement with the maintainer. | |
53 | ||
54 | Your feedback will help us to make a better and more portable package. | |
55 | Consider documentation errors as bugs, and report them as such. If you | |
56 | develop anything pertaining to `tar' or have suggestions, let us know | |
ffcddc2e | 57 | and share your findings by writing to <bug-tar@gnu.org>. |
ea6fcdf2 | 58 | |
ffcddc2e PE |
59 | |
60 | Installation hints | |
61 | ------------------ | |
ea6fcdf2 PE |
62 | |
63 | Here are a few hints which might help installing `tar' on some systems. | |
64 | ||
afec2899 PE |
65 | * gzip and bzip2. |
66 | ||
67 | GNU tar uses the gzip and bzip2 programs to read and write compressed | |
68 | archives. If you don't have these programs already, you need to | |
69 | install them. Their sources can be found at: | |
70 | ||
71 | ftp://ftp.gnu.org/gnu/gzip/ | |
72 | http://sourceware.cygnus.com/bzip2/ | |
73 | ||
74 | If you see the following symptoms: | |
75 | ||
76 | $ tar -xzf file.tar.gz | |
77 | gzip: stdin: decompression OK, trailing garbage ignored | |
78 | tar: Child returned status 2 | |
79 | ||
80 | then you have encountered a gzip incompatibility that should be fixed | |
ffcddc2e PE |
81 | in gzip test version 1.3, which as of this writing is available at |
82 | <ftp://alpha.gnu.org/gnu/gzip/>. You can work around the | |
83 | incompatibility by using a shell command like | |
84 | `gzip -d <file.tar.gz | tar -xzf -'. | |
afec2899 PE |
85 | |
86 | * Solaris issues. | |
87 | ||
ffcddc2e PE |
88 | GNU tar exercises many features that can cause problems with older GCC |
89 | versions. In particular, GCC 2.8.1 (sparc, -O1 or -O2) is known to | |
90 | miscompile GNU tar. No compiler-related problems have been reported | |
91 | when using GCC 2.95.2 or later. | |
afec2899 PE |
92 | |
93 | Recent versions of Solaris tar sport a new -E option to generate | |
94 | extended headers in an undocumented format. GNU tar does not | |
95 | understand these headers. | |
96 | ||
ea6fcdf2 PE |
97 | * Static linking. |
98 | ||
99 | Some platform will, by default, prepare a smaller `tar' executable | |
100 | which depends on shared libraries. Since GNU `tar' may be used for | |
101 | system-level backups and disaster recovery, installers might prefer to | |
102 | force static linking, making a bigger `tar' executable maybe, but able to | |
103 | work standalone, in situations where shared libraries are not available. | |
104 | The way to achieve static linking varies between systems. Set LDFLAGS | |
105 | to a value from the table below, before configuration (see `INSTALL'). | |
106 | ||
107 | Platform Compiler LDFLAGS | |
108 | ||
109 | (any) Gnu C -static | |
ffcddc2e | 110 | AIX (vendor) -bnso -bI:/lib/syscalls.exp |
ea6fcdf2 PE |
111 | HPUX (vendor) -Wl,-a,archive |
112 | IRIX (vendor) -non_shared | |
113 | OSF (vendor) -non_shared | |
114 | SCO 3.2v5 (vendor) -dn | |
115 | Solaris (vendor) -Bstatic | |
116 | SunOS (vendor) -Bstatic | |
117 | ||
ffcddc2e | 118 | * Failed test `incremen.sh'. |
ea6fcdf2 | 119 | |
0b277662 PE |
120 | In an NFS environment, lack of synchronization between machine clocks |
121 | might create difficulties to any tool comparing dates and file time stamps, | |
ffcddc2e PE |
122 | like `tar' in incremental dumps. This has been a recurrent problem with |
123 | GNU Make for the last few years. We would like a general solution. | |
ea6fcdf2 PE |
124 | |
125 | * BSD compatibility matters. | |
126 | ||
127 | Set LIBS to `-lbsd' before configuration (see `INSTALL') if the linker | |
bf9a7d3d PE |
128 | complains about `bsd_ioctl' (Slackware). Also set CPPFLAGS to |
129 | `-I/usr/include/bsd' if <sgtty.h> is not found (Slackware). | |
ea6fcdf2 | 130 | |
bf9a7d3d | 131 | * OPENStep 4.2 swap files |
ea6fcdf2 | 132 | |
bf9a7d3d PE |
133 | Tar cannot read the file /private/vm/swapfile.front (even as root). |
134 | This file is not a real file, but some kind of uncompressed view of | |
135 | the real compressed swap file; there is no reason to back it up, so | |
136 | the simplest workaround is to avoid tarring this file. | |
ea6fcdf2 | 137 | |
ffcddc2e PE |
138 | |
139 | Special topics | |
140 | -------------- | |
ea6fcdf2 PE |
141 | |
142 | Here are a few special matters about GNU `tar', not related to build | |
143 | matters. See previous section for such. | |
144 | ||
145 | * File attributes. | |
146 | ||
147 | About *security*, it is probable that future releases of `tar' will have | |
0b277662 | 148 | some behavior changed. There are many pending suggestions to choose from. |
ea6fcdf2 PE |
149 | Today, extracting an archive not being `root', `tar' will restore suid/sgid |
150 | bits on files but owned by the extracting user. `root' automatically gets | |
0b277662 | 151 | a lot of special privileges, `-p' might later become required to get them. |
ea6fcdf2 PE |
152 | |
153 | GNU `tar' does not properly restore symlink attributes. Various systems | |
0b277662 | 154 | implement flavors of symbolic links showing different behavior and |
ea6fcdf2 PE |
155 | properties. We did not successfully sorted all these out yet. Currently, |
156 | the `lchown' call will be used if available, but that's all. | |
157 | ||
158 | * POSIX compliance. | |
159 | ||
160 | GNU `tar' implements an early draft of the POSIX 1003.1 `ustar' standard | |
161 | which is different from the final standard. This will be progressively | |
162 | corrected over the incoming few years. Don't be mislead by the mere | |
163 | existence of the --posix option. Later releases will become able to | |
164 | read truly POSIX archives, and also to produce them under option. (Also, | |
165 | if you look at the internals, don't take the GNU extensions you see for | |
166 | granted, as they are planned to change.) GNU tar 2.0 will produce POSIX | |
167 | archives by default, but there is a long way before we get there. | |
168 | ||
169 | * What's next? | |
170 | ||
afec2899 PE |
171 | In the future we will try to release tar-1.14 as soon as possible and |
172 | start merging with paxutils afterwards. We'll also try to rewrite | |
173 | some parts of the documentation after paxutils has been merged. |