aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2004-02-27 13:28:40 +0000
committerSergey Poznyakoff <gray@gnu.org.ua>2004-02-27 13:28:40 +0000
commita783e2c18c6b566b2f4c2b06e6c388a9645c826c (patch)
treeae12abc157dee99bd4c67bab25316be06d3519a2 /doc
parentcb721df9888a296af824a4acab4916694d6dc35d (diff)
downloadcpio-a783e2c18c6b566b2f4c2b06e6c388a9645c826c.tar.gz
cpio-a783e2c18c6b566b2f4c2b06e6c388a9645c826c.tar.bz2
Added to the repository
Diffstat (limited to 'doc')
-rw-r--r--doc/.cvsignore2
-rw-r--r--doc/Makefile.am20
-rw-r--r--doc/cpio.1340
-rw-r--r--doc/cpio.info493
-rw-r--r--doc/cpio.texi563
-rw-r--r--doc/mt.1126
6 files changed, 1544 insertions, 0 deletions
diff --git a/doc/.cvsignore b/doc/.cvsignore
new file mode 100644
index 0000000..3dda729
--- /dev/null
+++ b/doc/.cvsignore
@@ -0,0 +1,2 @@
+Makefile.in
+Makefile
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000..c3ec682
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of GNU cpio
+# Copyright (C) 2004 Free Software Foundation, Inc.
+#
+# This program 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 2, or (at your option)
+# any later version.
+#
+# This program 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, write to the Free Software Foundation, Inc.,
+# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+info_TEXINFOS = cpio.texi
+man_MANS = cpio.1 mt.1
+EXTRA_DIST = $(man_MANS)
diff --git a/doc/cpio.1 b/doc/cpio.1
new file mode 100644
index 0000000..5051f8d
--- /dev/null
+++ b/doc/cpio.1
@@ -0,0 +1,340 @@
+.TH CPIO 1L \" -*- nroff -*-
+.SH NAME
+cpio \- copy files to and from archives
+.SH SYNOPSIS
+.B cpio
+{\-o|\-\-create} [\-0acvABLV] [\-C bytes] [\-H format] [\-M message]
+[\-O [[user@]host:]archive] [\-F [[user@]host:]archive]
+[\-\-file=[[user@]host:]archive] [\-\-format=format] [\-\-message=message]
+[\-\-null] [\-\-reset-access-time] [\-\-verbose] [\-\-dot] [\-\-append]
+[\-\-block-size=blocks] [\-\-dereference] [\-\-io-size=bytes] [\-\-quiet]
+[\-\-force\-local] [\-\-rsh-command=command] [\-\-help] [\-\-version]
+< name-list [> archive]
+
+.B cpio
+{\-i|\-\-extract} [\-bcdfmnrtsuvBSV] [\-C bytes] [\-E file] [\-H format]
+[\-M message] [\-R [user][:.][group]] [\-I [[user@]host:]archive]
+[\-F [[user@]host:]archive] [\-\-file=[[user@]host:]archive]
+[\-\-make-directories] [\-\-nonmatching] [\-\-preserve-modification-time]
+[\-\-numeric-uid-gid] [\-\-rename] [\-t|\-\-list] [\-\-swap-bytes] [\-\-swap] [\-\-dot]
+[\-\-unconditional] [\-\-verbose] [\-\-block-size=blocks] [\-\-swap-halfwords]
+[\-\-io-size=bytes] [\-\-pattern-file=file] [\-\-format=format]
+[\-\-owner=[user][:.][group]] [\-\-no-preserve-owner] [\-\-message=message]
+[\-\-force\-local] [\-\-no\-absolute\-filenames] [\-\-sparse]
+[\-\-only\-verify\-crc] [\-\-quiet] [\-\-rsh-command=command] [\-\-help]
+[\-\-version] [pattern...] [< archive]
+
+.B cpio
+{\-p|\-\-pass-through} [\-0adlmuvLV] [\-R [user][:.][group]]
+[\-\-null] [\-\-reset-access-time] [\-\-make-directories] [\-\-link] [\-\-quiet]
+[\-\-preserve-modification-time] [\-\-unconditional] [\-\-verbose] [\-\-dot]
+[\-\-dereference] [\-\-owner=[user][:.][group]] [\-\-no-preserve-owner]
+[\-\-sparse] [\-\-help] [\-\-version] destination-directory < name-list
+.SH DESCRIPTION
+This manual page
+documents the GNU version of
+.BR cpio .
+.B cpio
+copies files into or out of a cpio or tar archive, which is a file that
+contains other files plus information about them, such as their
+file name, owner, timestamps, and access permissions. The archive can
+be another file on the disk, a magnetic tape, or a pipe.
+.B cpio
+has three operating modes.
+.PP
+In copy-out mode,
+.B cpio
+copies files into an archive. It reads a list of filenames, one per
+line, on the standard input, and writes the archive onto the standard
+output. A typical way to generate the list of filenames is with the
+.B find
+command; you should give
+.B find
+the \-depth option to minimize problems with permissions on
+directories that are unwritable or not searchable.
+.PP
+In copy-in mode,
+.B cpio
+copies files out of an archive or lists the archive contents. It
+reads the archive from the standard input. Any non-option command
+line arguments are shell globbing patterns; only files in the archive
+whose names match one or more of those patterns are copied from the
+archive. Unlike in the shell, an initial `.' in a filename does
+match a wildcard at the start of a pattern, and a `/' in a filename
+can match wildcards. If no patterns are given, all files are
+extracted.
+.PP
+In copy-pass mode,
+.B cpio
+copies files from one directory tree to another, combining the
+copy-out and copy-in steps without actually using an archive.
+It reads the list of files to copy from the standard input; the
+directory into which it will copy them is given as a non-option
+argument.
+.PP
+.B cpio
+supports the following archive formats: binary, old ASCII, new
+ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1 tar.
+The binary format
+is obsolete because it encodes information about the files in a way
+that is not portable between different machine architectures.
+The old ASCII format is portable between different machine architectures,
+but should not be used on file systems with more than 65536 i-nodes.
+The new ASCII format is portable between different machine architectures
+and can be used on any size file system, but is not supported by all
+versions of
+.BR cpio ;
+currently, it is only supported by GNU and Unix System V R4.
+The crc format is
+like the new ASCII format, but also contains a checksum for each file
+which
+.B cpio
+calculates when creating an archive
+and verifies when the file is extracted from the archive.
+The HPUX formats are provided for compatibility with HPUX's cpio which
+stores device files differently.
+.PP
+The tar format is provided for compatability with
+the
+.B tar
+program. It can not be used to archive files with names
+longer than 100 characters, and can not be used to archive "special"
+(block or character devices) files.
+The POSIX.1 tar format can not be used to archive files with names longer
+than 255 characters (less unless they have a "/" in just the right place).
+.PP
+By default,
+.B cpio
+creates binary format archives, for compatibility with
+older
+.B cpio
+programs.
+When extracting from archives,
+.B cpio
+automatically recognizes which kind of archive it is reading and can
+read archives created on machines with a different byte-order.
+.PP
+Some of the options to
+.B cpio
+apply only to certain operating modes; see the SYNOPSIS section for a
+list of which options are allowed in which modes.
+.SS OPTIONS
+.TP
+.I "\-0, \-\-null"
+In copy-out and copy-pass modes, read a list of filenames terminated
+by a null character instead of a newline, so that files whose names
+contain newlines can be archived. GNU
+.B find
+is one way to produce a list of null-terminated filenames.
+.TP
+.I "\-a, \-\-reset-access-time"
+Reset the access times of files after reading them, so that it does
+not look like they have just been read.
+.TP
+.I "\-A, \-\-append"
+Append to an existing archive. Only works in copy-out mode. The
+archive must be a disk file specified with the
+.I \-O
+or
+.I "\-F (\-\-file)"
+option.
+.TP
+.I "\-b, \-\-swap"
+In copy-in mode, swap both halfwords of words and bytes of halfwords
+in the data. Equivalent to
+.IR "\-sS" .
+Use this option to convert 32-bit integers between big-endian and
+little-endian machines.
+.TP
+.I "\-B"
+Set the I/O block size to 5120 bytes. Initially the block size is 512
+bytes.
+.TP
+.I "\-\-block-size=BLOCK-SIZE"
+Set the I/O block size to BLOCK-SIZE * 512 bytes.
+.TP
+.I "\-c"
+Use the old portable (ASCII) archive format.
+.TP
+.I "\-C IO-SIZE, \-\-io-size=IO-SIZE"
+Set the I/O block size to IO-SIZE bytes.
+.TP
+.I "\-d, \-\-make-directories"
+Create leading directories where needed.
+.TP
+.I "\-E FILE, \-\-pattern-file=FILE"
+In copy-in mode, read additional patterns specifying filenames to
+extract or list from FILE. The lines of FILE are treated as if they
+had been non-option arguments to
+.BR cpio .
+.TP
+.I "\-f, \-\-nonmatching"
+Only copy files that do not match any of the given patterns.
+.TP
+.I "\-F, \-\-file=archive"
+Archive filename to use instead of standard input or output. To use a
+tape drive on another machine as the archive, use a filename that
+starts with `HOSTNAME:'. The hostname can be preceded by a
+username and an `@' to access the remote tape drive as that user, if
+you have permission to do so (typically an entry in that user's
+`~/.rhosts' file).
+.TP
+.I "\-\-force-local"
+With
+.IR \-F ,
+.IR \-I ,
+or
+.IR \-O ,
+take the archive file name to be a local file even if it contains a
+colon, which would ordinarily indicate a remote host name.
+.TP
+.I "\-H FORMAT, \-\-format=FORMAT"
+Use archive format FORMAT. The valid formats are listed below;
+the same names are also recognized in all-caps. The default in
+copy-in mode is to automatically detect the archive format, and in
+copy-out mode is "bin".
+.RS
+.IP bin
+The obsolete binary format.
+.IP odc
+The old (POSIX.1) portable format.
+.IP newc
+The new (SVR4) portable format, which supports file systems having
+more than 65536 i-nodes.
+.IP crc
+The new (SVR4) portable format with a checksum added.
+.IP tar
+The old tar format.
+.IP ustar
+The POSIX.1 tar format. Also recognizes GNU
+.B tar
+archives, which are similar but not identical.
+.IP hpbin
+The obsolete binary format used by HPUX's cpio (which stores device files
+differently).
+.IP hpodc
+The portable format used by HPUX's cpio (which stores device files differently).
+.RE
+.TP
+.I "\-i, \-\-extract"
+Run in copy-in mode.
+.TP
+.I "\-I archive"
+Archive filename to use instead of standard input. To use a
+tape drive on another machine as the archive, use a filename that
+starts with `HOSTNAME:'. The hostname can be preceded by a
+username and an `@' to access the remote tape drive as that user, if
+you have permission to do so (typically an entry in that user's
+`~/.rhosts' file).
+.TP
+.I \-k
+Ignored; for compatibility with other versions of
+.BR cpio .
+.TP
+.I "\-l, \-\-link"
+Link files instead of copying them, when possible.
+.TP
+.I "\-L, \-\-dereference"
+Dereference symbolic links (copy the files that they point to instead
+of copying the links).
+.TP
+.I "\-m, \-\-preserve-modification-time"
+Retain previous file modification times when creating files.
+.TP
+.I "\-M MESSAGE, \-\-message=MESSAGE"
+Print MESSAGE when the end of a volume of the backup media (such as a
+tape or a floppy disk) is reached, to prompt the user to insert a new
+volume. If MESSAGE contains the string "%d", it is replaced by the
+current volume number (starting at 1).
+.TP
+.I "\-n, \-\-numeric-uid-gid"
+In the verbose table of contents listing, show numeric UID and GID
+instead of translating them into names.
+Also extracts tar archives using the numeric UID and GID instead of the
+user/group names.
+.RB ( cpio
+archives are always extracted using the numeric UID and GID.)
+.TP
+.I " \-\-no-absolute-filenames"
+In copy-in mode, create all files relative to the current directory,
+even if they have an absolute file name in the archive.
+.TP
+.I " \-\-no-preserve-owner"
+In copy-in mode and copy-pass mode, do not change the ownership of the
+files; leave them owned by the user extracting them. This is the
+default for non-root users, so that users on System V don't
+inadvertantly give away files.
+.TP
+.I "\-o, \-\-create"
+Run in copy-out mode.
+.TP
+.I "\-O archive"
+Archive filename to use instead of standard output. To use a tape
+drive on another machine as the archive, use a filename that starts
+with `HOSTNAME:'. The hostname can be preceded by a username and an
+`@' to access the remote tape drive as that user, if you have
+permission to do so (typically an entry in that user's `~/.rhosts'
+file).
+.TP
+.I " \-\-only-verify-crc"
+When reading a CRC format archive in copy-in mode, only verify the
+CRC's of each file in the archive, don't actually extract the files.
+.TP
+.I "\-p, \-\-pass-through"
+Run in copy-pass mode.
+.TP
+.I "\-\-quiet"
+Do not print the number of blocks copied.
+.TP
+.I "\-r, \-\-rename"
+Interactively rename files.
+.TP
+.I "\-R [user][:.][group], \-\-owner [user][:.][group]"
+In copy-out and copy-pass modes, set the ownership of all files created
+to the specified user and/or group. Either the user or the group, or
+both, must be present. If the group is omitted but the ":" or "."
+separator is given, use the given user's login group. Only the
+super-user can change files' ownership.
+.TP
+.I "\-\-rsh-command=COMMAND"
+Notifies
+.B mt
+that it should use COMMAND to communicate with remote devices instead of
+.I /usr/bin/ssh
+or
+.IR /usr/bin/rsh .
+.TP
+.I "\-\-sparse"
+In copy-in and copy-pass modes, write files with large blocks of zeros
+as sparse files.
+.TP
+.I "\-s, \-\-swap-bytes"
+In copy-in mode, swap the bytes of each halfword (pair of bytes) in the
+files.
+.TP
+.I "\-S, \-\-swap-halfwords"
+In copy-in mode, swap the halfwords of each word (4 bytes) in the
+files.
+.TP
+.I "\-t, \-\-list"
+Print a table of contents of the input.
+.TP
+.I "\-u, \-\-unconditional"
+Replace all files, without asking whether to replace existing newer
+files with older files.
+.TP
+.I "\-v, \-\-verbose"
+List the files processed, or with
+.IR \-t ,
+give an `ls \-l' style table of contents listing. In a verbose table
+of contents of a ustar archive, user and group names in the archive
+that do not exist on the local system are replaced by the names that
+correspond locally to the numeric UID and GID stored in the archive.
+.TP
+.I "\-V \-\-dot"
+Print a "." for each file processed.
+.TP
+.I "\-\-version"
+Print the
+.B cpio
+program version number and exit.
diff --git a/doc/cpio.info b/doc/cpio.info
new file mode 100644
index 0000000..19a75f4
--- /dev/null
+++ b/doc/cpio.info
@@ -0,0 +1,493 @@
+This is cpio.info, produced by makeinfo version 4.6 from cpio.texi.
+
+START-INFO-DIR-ENTRY
+* cpio: (cpio). Making tape (or disk) archives.
+END-INFO-DIR-ENTRY
+
+ This file documents GNU cpio 2.5.
+
+ Copyright (C) 1995, 2001, 2002 Free Software Foundation, Inc.
+
+ Permission is granted to make and distribute verbatim copies of this
+manual provided the copyright notice and this permission notice are
+preserved on all copies.
+
+ Permission is granted to copy and distribute modified versions of
+this manual under the conditions for verbatim copying, provided that
+the entire resulting derived work is distributed under the terms of a
+permission notice identical to this one.
+
+ Permission is granted to copy and distribute translations of this
+manual into another language, under the above conditions for modified
+versions, except that this permission notice may be stated in a
+translation approved by the Foundation.
+
+
+File: cpio.info, Node: Top, Next: Introduction, Prev: (dir), Up: (dir)
+
+
+
+GNU cpio is a tool for creating and extracting archives, or copying
+files from one place to another. It handles a number of cpio formats as
+well as reading and writing tar files. This is the first edition of the
+GNU cpio documentation and is consistant with GNU cpio 2.5.
+
+* Menu:
+
+* Introduction::
+* Tutorial:: Getting started.
+* Invoking `cpio':: How to invoke `cpio'.
+* Media:: Using tapes and other archive media.
+* Concept Index:: Concept index.
+
+ --- The Detailed Node Listing ---
+
+Invoking cpio
+
+* Copy-out mode::
+* Copy-in mode::
+* Copy-pass mode::
+* Options::
+
+
+File: cpio.info, Node: Introduction, Next: Tutorial, Prev: Top, Up: Top
+
+Introduction
+************
+
+GNU cpio copies files into or out of a cpio or tar archive, The archive
+can be another file on the disk, a magnetic tape, or a pipe.
+
+ GNU cpio supports the following archive formats: binary, old ASCII,
+new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1 tar.
+The tar format is provided for compatability with the tar program. By
+default, cpio creates binary format archives, for compatibility with
+older cpio programs. When extracting from archives, cpio automatically
+recognizes which kind of archive it is reading and can read archives
+created on machines with a different byte-order.
+
+
+File: cpio.info, Node: Tutorial, Next: Invoking `cpio', Prev: Introduction, Up: Top
+
+Tutorial
+********
+
+GNU cpio performs three primary functions. Copying files to an
+archive, Extracting files from an archive, and passing files to another
+directory tree. An archive can be a file on disk, one or more floppy
+disks, or one or more tapes.
+
+ When creating an archive, cpio takes the list of files to be
+processed from the standard input, and then sends the archive to the
+standard output, or to the device defined by the `-F' option. *Note
+Copy-out mode::. Usually find or ls is used to provide this list to
+the standard input. In the following example you can see the
+possibilities for archiving the contents of a single directory.
+
+ % ls | cpio -ov > directory.cpio
+
+ The `-o' option creates the archive, and the `-v' option prints the
+names of the files archived as they are added. Notice that the options
+can be put together after a single `-' or can be placed separately on
+the command line. The `>' redirects the cpio output to the file
+`directory.cpio'.
+
+ If you wanted to archive an entire directory tree, the find command
+can provide the file list to cpio:
+
+ % find . -print -depth | cpio -ov > tree.cpio
+
+ This will take all the files in the current directory, the
+directories below and place them in the archive tree.cpio. Again the
+`-o' creates an archive, and the `-v' option shows you the name of the
+files as they are archived. *Note Copy-out mode::. Using the `.' in
+the find statement will give you more flexibility when doing restores,
+as it will save file names with a relative path vice a hard wired,
+absolute path. The `-depth' option forces `find' to print of the
+entries in a directory before printing the directory itself. This
+limits the effects of restrictive directory permissions by printing the
+directory entries in a directory before the directory name itself.
+
+ Extracting an archive requires a bit more thought because cpio will
+not create directories by default. Another characteristic, is it will
+not overwrite existing files unless you tell it to.
+
+ % cpio -iv < directory.cpio
+
+ This will retrieve the files archived in the file directory.cpio and
+place them in the present directory. The `-i' option extracts the
+archive and the `-v' shows the file names as they are extracted. If
+you are dealing with an archived directory tree, you need to use the
+`-d' option to create directories as necessary, something like:
+
+ % cpio -idv < tree.cpio
+
+ This will take the contents of the archive tree.cpio and extract it
+to the current directory. If you try to extract the files on top of
+files of the same name that already exist (and have the same or later
+modification time) cpio will not extract the file unless told to do so
+by the -u option. *Note Copy-in mode::.
+
+ In copy-pass mode, cpio copies files from one directory tree to
+another, combining the copy-out and copy-in steps without actually
+using an archive. It reads the list of files to copy from the standard
+input; the directory into which it will copy them is given as a
+non-option argument. *Note Copy-pass mode::.
+
+ % find . -depth -print0 | cpio --null -pvd new-dir
+
+ The example shows copying the files of the present directory, and
+sub-directories to a new directory called new-dir. Some new options are
+the `-print0' available with GNU find, combined with the `--null'
+option of cpio. These two options act together to send file names
+between find and cpio, even if special characters are embedded in the
+file names. Another is `-p', which tells cpio to pass the files it
+finds to the directory `new-dir'.
+
+
+File: cpio.info, Node: Invoking `cpio', Next: Media, Prev: Tutorial, Up: Top
+
+Invoking cpio
+*************
+
+* Menu:
+
+* Copy-out mode::
+* Copy-in mode::
+* Copy-pass mode::
+* Options::
+
+
+File: cpio.info, Node: Copy-out mode, Next: Copy-in mode, Prev: Invoking `cpio', Up: Invoking `cpio'
+
+Copy-out mode
+=============
+
+In copy-out mode, cpio copies files into an archive. It reads a list
+of filenames, one per line, on the standard input, and writes the
+archive onto the standard output. A typical way to generate the list
+of filenames is with the find command; you should give find the -depth
+option to minimize problems with permissions on directories that are
+unreadable. *Note Options::.
+
+ cpio {-o|--create} [-0acvABLV] [-C bytes] [-H format]
+ [-M message] [-O [[user@]host:]archive] [-F [[user@]host:]archive]
+ [--file=[[user@]host:]archive] [--format=format]
+ [--message=message][--null] [--reset-access-time] [--verbose]
+ [--dot] [--append] [--block-size=blocks] [--dereference]
+ [--io-size=bytes] [--rsh-command=command] [--help] [--version]
+ < name-list [> archive]
+
+
+File: cpio.info, Node: Copy-in mode, Next: Copy-pass mode, Prev: Copy-out mode, Up: Invoking `cpio'
+
+Copy-in mode
+============
+
+In copy-in mode, cpio copies files out of an archive or lists the
+archive contents. It reads the archive from the standard input. Any
+non-option command line arguments are shell globbing patterns; only
+files in the archive whose names match one or more of those patterns are
+copied from the archive. Unlike in the shell, an initial `.' in a
+filename does match a wildcard at the start of a pattern, and a `/' in a
+filename can match wildcards. If no patterns are given, all files are
+extracted. *Note Options::.
+
+ cpio {-i|--extract} [-bcdfmnrtsuvBSV] [-C bytes] [-E file]
+ [-H format] [-M message] [-R [user][:.][group]]
+ [-I [[user@]host:]archive] [-F [[user@]host:]archive]
+ [--file=[[user@]host:]archive] [--make-directories]
+ [--nonmatching] [--preserve-modification-time]
+ [--numeric-uid-gid] [--rename] [--list] [--swap-bytes] [--swap]
+ [--dot] [--unconditional] [--verbose] [--block-size=blocks]
+ [--swap-halfwords] [--io-size=bytes] [--pattern-file=file]
+ [--format=format] [--owner=[user][:.][group]]
+ [--no-preserve-owner] [--message=message] [--help] [--version]
+ [-no-absolute-filenames] [--sparse] [-only-verify-crc] [-quiet]
+ [--rsh-command=command] [pattern...] [< archive]
+
+
+File: cpio.info, Node: Copy-pass mode, Next: Options, Prev: Copy-in mode, Up: Invoking `cpio'
+
+Copy-pass mode
+==============
+
+In copy-pass mode, cpio copies files from one directory tree to
+another, combining the copy-out and copy-in steps without actually
+using an archive. It reads the list of files to copy from the standard
+input; the directory into which it will copy them is given as a
+non-option argument. *Note Options::.
+
+ cpio {-p|--pass-through} [-0adlmuvLV] [-R [user][:.][group]]
+ [--null] [--reset-access-time] [--make-directories] [--link]
+ [--preserve-modification-time] [--unconditional] [--verbose]
+ [--dot] [--dereference] [--owner=[user][:.][group]] [--sparse]
+ [--no-preserve-owner] [--help] [--version] destination-directory
+ < name-list
+
+
+File: cpio.info, Node: Options, Prev: Copy-pass mode, Up: Invoking `cpio'
+
+Options
+=======
+
+`-0, --null'
+ Read a list of filenames terminated by a null character, instead
+ of a newline, so that files whose names contain newlines can be
+ archived. GNU find is one way to produce a list of
+ null-terminated filenames. This option may be used in copy-out
+ and copy-pass modes.
+
+`-a, --reset-access-time'
+ Reset the access times of files after reading them, so that it
+ does not look like they have just been read.
+
+`-A, --append'
+ Append to an existing archive. Only works in copy-out mode. The
+ archive must be a disk file specified with the -O or -F (-file)
+ option.
+
+`-b, --swap'
+ Swap both halfwords of words and bytes of halfwords in the data.
+ Equivalent to -sS. This option may be used in copy-in mode. Use
+ this option to convert 32-bit integers between big-endian and
+ little-endian machines.
+
+`-B'
+ Set the I/O block size to 5120 bytes. Initially the block size is
+ 512 bytes.
+
+`--block-size=BLOCK-SIZE'
+ Set the I/O block size to BLOCK-SIZE * 512 bytes.
+
+`-c'
+ Use the old portable (ASCII) archive format.
+
+`-C IO-SIZE, --io-size=IO-SIZE'
+ Set the I/O block size to IO-SIZE bytes.
+
+`-d, --make-directories'
+ Create leading directories where needed.
+
+`-E FILE, --pattern-file=FILE'
+ Read additional patterns specifying filenames to extract or list
+ from FILE. The lines of FILE are treated as if they had been
+ non-option arguments to cpio. This option is used in copy-in mode,
+
+`-f, --nonmatching'
+ Only copy files that do not match any of the given patterns.
+
+`-F, --file=archive'
+ Archive filename to use instead of standard input or output. To
+ use a tape drive on another machine as the archive, use a filename
+ that starts with `HOSTNAME:'. The hostname can be preceded by a
+ username and an `@' to access the remote tape drive as that user,
+ if you have permission to do so (typically an entry in that user's
+ `~/.rhosts' file).
+
+`--force-local'
+ With -F, -I, or -O, take the archive file name to be a local file
+ even if it contains a colon, which would ordinarily indicate a
+ remote host name.
+
+`-H FORMAT, --format=FORMAT'
+ Use archive format FORMAT. The valid formats are listed below;
+ the same names are also recognized in all-caps. The default in
+ copy-in mode is to automatically detect the archive format, and in
+ copy-out mode is `bin'.
+
+ `bin'
+ The obsolete binary format.
+
+ `odc'
+ The old (POSIX.1) portable format.
+
+ `newc'
+ The new (SVR4) portable format, which supports file systems
+ having more than 65536 i-nodes.
+
+ `crc'
+ The new (SVR4) portable format with a checksum added.
+
+ `tar'
+ The old tar format.
+
+ `ustar'
+ The POSIX.1 tar format. Also recognizes GNU tar archives,
+ which are similar but not identical.
+
+ `hpbin'
+ The obsolete binary format used by HPUX's cpio (which stores
+ device files differently).
+
+ `hpodc'
+ The portable format used by HPUX's cpio (which stores device
+ files differently).
+
+`-i, --extract'
+ Run in copy-in mode. *Note Copy-in mode::.
+
+`-I archive'
+ Archive filename to use instead of standard input. To use a tape
+ drive on another machine as the archive, use a filename that
+ starts with `HOSTNAME:'. The hostname can be preceded by a
+ username and an `@' to access the remote tape drive as that user,
+ if you have permission to do so (typically an entry in that user's
+ `~/.rhosts' file).
+
+`-k'
+ Ignored; for compatibility with other versions of cpio.
+
+`-l, --link'
+ Link files instead of copying them, when possible.
+
+`-L, --dereference'
+ Copy the file that a symbolic link points to, rather than the
+ symbolic link itself.
+
+`-m, --preserve-modification-time'
+ Retain previous file modification times when creating files.
+
+`-M MESSAGE, --message=MESSAGE'
+ Print MESSAGE when the end of a volume of the backup media (such
+ as a tape or a floppy disk) is reached, to prompt the user to
+ insert a new volume. If MESSAGE contains the string "%d", it is
+ replaced by the current volume number (starting at 1).
+
+`-n, --numeric-uid-gid'
+ Show numeric UID and GID instead of translating them into names
+ when using the `--verbose option'.
+
+`--no-absolute-filenames'
+ Create all files relative to the current directory in copy-in
+ mode, even if they have an absolute file name in the archive.
+
+`--no-preserve-owner'
+ Do not change the ownership of the files; leave them owned by the
+ user extracting them. This is the default for non-root users, so
+ that users on System V don't inadvertantly give away files. This
+ option can be used in copy-in mode and copy-pass mode
+
+`-o, --create'
+ Run in copy-out mode. *Note Copy-out mode::.
+
+`-O archive'
+ Archive filename to use instead of standard output. To use a tape
+ drive on another machine as the archive, use a filename that
+ starts with `HOSTNAME:'. The hostname can be preceded by a
+ username and an `@' to access the remote tape drive as that user,
+ if you have permission to do so (typically an entry in that user's
+ `~/.rhosts' file).
+
+`--only-verify-crc'
+ Verify the CRC's of each file in the archive, when reading a CRC
+ format archive. Don't actually extract the files.
+
+`-p, --pass-through'
+ Run in copy-pass mode. *Note Copy-pass mode::.
+
+`--quiet'
+ Do not print the number of blocks copied.
+
+`-r, --rename'
+ Interactively rename files.
+
+`-R [user][:.][group], --owner [user][:.][group]'
+ Set the ownership of all files created to the specified user and/or
+ group in copy-out and copy-pass modes. Either the user, the
+ group, or both, must be present. If the group is omitted but the
+ ":" or "." separator is given, use the given user's login group.
+ Only the super-user can change files' ownership.
+
+`--rsh-command=COMMAND'
+ Notifies cpio that is should use COMMAND to communicate with remote
+ devices.
+
+`-s, --swap-bytes'
+ Swap the bytes of each halfword (pair of bytes) in the files.This
+ option can be used in copy-in mode.
+
+`-S, --swap-halfwords'
+ Swap the halfwords of each word (4 bytes) in the files. This
+ option may be used in copy-in mode.
+
+`--sparse'
+ Write files with large blocks of zeros as sparse files. This
+ option is used in copy-in and copy-pass modes.
+
+`-t, --list'
+ Print a table of contents of the input.
+
+`-u, --unconditional'
+ Replace all files, without asking whether to replace existing
+ newer files with older files.
+
+`-v, --verbose'
+ List the files processed, or with `-t', give an `ls -l' style
+ table of contents listing. In a verbose table of contents of a
+ ustar archive, user and group names in the archive that do not
+ exist on the local system are replaced by the names that
+ correspond locally to the numeric UID and GID stored in the
+ archive.
+
+`-V --dot'
+ Print a `.' for each file processed.
+
+`--version'
+ Print the cpio program version number and exit.
+
+
+File: cpio.info, Node: Media, Next: Concept Index, Prev: Invoking `cpio', Up: Top
+
+Magnetic Media
+**************
+
+Archives are usually written on removable media-tape cartridges, mag
+tapes, or floppy disks.
+
+ The amount of data a tape or disk holds depends not only on its size,
+but also on how it is formatted. A 2400 foot long reel of mag tape
+holds 40 megabytes of data when formated at 1600 bits per inch. The
+physically smaller EXABYTE tape cartridge holds 2.3 gigabytes.
+
+ Magnetic media are re-usable-once the archive on a tape is no longer
+needed, the archive can be erased and the tape or disk used over. Media
+quality does deteriorate with use, however. Most tapes or disks should
+be disgarded when they begin to produce data errors.
+
+ Magnetic media are written and erased using magnetic fields, and
+should be protected from such fields to avoid damage to stored data.
+Sticking a floppy disk to a filing cabinet using a magnet is probably
+not a good idea.
+
+
+File: cpio.info, Node: Concept Index, Prev: Media, Up: Top
+
+Concept Index
+*************
+
+* Menu:
+
+* command line options: Invoking `cpio'.
+* copying directory structures: Tutorial.
+* creating a cpio archive: Tutorial.
+* extracting a cpio archive: Tutorial.
+* invoking cpio: Invoking `cpio'.
+* magnetic media: Media.
+* passing directory structures: Tutorial.
+
+
+
+Tag Table:
+Node: Top938
+Node: Introduction1657
+Node: Tutorial2369
+Node: Invoking `cpio'6038
+Node: Copy-out mode6227
+Node: Copy-in mode7153
+Node: Copy-pass mode8531
+Node: Options9324
+Node: Media16592
+Node: Concept Index17575
+
+End Tag Table
diff --git a/doc/cpio.texi b/doc/cpio.texi
new file mode 100644
index 0000000..ae534f4
--- /dev/null
+++ b/doc/cpio.texi
@@ -0,0 +1,563 @@
+\input texinfo @c -*-texinfo-*-
+@c %**start of header
+@setfilename cpio.info
+@settitle cpio
+@setchapternewpage off
+@set VERSION GNU cpio 2.5
+@set RELEASEDATE June 2002
+@c %**end of header
+
+@ifinfo
+@format
+START-INFO-DIR-ENTRY
+* cpio: (cpio). Making tape (or disk) archives.
+END-INFO-DIR-ENTRY
+@end format
+@end ifinfo
+
+@ifinfo
+This file documents @value{VERSION}.
+
+Copyright (C) 1995, 2001, 2002 Free Software Foundation, Inc.
+
+Permission is granted to make and distribute verbatim copies of
+this manual provided the copyright notice and this permission notice
+are preserved on all copies.
+
+@ignore
+Permission is granted to process this file through TeX and print the
+results, provided the printed document carries copying permission
+notice identical to this one except for the removal of this paragraph
+
+
+@end ignore
+Permission is granted to copy and distribute modified versions of this
+manual under the conditions for verbatim copying, provided that the entire
+resulting derived work is distributed under the terms of a permission
+notice identical to this one.
+
+Permission is granted to copy and distribute translations of this manual
+into another language, under the above conditions for modified versions,
+except that this permission notice may be stated in a translation approved
+by the Foundation.
+@end ifinfo
+
+
+@titlepage
+@title GNU CPIO
+@subtitle @value{VERSION} @value{RELEASEDATE}
+@author by Robert Carleton
+@c copyright page
+@page
+@vskip 0pt plus 1filll
+Copyright @copyright{} 1995, 2001, 2002 Free Software Foundation, Inc.
+@sp 2
+This is the first edition of the GNU cpio documentation,@*
+and is consistent with @value{VERSION}.@*
+@sp 2
+Published by the Free Software Foundation @*
+59 Temple Place - Suite 330, @*
+Boston, MA 02111-1307, USA @*
+
+Permission is granted to make and distribute verbatim copies of
+this manual provided the copyright notice and this permission notice
+are preserved on all copies.
+
+Permission is granted to copy and distribute modified versions of this
+manual under the conditions for verbatim copying, provided that the entire
+resulting derived work is distributed under the terms of a permission
+notice identical to this one.
+
+Permission is granted to copy and distribute translations of this manual
+into another language, under the above conditions for modified versions,
+except that this permission notice may be stated in a translation
+approved by the Free Software Foundation.
+@end titlepage
+
+@ifinfo
+@node Top, Introduction, (dir), (dir)
+@comment node-name, next, previous, up
+@top
+
+GNU cpio is a tool for creating and extracting archives, or copying
+files from one place to another. It handles a number of cpio formats as
+well as reading and writing tar files. This is the first edition of the
+GNU cpio documentation and is consistant with @value{VERSION}.
+
+@menu
+* Introduction::
+* Tutorial:: Getting started.