Permalink
Fetching contributors…
Cannot retrieve contributors at this time
830 lines (804 sloc) 29.7 KB
BABYL OPTIONS: -*- rmail -*-
Version: 5
Labels:
Note: This is the header of an rmail file.
Note: If you are seeing it in rmail,
Note: it means the file has no messages in it.

1, edited,,
Return-Path: mejac!decwrl!reid
Return-Path: <mejac!decwrl!reid>
Received: by hop.toad.com id AA23677; 1987-12-15 13:02:02 -08:00
Received: by mejac.dec.com (4.12/4.7.34)
id AA01508; 1987-12-15 10:06:29 pst
Received: from gilroy.dec.com by decwrl.dec.com (5.54.4/4.7.34)
id AA27311; 1987-12-15 07:36:38 -08:00
Received: by gilroy.dec.com (5.54.3/4.7.34)
id AA11155; 1987-12-15 07:36:35 -08:00
Date: 1987-12-15 07:36:35 -08:00
From: mejac!decwrl!reid (Brian Reid)
Message-Id: <8712151536.AA11155@gilroy.dec.com>
To: hoptoad!gnu
Lines: 305
Xref: localhost fp.tar.old:26
*** EOOH ***
Date: 1987-12-15 07:36:35 -08:00
From: mejac!decwrl!reid (Brian Reid)
To: hoptoad!gnu
.\" SCCSID: @(#)tar.1 2.10 9/16/87
.TH tar 1
.SH NAME
tar \- multivolume archiver
.SH SYNTAX
.B tar
[\|\fIkey\fR\|] [\|\fIname...\fR\|]
.SH DESCRIPTION
.NXA "tar command" "mdtar command"
.NXA "tar command" "ar program"
.NXAM "tar command" "tar file"
.NXB "tar command"
.NXB "file" "backing up"
The tape archiver command,
.PN tar,
saves and restores multiple files to and from a single archive.
The default archive device is
.PN /dev/rmt0h,
but any file or device may be requested through the use of options.
.PP
The
.I key
is a string of characters containing at most one function
letter and possibly names specifying which files to dump or
restore.
In all cases, appearance of a directory name refers to the files and
(recursively) subdirectories of that directory.
.PP
This utility supports EOT handling which allows the use of
multiple media. The utility prompts for the next volume when it
encounters the end of the current volume.
.SH KEYS
.NXR "tar command" "keys"
The function portion of the key is specified by one of
the following letters:
.TP 8
.B c
Create a new archive on tape, disk or file.
Writing starts at the beginning of the archive
instead of after the last file.
.TP 8
.B r
Write the named files to the end of the archive.
.TP 8
.B t
List the names of the files as they occur on the input archive.
.TP 8
.B u
Add the named files to the archive if they are not
there already or if they have been modified since they were
last put in the archive.
.TP 8
.B x
Extract the named files from the archive.
If the named file matches a directory whose contents
had been written into the archive,
the directory is recursively extracted.
The owner, modification time,
and mode are restored, if possible.
If no file argument is given, the entire content
of the archive is extracted.
Note that if multiple entries specifying the same
file are in the archive,
the last one overwrites all previous versions extracted.
.SH OPTIONS
.NXB "tar command" "options"
You can use one or more of the following options in
addition to the letter which selects the function
desired.
.TP 10
.B B
Force input and output blocking to 20 blocks/record.
This option allows
.PN tar
to work across a communications channel where the blocking may not
be maintained.
.TP 10
.B C
Use to perform a directory change prior to archiving data.
.TP 10
.B "\F[ F ]"
Operate in
.I fast mode .
When
.B \-F
is specified,
.PN tar
skips all SCCS directories, core files, and error files.
When
.B \-FF
is specified,
.PN tar
also skips all
.PN a.out
and
.B *.o
files.
.TP 10
.B H
Help mode.
Print a summary of the function keys and options.
.TP 10
.B O
Include file owner & group names in verbose output (t & x functions)
if present in archive header. Output warning message if owner
or group name not found in
.PN /etc/passwd
or
.PN /etc/group
file (cru functions).
.TP 10
.B V
Display extended verbose information.
Included are the version number of
.PN tar,
the number of blocks used on the device,
the number of blocks in a file,
and the protection modes given in a format similar to the
.B ls
.B \-l
command.
In addition to this information,
.B V
provides the information given by the
.B v
option.
.TP 10
.B b
Use the next argument as the blocking factor for tape records.
The default is 20 (the maximum is also 20).
This option should only be used with raw magnetic tape archives (See
the
.B f
option).
The block size is determined automatically
when reading tapes (
.B x
and \fBt\fR)
keys.
.TP 10
.B d
Use /dev/rra1a
as the default device (blocking factor of 10).
.TP 10
.B f
Use the next argument as the name of the archive instead of
/dev/rmt0h.
If the name of the file is
.B \- ,
.PN tar
writes to standard output or
reads from standard input,
whichever is appropriate.
Thus,
.PN tar
can be used as the head or tail of a filter chain.
You can also use
.PN tar
to move hierarchies.
The following example shows how to move the directory
.I fromdir
to the directory
.I todir :
.EX
# cd fromdir; tar cf \- . | (cd todir; tar xf \-)
.EE
.TP
.B h
Save a copy of the actual file on the output device under the
symbolic link name,
instead of placing the symbolic information on the output.
The default action of
.PN tar
is to place symbolic link information on the output device.
A copy of the file itself is not saved on the output device.
.TP
.B i
Ignore checksum errors found in the archive.
.TP 10
.B l
Complain if
.PN tar
cannot resolve all of the links to the files dumped.
If this is not specified,
no error messages are printed.
.TP 10
.B m
Do not restore the modification times.
The modification time will be the time of extraction.
Tar normally restores modification times of regular and
special files.
.TP 10
.B o
Suppress the normal directory information. On output,
.PN tar
normally places information specifying owner and modes of
directories in the archive. Former versions of
.PN tar,
when
encountering this information will give error message of the
form,
.EX
<name>/: cannot create
.EE
.PN tar
will place information specifying owner and modes
of directories in the archive.
.TP 10
.B 0...9
Substitute number for the device unit number as in
.PN /dev/rmt#h.
The default is the high density rewind
tape device number zero named
.PN /dev/rmt0h.
The command
.EX
tar cv4 tar.c
.EE
uses device
.PN /dev/rmt4h.
.TP 10
.B p
Restore the named files to their original modes,
ignoring the present
.MS umask 2 .
Setuid and sticky bit information
is also restored to the superuser.
.TP 10
.B v
Write the name of each file treated,
preceded by the function letter,
to diagnostic output.
Normally,
.PN tar
does its work silently.
With the
.B t
function key,
the verbose option provides more information about the
tape entries than just their names.
.EX
#cd /
#tar cvf tar-out vmunix
.EE
Produces the output ``a vmunix 1490 blocks'' where 1490 is the number of 512 byte
blocks in the file ``vmunix''.
.EX
#tar xvf tar-out
.EE
Produces the output ``x vmunix, 762880 bytes, 1490 blocks'' where 762880 is the
number of bytes and 1490 is the number of 512 byte blocks in the file ``vmunix''
which was extracted.
.TP 10
.B w
Print the action to be taken, followed by file name,
then wait for user confirmation.
If a word beginning with the letter
.B y
is given,
the action is done.
Any other input means do not do it.
.NXE "tar command" "options"
.SH EXAMPLES
.NXR(e) "tar command"
To archive files from /usr/include
and /etc,
type:
.EX
# tar c \-C /usr/include . \-C /etc .
.EE
.PP
The
.PN tar
command can properly handle blocked archives.
.SH RESTRICTIONS
.NXR "tar command" "restricted"
There is no way to ask for the
.IR n\^\^th
occurrence of a file.
.br
Tape errors are handled ungracefully.
.br
The
.B u
key can be slow.
.br
The limit on file name length is 100 characters.
.br
There is no way to follow symbolic links selectively.
.SH DIAGNOSTICS
.NXR "tar command" "diagnostics"
Indicates bad key characters and read/write errors.
.br
Indicates if enough memory is not available to hold the link tables.
.SH FILES
.br
/dev/rmt0h
.br
/dev/rra1a
.br
/tmp/tar*
.SH "SEE ALSO"
mdtar(1), mt(1), tar(5)
.NXE "tar command"
.NXE "file" "backing up"

1, edited,,
Return-Path: gnu
Return-Path: <gnu>
Received: from localhost by hop.toad.com id AA18421; 1990-12-31 14:16:02 -08:00
Message-Id: <9012312216.AA18421@hop.toad.com>
To: Chris Tenaglia - 257-8765 <TENAGLIA@mis.mcw.edu>
Cc: gnu
Subject: Re: tar
In-Reply-To: <2E6F091540601790@mis.mcw.edu>
Date: 1990-12-31 14:16:01 -08:00
From: gnu
Lines: 472
Xref: localhost fp.tar.old:125
*** EOOH ***
To: Chris Tenaglia - 257-8765 <TENAGLIA@mis.mcw.edu>
Cc: gnu
Subject: Re: tar
In-Reply-To: <2E6F091540601790@mis.mcw.edu>
Date: 1990-12-31 14:16:01 -08:00
From: gnu
Here is the "man page" (page from a manual) that describes the tar
tape format. Below it is the man page for the tar command itself
(what options do what, etc).
John Gilmore
.TH TAR 5 "15 October 1987"
.\" @(#)tar.5 1.4 11/6/87 Public Domain - gnu
.SH NAME
tar \- tape (or other media) archive file format
.SH DESCRIPTION
A ``tar tape'' or file contains a series of records. Each record contains
TRECORDSIZE bytes (see below). Although this format may be thought of as
being on magnetic tape, other media are often used.
Each file archived is represented by a header record
which describes the file, followed by zero or more records which give the
contents of the file. At the end of the archive file there may be a record
filled with binary zeros as an end-of-file indicator. A reasonable
system should write a record of zeros at the end, but must not assume that
an end-of-file record exists when reading an archive.
The records may be blocked for physical I/O operations. Each block of
\fIN\fP records (where \fIN\fP is set by the \fB\-b\fP option to \fItar\fP)
is written with a single write() operation. On
magnetic tapes, the result of such a write is a single tape record.
When writing an archive, the last block of records should be written
at the full size, with records after the zero record containing
all zeroes. When reading an archive, a reasonable system should
properly handle an archive whose last block is shorter than the rest, or
which contains garbage records after a zero record.
The header record is defined in the header file <tar.h> as follows:
.nf
.sp .5v
.DT
/*
* Standard Archive Format - Standard TAR - USTAR
*/
#define RECORDSIZE 512
#define NAMSIZ 100
#define TUNMLEN 32
#define TGNMLEN 32
union record {
char charptr[RECORDSIZE];
struct header {
char name[NAMSIZ];
char mode[8];
char uid[8];
char gid[8];
char size[12];
char mtime[12];
char chksum[8];
char linkflag;
char linkname[NAMSIZ];
char magic[8];
char uname[TUNMLEN];
char gname[TGNMLEN];
char devmajor[8];
char devminor[8];
} header;
};
/* The checksum field is filled with this while the checksum is computed. */
#define CHKBLANKS " " /* 8 blanks, no null */
/* The magic field is filled with this if uname and gname are valid. */
#define TMAGIC "ustar " /* 7 chars and a null */
/* The linkflag defines the type of file */
#define LF_OLDNORMAL '\\0' /* Normal disk file, Unix compatible */
#define LF_NORMAL '0' /* Normal disk file */
#define LF_LINK '1' /* Link to previously dumped file */
#define LF_SYMLINK '2' /* Symbolic link */
#define LF_CHR '3' /* Character special file */
#define LF_BLK '4' /* Block special file */
#define LF_DIR '5' /* Directory */
#define LF_FIFO '6' /* FIFO special file */
#define LF_CONTIG '7' /* Contiguous file */
/* Further link types may be defined later. */
/* Bits used in the mode field - values in octal */
#define TSUID 04000 /* Set UID on execution */
#define TSGID 02000 /* Set GID on execution */
#define TSVTX 01000 /* Save text (sticky bit) */
/* File permissions */
#define TUREAD 00400 /* read by owner */
#define TUWRITE 00200 /* write by owner */
#define TUEXEC 00100 /* execute/search by owner */
#define TGREAD 00040 /* read by group */
#define TGWRITE 00020 /* write by group */
#define TGEXEC 00010 /* execute/search by group */
#define TOREAD 00004 /* read by other */
#define TOWRITE 00002 /* write by other */
#define TOEXEC 00001 /* execute/search by other */
.fi
.LP
All characters in header records
are represented using 8-bit characters in the local
variant of ASCII.
Each field within the structure is contiguous; that is, there is
no padding used within the structure. Each character on the archive medium
is stored contiguously.
Bytes representing the contents of files (after the header record
of each file) are not translated in any way and
are not constrained to represent characters or to be in any character set.
The \fItar\fP(5) format does not distinguish text files from binary
files, and no translation of file contents should be performed.
The fields \fIname, linkname, magic, uname\fP, and \fIgname\fP are
null-terminated
character strings. All other fields are zero-filled octal numbers in
ASCII. Each numeric field (of width \fIw\fP) contains \fIw\fP-2 digits, a space, and
a null, except \fIsize\fP and \fImtime\fP,
which do not contain the trailing null.
The \fIname\fP field is the pathname of the file, with directory names
(if any) preceding the file name, separated by slashes.
The \fImode\fP field provides nine bits specifying file permissions and three
bits to specify the Set UID, Set GID and Save Text (TSVTX) modes. Values
for these bits are defined above. When special permissions are required
to create a file with a given mode, and the user restoring files from the
archive does not hold such permissions, the mode bit(s) specifying those
special permissions are ignored. Modes which are not supported by the
operating system restoring files from the archive will be ignored.
Unsupported modes should be faked up when creating an archive; e.g.
the group permission could be copied from the `other' permission.
The \fIuid\fP and \fIgid\fP fields are the user and group ID of the file owners,
respectively.
The \fIsize\fP field is the size of the file in bytes; linked files are archived
with this field specified as zero.
The \fImtime\fP field is the modification time of the file at the time it was
archived. It is the ASCII representation of the octal value of the
last time the file was modified, represented as in integer number of
seconds since January 1, 1970, 00:00 Coordinated Universal Time.
The \fIchksum\fP field is the ASCII representaion of the octal value of the
simple sum of all bytes in the header record. Each 8-bit byte in the
header is treated as an unsigned value. These values are added to an
unsigned integer, initialized to zero, the precision of which shall be no
less than seventeen bits. When calculating the checksum, the \fIchksum\fP
field is treated as if it were all blanks.
The \fItypeflag\fP field specifies the type of file archived. If a particular
implementation does not recognize or permit the specified type, the file
will be extracted as if it were a regular file. As this action occurs,
\fItar\fP issues a warning to the standard error.
.IP "LF_NORMAL or LF_OLDNORMAL"
represents a regular file.
For backward compatibility, a \fItypeflag\fP value of LF_OLDNORMAL
should be silently recognized as a regular file. New archives should
be created using LF_NORMAL.
Also, for backward
compatability, \fItar\fP treats a regular file whose name ends
with a slash as a directory.
.IP LF_LINK
represents a file linked to another file, of any type,
previously archived. Such files are identified in Unix by each file
having the same device and inode number. The linked-to
name is specified in the \fIlinkname\fP field with a trailing null.
.IP LF_SYMLINK
represents a symbolic link to another file. The linked-to
name is specified in the \fIlinkname\fP field with a trailing null.
.IP "LF_CHR or LF_BLK"
represent character special files and block
special files respectively.
In this case the \fIdevmajor\fP and \fIdevminor\fP
fields will contain the
major and minor device numbers respectively. Operating
systems may map the device specifications to their own local
specification, or may ignore the entry.
.IP LF_DIR
specifies a directory or sub-directory. The directory name
in the \fIname\fP field should end with a slash.
On systems where
disk allocation is performed on a directory basis the \fIsize\fP
field will contain the maximum number of bytes (which may be
rounded to the nearest disk block allocation unit) which the
directory may hold. A \fIsize\fP field of zero indicates no such
limiting. Systems which do not support limiting in this
manner should ignore the \fIsize\fP field.
.IP LF_FIFO
specifies a FIFO special file. Note that the archiving of
a FIFO file archives the existence of this file and not its
contents.
.IP LF_CONTIG
specifies a contiguous file, which is the same as a normal
file except that, in operating systems which support it,
all its space is allocated contiguously on the disk. Operating
systems which do not allow contiguous allocation should silently treat
this type as a normal file.
.IP "`A' \- `Z'"
are reserved for custom implementations. None are used by this
version of the \fItar\fP program.
.IP \fIother\fP
values are reserved for specification in future revisions of the
P1003 standard, and should not be used by any \fItar\fP program.
.LP
The \fImagic\fP field indicates that this archive was output in the P1003
archive format. If this field contains TMAGIC, then the
\fIuname\fP and \fIgname\fP
fields will contain the ASCII representation of the owner and group of the
file respectively. If found, the user and group ID represented by these
names
will be used rather than the values contained
within the \fIuid\fP and \fIgid\fP fields.
User names longer than TUNMLEN-1 or group
names longer than TGNMLEN-1 characters will be truncated.
.SH "SEE ALSO"
tar(1), ar(5), cpio(5), dump(8), restor(8), restore(8)
.SH BUGS
Names or link names longer than NAMSIZ-1 characters cannot be archived.
This format does not yet address multi-volume archives.
.SH NOTES
This manual page was adapted by John Gilmore
from Draft 6 of the P1003 specification
.TH TAR 1 "27 October 1988"
.\" @(#)tar.1 1.18 1/17/90 Public Domain - gnu
.SH NAME
tar \- tape (or other media) file archiver
.SH SYNOPSIS
\fBtar\fP \-[\fBaBcdDehiklmopRstvxzZ\fP]
[\fB\-b\fP \fIN\fP]
[\fB\-f\fP \fIF\fP]
[\fB\-T\fP \fIF\fP]
[ \fIfilename or regexp\fP\| .\|.\|. ]
.SH DESCRIPTION
\fItar\fP provides a way to store many files into a single archive,
which can be kept in another Unix file, stored on an I/O device
such as tape, floppy, cartridge, or disk, sent over a network, or piped to
another program.
It is useful for making backup copies, or for packaging up a set of
files to move them to another system.
.LP
\fItar\fP has existed since Version 7 Unix with very little change.
It has been proposed as the standard format for interchange of files
among systems that conform to the IEEE P1003 ``Portable Operating System''
standard.
.LP
This version of \fItar\fP supports some of the extensions which
were proposed in the P1003 draft standards, including owner and group
names, and support for named pipes, fifos, contiguous files,
and block and character devices.
.LP
When reading an archive, this version of \fItar\fP continues after
finding an error. Previous versions required the `i' option to ignore
checksum errors.
.LP
When extracting files from an archive, this version of \fItar\fP will
create ``holes'' where blocks of zeroes appear in the archive. This
allows ``sparse'' files such as DBM databases and SunOS 4.0 core files
to be moved around with less pain.
.SH OPTIONS
\fItar\fP options can be specified in either of two ways. The usual
Unix conventions can be used: each option is preceded by `\-'; arguments
directly follow each option; multiple options can be combined behind one `\-'
as long as they take no arguments. For compatability with the Unix
\fItar\fP program, the options may also be specified as ``keyletters,''
wherein all the option letters occur in the first argument to \fItar\fP,
with no `\-', and their arguments, if any, occur in the second, third, ...
arguments. Examples:
.LP
Normal: tar -f arcname -cv file1 file2
.LP
Old: tar fcv arcname file1 file2
.LP
At least one of the \fB\-c\fP, \fB\-t\fP, \fB-d\fP, or \fB\-x\fP options
must be included. The rest are optional.
.LP
Files to be operated upon are specified by a list of file names, which
follows the option specifications (or can be read from a file by the
\fB\-T\fP option). Specifying a directory name causes that directory
and all the files it contains to be (recursively) processed. If a
full path name is specified when creating an archive, it will be written
to the archive without the initial "/", to allow the files to be later
read into a different place than where they were
dumped from, and a warning will be printed. If
files are extracted from an archive which contains
full path names, they will be extracted relative to the current directory
and a warning message printed.
.LP
When extracting or listing files, the ``file names'' are treated as
regular expressions, using mostly the same syntax as the shell. The
shell actually matches each substring between ``/''s separately, while
\fItar\fP matches the entire string at once, so some anomalies will
occur; e.g. ``*'' or ``?'' can match a ``/''. To specify a regular
expression as an argument to \fItar\fP, quote it so the shell will not
expand it.
.IP \fB\-a\fP
Reset the last-accessed times of ordinary files after archiving them.
Only the owner of the file or the superuser may do this. This is useful
when doing backups, since you may not want the act of backing up
a file to change its access time.
.IP "\fB\-b\fP \fIN\fP"
Specify a blocking factor for the archive. The block size will be
\fIN\fP x 512 bytes. Larger blocks typically run faster and let you
fit more data on a tape. The default blocking factor is set when
\fItar\fP is compiled, and is typically 20. There is no limit to the
maximum block size, as long as enough memory can be allocated for it,
and as long as the device containing the archive can read or write
that block size.
.IP \fB\-B\fP
When reading an archive, reblock it as we read it.
Normally, \fItar\fP reads each
block with a single \fIread(2)\fP system call. This does not work
when reading from a pipe or network socket under Berkeley Unix;
\fIread(2)\fP only gives as much data as has arrived at the moment.
With this option, it
will do multiple \fIread(2)\fPs to fill out to a record boundary,
rather than reporting an error.
This option is default when reading an archive from standard input,
or over a network.
.IP \fB\-c\fP
Create an archive from a list of files.
.IP \fB\-d\fP
Diff an archive against the files in the file system. Reports
differences in file size, mode, uid, gid, and contents. If a file
exists on the tape, but not in the file system, that is reported.
This option needs further work to be really useful.
.IP \fB\-D\fP
Only process each named directory itself; don't dump, list, or extract
the files inside the directory. In conjunction with \fIfind\fP(1),
this is useful in creating and reading incremental dumps for archival backups,
similar to those produced by \fIdump\fP(8) and \fIrestore\fP(8).
.IP \fB\-e\fP
When listing or extracting, scan the archive for header records, ignoring
the file sizes specified in previous header records. This
allows better recovery
of files on damaged tapes, because if some blocks are missing from the
archive, the damaged file's header record will cause the following file's
header record to be skipped; it appears to be part of the damaged file's data.
If the damaged file is actually extracted, the following file's header
record will not be seen; but if it is just listed, or is skipped for
extraction, the following file will be seen.
.IP
The \fB-i\fP option should usually be used with the \fB-e\fP option.
A good way to recover data from a damaged tape is to run \fBtar -xi\fP to
get most of the data, then do \fBtar -tv\fP into a file, and \fBtar -tvei\fP
into another, and diff them. The files that show up
in the \fBtar -tvei\fP can be
extracted with \fBtar -xei\fP \fIpath1 path2...\fP.
.IP "\fB\-f\fP \fIF\fP"
Specify the filename of the archive. If the specified filename is ``\-'',
the archive is read from the standard input or written to the standard output.
If the \fB-f\fP option is not used, and the environment variable \fBTAPE\fP
exists, its value will be used; otherwise,
a default archive name (which was picked when tar was compiled) is used.
The default is normally set to the ``first'' tape drive or other transportable
I/O medium on the system.
.IP
If the filename contains a colon before a slash, it is interpreted
as a ``hostname:/file/name'' pair. \fItar\fP will invoke the commands
\fIrsh\fP and \fIdd\fP to access the specified file or device on the
system \fIhostname\fP. If you need to do something unusual like rsh with
a different user name, use ``\fB\-f \-\fP'' and pipe it to rsh manually.
.IP \fB\-h\fP
When creating an archive, if a symbolic link is encountered, dump
the file or directory to which it points, rather than
dumping it as a symbolic link.
.IP \fB\-i\fP
When reading an archive, ignore blocks of zeros in the archive. Normally
a block of zeros indicates the end of the archive,
but in a damaged archive, or one which was
created by appending several archives, this option allows \fItar\fP to
continue. It is not on by default because there is garbage written after the
zeroed blocks by the Unix \fItar\fP program. Note that with this option
set, \fItar\fP will read all the way to the end of the file, eliminating
problems with multi-file tapes.
.IP \fB\-k\fP
When extracting files from an archive, keep existing files, rather than
overwriting them with the version from the archive.
.IP \fB\-l\fP
When dumping the contents of a directory to an archive, stay within the
local file system of that directory. This option
only affects the files dumped because
they are in a dumped directory; files named on the command line are
always dumped, and they can be from various file systems.
This is useful for making ``full dump'' archival backups of a file system,
as with the \fIdump\fP(8) command. Files which are skipped due to this
option are mentioned on the standard error.
.IP \fB\-m\fP
When extracting files from an archive, set each file's modified timestamp
to the current time, rather than extracting each file's modified
timestamp from the archive.
.IP \fB\-o\fP
When creating an archive, write an old format archive, which does not
include information about directories, pipes, fifos,
contiguous files, or device files, and
specifies file ownership by uid's and gid's rather than by
user names and group names. In most cases, a ``new'' format archive
can be read by an ``old'' tar program without serious trouble, so this
option should seldom be needed.
.IP \fB\-p\fP
When extracting files from an archive, restore them to the same permissions
that they had in the archive. If \fB\-p\fP is not specified, the current
umask limits the permissions of the extracted files. See \fIumask(2)\fP.
.IP \fB\-R\fP
With each message that \fItar\fP produces, print the record number
within the archive where the message occurred. This option is especially
useful when reading damaged archives, since it helps to pinpoint the damaged
section.
.IP \fB\-s\fP
When specifying a list of filenames to be listed
or extracted from an archive,
the \fB\-s\fP flag specifies that the list
is sorted into the same order as the tape. This allows a large list
to be used, even on small machines, because
the entire list need not be read into memory at once. Such a sorted
list can easily be created by running ``tar \-t'' on the archive and
editing its output.
.IP \fB\-t\fP
List a table of contents of an existing archive. If file names are
specified, just list files matching the specified names. The listing
appears on the standard output.
.IP "\fB\-T\fP \fIF\fP"
Rather than specifying file names or regular expressions as arguments to
the \fItar\fP command, this option specifies that they should
be read from the file \fIF\fP, one per line.
If the file name specified is ``\-'',
the list is read from the standard input.
This option, in conjunction with the \fB\-s\fP option,
allows an arbitrarily large list of files to be processed,
and allows the list to be piped to \fItar\fP.
.IP \fB\-v\fP
Be verbose about the files that are being processed or listed. Normally,
archive creation, file extraction, and differencing are silent.
The \fB\-v\fP option causes the file names to be printed. A second
\fB\-v\fP option causes an ``\fIls \-l\fP''\-like listing
to be produced. The output from -v appears on the standard output except
when creating an archive (since the new archive might be on standard output),
where it goes to the standard error output.
.IP
When listing an archive, the default output is file names; adding the
\fB\-v\fP option produces an ``\fIls \-l\fP''\-like listing. In other words,
the output of \fItar \-xv\fP is the same as that of \fItar \-t\fP, and
\fItar \-xvv\fP produces the same output as \fItar \-tv\fP.
.IP \fB\-x\fP
Extract files from an existing archive. If file names are
specified, just extract files matching the specified names, otherwise extract
all the files in the archive.
.IP "\fB\-z\fP or \fB\-Z\fP"
The archive should be compressed as it is written, or decompressed as it
is read, using the \fIcompress(1)\fP program. This option works on I/O
devices and over the network, as well as on disk files; data to or from
such devices is reblocked using a ``dd'' command
to enforce the specified (or default) block size. The default compression
parameters are used; if you need to override them, avoid the ``z'' option
and compress it yourself.
.SH "SEE ALSO"
shar(1), tar(5), compress(1), ar(1), arc(1), cpio(1), dump(8), restore(8),
restor(8), rsh(1), dd(1), find(1)
.SH BUGS
The \fBr, u, w, X, l, F, C\fP, and \fIdigit\fP options of Unix \fItar\fP
are not supported.
.LP
Multiple-tape (or floppy) archives should be supported, but so far no
clean way has been implemented.
.LP
A bug in the Bourne Shell usually causes an extra newline to be written
to the standard error when using compressed or remote archives.
.LP
A bug in ``dd'' prevents turning off the ``x+y records in/out'' messages
on the standard error when ``dd'' is used to reblock or transport an archive.