README 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. Please glance through *all* sections of this
  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.
  4. If you got the `tar' distribution in `shar' format, time stamps ought to be
  5. properly restored; do not ignore such complaints at `unshar' time.
  6. GNU `tar' saves many files together into a single tape or disk
  7. archive, and can restore individual files from the archive. It includes
  8. multivolume support, the ability to archive sparse files, automatic archive
  9. compression/decompression, remote archives and special features that allow
  10. `tar' to be used for incremental and full backups. This distribution
  11. also includes `rmt', the remote tape server. The `mt' tape drive control
  12. program is in the GNU `cpio' distribution.
  13. GNU `tar' is derived from John Gilmore's public domain `tar'.
  14. See file `ABOUT-NLS' for how to customize this program to your language.
  15. See file `BACKLOG' for a summary of pending mail and articles.
  16. See file `COPYING' for copying conditions.
  17. See file `INSTALL' for compilation and installation instructions.
  18. See file `PORTS' for various ports of GNU tar to non-Unix systems.
  19. See file `NEWS' for a list of major changes in the current release.
  20. See file `THANKS' for a list of contributors.
  21. Besides those configure options documented in files `INSTALL' and
  22. `ABOUT-NLS', an extra option may be accepted after `./configure':
  23. * `--disable-largefile' omits support for large files, even if the
  24. operating system supports large files. Typically, large files are
  25. those larger on 2 GB on a 32-bit host.
  26. The default archive device is now `stdin' on read and `stdout' on write.
  27. The installer can still override this by presetting `DEFAULT_ARCHIVE'
  28. in the environment before configuring (the behavior of `-[0-7]' or
  29. `-[0-7]lmh' options in `tar' are then derived automatically). Similarly,
  30. `DEFAULT_BLOCKING' can be preset to something else than 20.
  31. For comprehensive modifications to GNU tar, you might need tools beyond
  32. those used in simple installations. Fully install GNU m4 1.4 first,
  33. and only then, Autoconf 2.13 or later. Install Perl, then Automake
  34. 1.4 or later. You might need Bison 1.28 or later, and GNU tar itself.
  35. All are available on GNU archive sites, like in
  36. ftp://ftp.gnu.org/pub/gnu/.
  37. Send bug reports to `[email protected]'. (Beware, old-timers: it is
  38. `@gnu', not `@prep'; and not `bug-gnu-utils' anymore.) A bug report is
  39. an adequate description of the problem: your input, what you expected,
  40. what you got, and why this is wrong. Diffs are welcome, but they only
  41. describe a solution, from which the problem might be uneasy to infer.
  42. If needed, submit actual data files with your report. Small data files
  43. are preferred. Big files may sometimes be necessary, but do not send them
  44. to the report address; rather take special arrangement with the maintainer.
  45. Your feedback will help us to make a better and more portable package.
  46. Consider documentation errors as bugs, and report them as such. If you
  47. develop anything pertaining to `tar' or have suggestions, let us know
  48. and share your findings by writing at `[email protected]'.
  49. .--------------------.
  50. | Installation hints |
  51. `--------------------'
  52. Here are a few hints which might help installing `tar' on some systems.
  53. * Static linking.
  54. Some platform will, by default, prepare a smaller `tar' executable
  55. which depends on shared libraries. Since GNU `tar' may be used for
  56. system-level backups and disaster recovery, installers might prefer to
  57. force static linking, making a bigger `tar' executable maybe, but able to
  58. work standalone, in situations where shared libraries are not available.
  59. The way to achieve static linking varies between systems. Set LDFLAGS
  60. to a value from the table below, before configuration (see `INSTALL').
  61. Platform Compiler LDFLAGS
  62. (any) Gnu C -static
  63. AIX (vendor) "-bnso -bI:/lib/syscalls.exp"
  64. HPUX (vendor) -Wl,-a,archive
  65. IRIX (vendor) -non_shared
  66. OSF (vendor) -non_shared
  67. SCO 3.2v5 (vendor) -dn
  68. Solaris (vendor) -Bstatic
  69. SunOS (vendor) -Bstatic
  70. * Failed `incremen.sh'.
  71. In an NFS environment, lack of synchronization between machine clocks
  72. might create difficulties to any tool comparing dates and file time stamps,
  73. like `tar' in incremental dumps. This has been a recurrent problem in
  74. GNU Makefiles for the last few years. We would like a general solution.
  75. * BSD compatibility matters.
  76. Set LIBS to `-lbsd' before configuration (see `INSTALL') if the linker
  77. complains about `bsd_ioctl' (Slackware). Also set CPPFLAGS to
  78. `-I/usr/include/bsd' if <sgtty.h> is not found (Slackware).
  79. * OPENStep 4.2 swap files
  80. Tar cannot read the file /private/vm/swapfile.front (even as root).
  81. This file is not a real file, but some kind of uncompressed view of
  82. the real compressed swap file; there is no reason to back it up, so
  83. the simplest workaround is to avoid tarring this file.
  84. .------------------.
  85. | Special topics. |
  86. `------------------'
  87. Here are a few special matters about GNU `tar', not related to build
  88. matters. See previous section for such.
  89. * File attributes.
  90. About *security*, it is probable that future releases of `tar' will have
  91. some behavior changed. There are many pending suggestions to choose from.
  92. Today, extracting an archive not being `root', `tar' will restore suid/sgid
  93. bits on files but owned by the extracting user. `root' automatically gets
  94. a lot of special privileges, `-p' might later become required to get them.
  95. GNU `tar' does not properly restore symlink attributes. Various systems
  96. implement flavors of symbolic links showing different behavior and
  97. properties. We did not successfully sorted all these out yet. Currently,
  98. the `lchown' call will be used if available, but that's all.
  99. * POSIX compliance.
  100. GNU `tar' implements an early draft of the POSIX 1003.1 `ustar' standard
  101. which is different from the final standard. This will be progressively
  102. corrected over the incoming few years. Don't be mislead by the mere
  103. existence of the --posix option. Later releases will become able to
  104. read truly POSIX archives, and also to produce them under option. (Also,
  105. if you look at the internals, don't take the GNU extensions you see for
  106. granted, as they are planned to change.) GNU tar 2.0 will produce POSIX
  107. archives by default, but there is a long way before we get there.
  108. * What's next?
  109. The emphasis from 1.11.2 to 1.14 has been on solving the main portability,
  110. execution or usability bugs. This was accompanied all over with an
  111. internal cleanup in the sources, and the reassembly of a `tar' manual.
  112. The `BACKLOG' file shows approximate priorities of the many pending
  113. problems and suggestions. Besides pending problems and all other matters
  114. listed above, the cleanup is planned to continue and extend to the general
  115. organization of the code, preparing a long time in advance for a possible
  116. merge of the `cpio' and `tar' distributions, into some common `paxutils'.
  117. We also want to address some long-awaited performance issues (for example:
  118. double buffering) or enhancements (for example: per-file compression).