|
» |
|
|
|
NAMEcpio — copy file archives in and out; duplicate directory trees SYNOPSIScpio -o
[-e
extarg]
[achvxABC] cpio -i[bcdfmrstuvxBPRSU6]
[pattern...] cpio -p
[-e
extarg]
[adlmruvxU]
directory DESCRIPTIONThe
cpio
command saves and restores archives of files
on magnetic tape, other devices, or a regular file,
and copies files from one directory to another while replicating the
directory tree structure.
When
cpio
completes processing the files, it reports the number of blocks written.
- cpio -o
(copy out, export)
Read standard input to obtain a list of path names,
and copy those files to
standard output
together with path name and status information.
The output is padded to a 512-byte boundary. - cpio -i
(copy in, import)
Extract files from
standard input,
which is assumed to be the result of a previous
cpio -o. If
pattern...,
is specified,
only the files with names that match a
pattern
according to the rules of Pattern Matching Notation (see
regexp(5))
are selected.
A leading
!
on a pattern indicates that only those names
that do
not
match the remainder of the pattern should be selected.
Multiple patterns can be specified.
The patterns are additive.
If no
pattern
is specified, the default is
*
(select all files).
See the
f
option, as well. Extracted files are conditionally created
and copied into the current directory tree,
as determined by the options described below.
The permissions of the files match the permissions of the
original files when the archive was created by
cpio -o
unless the
U
option is used.
File owner and group are that of the current user
unless the user has
appropriate privileges,
in which case
cpio
retains the owner and group of the files of the previous
cpio -o. - cpio -p
(pass through)
Read standard input to obtain a list of path names of files
which are then conditionally created and copied into the destination
directory
tree as determined by the options described below.
directory
must exist.
Destination path names are interpreted relative to
directory. With the
-p
option, when handling a link, only the link is passed and no
data blocks are actually read or written.
This is especially noteworthy with
cpio -pl,
where it is very possible that all the files are created as links,
such that no blocks are written and "0 blocks" is reported by
cpio.
(See below for a description of the
-l
option.)
Optionscpio
recognizes the following options,
which can be appended as appropriate to
-i,
-o,
and
-p.
White space and hyphens are not permitted between these options and
-i,
-o,
or
-p.
- a
Reset access times of input files after they are copied. - b
Swap both bytes and half-words.
Use only with
-i.
See the
P
option for details;
see also the
s
and
S
options. - c
Write or read header information in
ASCII
character form for portability. - d
Create directories as needed. - -e extarg
Specifies the handling of any extent attributes of the file(s) to be
archived or copied.
extarg
takes one of the following values.
- warn
Archive or copy the file and issue a warning message if extent attributes
cannot be preserved. - ignore
Do not issue a warning message even if extent attributes cannot be
preserved. - force
Any file(s) with extent attributes will not be archived and a warning
message will be issued.
When using the
-o
option, extent attributes are not preserved in the archive.
Furthermore, the
-p
option will not preserve extent attributes if the files are being copied
to a file system that does not support extent attributes.
If
-e
is not specified, the default value for
extarg
is
warn. - f
Copy in all files except those selected by
pattern.... - h
Follow symbolic links as though they were normal files or directories.
Normally,
cpio
archives the link. - l
Whenever possible, link files rather than copying them.
This option does not destroy existing files.
Use only with
-p. - m
Retain previous file modification time.
This option does not affect directories that are being copied. - r
Rename files interactively.
If the user types a null line, the file is skipped. - s
Swap all bytes of the file.
Use only with
-i.
See the
P
option for details;
see also the
s
and
S
options. - t
Print only a table of contents of the input.
No files are created, read, or copied. - u
Copy unconditionally
(normally, an older file does not replace a newer file with the same name). - v
Print a list of file names as they are processed.
When used with the
t
option, the table of contents has the format:
numeric-mode owner-name blocks date-time filename where
numeric-mode
is the file privileges in numeric format,
owner-name
is the name of the file owner,
blocks
is the size of the file in 512-byte blocks,
date-time
is the date and time the file was last modified, and
filename
is the path name of the file as recorded in the archive. - x
Save or restore device special files.
Since
mknod()
is used to recreate these files on a restore,
-ix
and
-px
can be used only by users with
appropriate privileges
(see
mknod(2)).
This option is intended for intrasystem (backup) use only.
Restoring device files from previous versions of the OS, or from
different systems can be very dangerous.
cpio
may prevent the
restoration of certain device files from the archive. - A
Suppress warning messages regarding optional access control list
entries.
cpio
does not back up optional access control list entries
in a file's access control list
(see
acl(5)).
Normally, a warning message is printed
for each file that has optional access control list entries. - B
Block input/output at 5120 bytes to the record (does not apply to
cpio -p).
This option is meaningful only with data directed to or from
devices that support variable-length records such as magnetic tape. - C
Have
cpio
checkpoint itself at the start of each volume.
If
cpio
is writing to a streaming tape drive with immediate-report mode enabled
and a write error occurs, it normally aborts and exits
with return code
2.
With this option specified,
cpio
instead automatically restarts itself from the checkpoint
and rewrites the current volume.
Alternatively, if
cpio
is not writing to such a device and a write error occurs,
cpio
normally continues with the next volume.
With this option specified, however,
the user can choose to either ignore the error
or rewrite the current volume. - P
Read a file written on a
PDP-11
or
VAX
system (with byte-swapping) that did not use the
c
option.
Use only with
-i.
Files copied in this mode are not changed.
Non-ASCII
files are likely to need further processing to be readable.
This processing often requires knowledge of file contents,
and thus cannot always be done by this program.
The
b,
s,
and
S
options can be used when swapping all the bytes on the tape
(rather than just in the headers) is appropriate.
In general, text is best processed with
P
and binary data with one of the other options. - R
Resynchronize automatically when
cpio
goes "out of phase",
(see the
DIAGNOSTICS
section). - S
Swap all half-words in the file.
Use only with
-i.
See the
P
option for details;
see also the
b
and
s
options. - U
Use the process's file-mode creation mask (see
umask(2))
to modify the mode of files created, in the same manner as
creat(2). - 6
Process a
UNIX
Sixth-Edition-format file.
Use only with
-i.
Note that
cpio
archives created using a raw device file
must be read using a raw device file. When the end of the tape is reached,
cpio
prompts the user for a new special file and continues. If you want to pass one or more metacharacters to
cpio
without the shell expanding them,
be sure to precede each of them with a backslash
(\). Device files written with the
-ox
option (such as
/dev/tty03)
do not transport to other implementations of
HP-UX. EXTERNAL INFLUENCESEnvironment VariablesLC_COLLATE
determines the collating sequence used in evaluating pattern
matching notation for file name generation. LC_CTYPE
determines the interpretation of text as single and/or multi-byte
characters, and the characters matched by character class expressions in
pattern matching notation. LC_TIME
determines the format and content of date and time strings output
when listing the contents of an archive with the
v
option. LANG
determines the language in which messages are displayed. If
LC_COLLATE,
LC_CTYPE,
or
LC_TIME
is not specified in the environment or is set to the empty string,
the value of
LANG
is used as a default for each unspecified or empty variable.
If
LANG
is not specified or is set to the empty string, a default of "C" (see
lang(5))
is used instead of
LANG.
If any internationalization variable contains an invalid setting,
cpio
behaves as if all internationalization variables are set to "C".
See
environ(5). International Code Set SupportSingle- and multibyte character code sets are supported. RETURN VALUEcpio
returns the following exit codes:
- 0
Successful completion.
Review standard error for files that could not be transferred. - 1
Error during resynchronization.
Some files may not have been recovered. - 2
Out-of-phase error.
A file header is corrupt or in the wrong format.
DIAGNOSTICS- Out of phase--get help
- Perhaps the "c" option should[n't] be used
cpio -i
could not read the header of an archived file.
The header is corrupt or it was written in a different format.
Without the
R
option,
cpio
returns an exit code of
2. If no file name has been displayed yet,
the problem may be the format.
Try specifying a different header format option:
null for standard format;
c
for ASCII;
b,
s,
P,
or
S,
for one of the byte-swapping formats;
or
6
for
UNIX Sixth Edition. Otherwise, a header may be corrupt.
Use the
R
option to have
cpio
attempt to resynchronize the file automatically.
Resynchronizing means that
cpio
tries to find the next good header in the archive file
and continues processing from there.
If
cpio
tries to resynchronize from being out of phase,
it returns an exit code of
1.
Other diagnostic messages are self-explanatory. EXAMPLESCopy the contents of a directory into a tape archive:
ls | cpio -o > /dev/rtape/tape4QIC150 Duplicate a directory hierarchy:
cd olddir
find . -depth -print | cpio -pd newdir The trivial case
find . -depth -print | cpio -oB >/dev/rtape/tape4QIC150 can be handled more efficiently by:
find . -cpio /dev/rtape/tape4QIC150 WARNINGSBecause of industry standards and interoperability goals,
cpio
does not support the archival of files larger than 2 GB or files that
have user/group IDs greater than 60 K.
Files with user/group IDs greater than 60 K are archived and restored
under the user/group ID of the current process. Do not redirect the output of
cpio
to a named
cpio
archive file residing in the same directory
as the original files belonging to that
cpio
archive.
This can cause loss of data. cpio
strips any leading
./
characters in the list of file names piped to it. Path names are restricted to
PATH_MAX
characters (see
<limits.h>
and
limits(5)).
If there are too many unique linked files,
the program runs out of memory to keep track of them.
Thereafter, linking information is lost.
Only users with
appropriate privileges
can copy special files. cpio
tapes written on
HP
machines with the
-ox[c]
options can sometimes mislead (non-HP) versions of
cpio
that do not support the
x
option.
If a non-HP (or non-AT&T) version of
cpio
happens to be modified so that the (HP)
cpio
recognizes it as a device special file,
a spurious device file might be created. If
/dev/tty
is not accessible,
cpio
issues a complaint and exits. The
-pd
option does not create the directory typed on the command line. The
-idr
option does not make empty directories. The
-plu
option does not link files to existing files. POSIX
defines a file named
TRAILER!!!
as an end-of-archive marker.
Consequently, if a file of that name is contained
in a group of files being written by
cpio -o,
the file is interpreted as end-of-archive,
and no remaining files are copied.
The recommended practice is to avoid naming files anything that resembles
an end-of-archive file name. To create a POSIX-conforming
cpio
archive, the
c
option must be used.
To read a POSIX-conforming
cpio
archive, the
c
option must be used and the
b,
s,
S,
and
6
options should not be used.
If the user does not have
appropriate privileges,
the
U
option must also be used to get
POSIX-conforming behavior when reading an archive.
Users with appropriate privileges should not use this option to get
POSIX-conforming behavior. DEPENDENCIESIf the path given to
cpio
contains a symbolic link as the last element, this link is traversed and
path name resolution continues.
cpio
uses the symbolic link's target, rather than that of the link. STANDARDS CONFORMANCEcpio: SVID2, SVID3, XPG2, XPG3
|