diff options
Diffstat (limited to 'tools/cpio/src/cpio.1')
-rw-r--r-- | tools/cpio/src/cpio.1 | 943 |
1 files changed, 0 insertions, 943 deletions
diff --git a/tools/cpio/src/cpio.1 b/tools/cpio/src/cpio.1 deleted file mode 100644 index 9c8b1f98c..000000000 --- a/tools/cpio/src/cpio.1 +++ /dev/null @@ -1,943 +0,0 @@ -'\" t -.\" Copyright (c) 2003 Gunnar Ritter -.\" -.\" This software is provided 'as-is', without any express or implied -.\" warranty. In no event will the authors be held liable for any damages -.\" arising from the use of this software. -.\" -.\" Permission is granted to anyone to use this software for any purpose, -.\" including commercial applications, and to alter it and redistribute -.\" it freely, subject to the following restrictions: -.\" -.\" 1. The origin of this software must not be misrepresented; you must not -.\" claim that you wrote the original software. If you use this software -.\" in a product, an acknowledgment in the product documentation would be -.\" appreciated but is not required. -.\" -.\" 2. Altered source versions must be plainly marked as such, and must not be -.\" misrepresented as being the original software. -.\" -.\" 3. This notice may not be removed or altered from any source distribution. -.\" Sccsid @(#)cpio.1 1.92 (gritter) 3/26/07 -.TH CPIO 1 "3/26/07" "Heirloom Toolchest" "User Commands" -.SH NAME -cpio \- copy file archives in and out -.SH SYNOPSIS -.PD 0 -.HP -.nh -.ad l -\fBcpio\fR \fB\-i\fR[\fBbcdfkmrstuvBSV6\fR] [\fB\-C\fI\ size\fR] -[\fB\-E\fI\ file\fR] [\fB\-H\fI\ hdr\fR] [[\fB\-I\fI\ file\fR] -[\fB\-M\fI\ msg\fR]] [\fB\-R\fI\ id\fR] [\fIpatterns\fR] -.HP -.ad l -\fBcpio\fR \fB\-o\fR[\fBacvABLPV\fR] [\fB\-C\fI\ size\fR] -[\fB\-H\fI\ hdr\fR] [[\fB\-M\fI\ msg\fR] [\fB\-O\fI\ file\fR]] -.HP -.ad l -\fBcpio\fR \fB\-p\fR[\fBadlmPuvLV\fR] [\fB\-R\fI\ id\fR] \fIdirectory\fR -.br -.PD -.ad b -.hy 1 -.SH DESCRIPTION -.I Cpio -creates and extracts file archives and copies files. -.PP -With the -.B \-i -option, -.I cpio -works in -.RI ` copy-in ' -mode and extracts files from a file archive. -By default, -the archive is read from standard input. -Optional arguments are interpreted as -.I patterns -and restrict the set of extracted files -to those matching any of the -.IR patterns . -A -.RB ` !\& ' -at the beginning of the -.I pattern -selects all files that do not match this -.IR pattern . -The syntax is otherwise identical to that described in -.IR glob (7), -except that the slash character -.RB ` / ' -is matched by -meta-character constructs with -.RB ` * ', -.RB ` ? ' -and -.RB ` [ '. -Care must be taken to quote meta-characters appropriately from the shell. -File permissions are set to those in the archive; -if the caller is the super-user, -ownerships are restored as well. -.I Cpio -will not create directories, -preserve modification times -or overwrite more recently modified target files -unless the appropriate -.IR \-d , -.I \-m -or -.I \-u -options are specified. -Archives compressed with -.IR bzip2 (1), -.IR compress (1), -.IR gzip (1), -or -.IR rpm (1) -are transparently de\%compressed on input. -.PP -With -.BR \-o , -.I cpio -works in -.RI ` copy-out ' -mode, -creates archives -and writes them to standard output per default. -A list of filenames to be included in the archive is -read from standard input; -if the name of a directory appears, -it is included in the archive, -but -.I cpio -will not include any of its members -unless they are explicitly given in addition. -The -.IR find (1) -utility is useful to generate a list of files -(see also its -.I \-cpio -and -.I \-ncpio -operators). -When producing a filename list for -.IR cpio , -find should always be invoked with -.I \-depth -since this makes it possible to extract write-protected directories -for users other than the super-user. -.PP -The -.B \-p -option selects -.RI ` pass ' -mode; -a list of files is read from standard input as described for -.IR \-o ; -files are copied to the specified -.IR directory , -preserving attributes as described for -.IR \-i . -Special files are re-created in the target hierarchy, -and hard links between copied files are preserved. -.PP -When a premature end-of-file is detected with -.I \-i -and -.I \-o -and the archive is a block or character special file, -the user is prompted for new media. -.PP -The following options alter the behavior of -.IR cpio : -.TP -.B \-a -Resets the access times of files -that were included in the archive with -.I \-o -or copied with -.IR \-p . -.TP -.B \-A -Append files to the archive. -The archive must be seekable, -such as a regular file or a block device, -or a tape device capable of writing between filemarks. -.TP -.B \-b -Swap bytes within each half word -and half words within each word -of input file data. -.TP -.B \-B -Blocks input and output archives at 5120 byte records. -The default blocking size is device dependent. -.TP -.B \-c -Specifies that archive headers are in SVR4 ASCII cpio format. -This option is ignored with -.I \-i -unless the -.I \-k -option is also present. -.TP -\fB\-C\fI size\fR -Blocks input and output archives at -.I size -byte records. -.TP -.B \-d -Creates missing parent directories -for each file extracted from the archive -and allows the extraction of directories. -.TP -\fB\-E\fI file\fR -Each line read from -.I file -is taken as a pattern in addition -to those specified on the command line. -.TP -.B \-f -Reverses the sense of patterns -such that a file that does not match any of the patterns -is selected. -.TP -\fB\-H\fI header\fR -Specifies the archive header format to be one of: -.sp -.in +6 -.TS -lfB l. -\fBcrc\fR SVR4 ASCII cpio format with checksum;\ -\fBsco\fR T{ -SCO UnixWare 7.1 ASCII cpio format; -T} -\fBscocrc\fR T{ -SCO UnixWare 7.1 ASCII cpio format with checksum; -T} -\fBodc\fR T{ -traditional ASCII cpio format, as standardized in IEEE Std. 1003.1, 1996; -T} -\fBbbs\fR byte-swapped binary cpio format; -\fBsgi\fR T{ -SGI IRIX extended binary cpio format; -T} -\fBcray\fR T{ -Cray UNICOS 9 cpio format; -T} -\fBcray5\fR T{ -Cray UNICOS 5 cpio format; -T} -\fBdec\fR T{ -Digital UNIX extended cpio format; -T} -\fBtar\fR tar format; -\fBotar\fR old tar format; -\fBustar\fR T{ -IEEE Std. 1003.1, 1996 tar format; -T} -.T& -l s. -\fBpax\fR[\fB:\fIoption\fB,\fR[\fIoption\fB,\fR\|...]] -.T& -l l. -\& T{ -IEEE Std. 1003.1, 2001 pax format. -Format-specific \fIoptions\fR are: -.in +2n -.ti 0 -.br -\fBlinkdata\fR -.br -For a regular file which has multiple hard links, -the file data is stored once for each link in the archive, -instead of being stored for the first entry only. -This option must be used with care -since many implementations are unable -to read the resulting archive. -.ti 0 -.br -\fBtimes\fR -.br -Causes the times of last access and last modification -of each archived file -to be stored in an extended \fIpax\fR header. -This in particular allows the time of last access -to be restored when the archive is read. -.br -.in -2n -T} -\fBsun\fR T{ -Sun Solaris 7 extended tar format; -T} -\fBgnu\fR T{ -GNU tar format; -T} -\fBbar\fR T{ -SunOS 4 bar format; -T} -\fBzip\fR[\fB:\fIcc\fR] T{ -zip format with optional compression method. -If \fIcc\fR is one of -\fBen\fR (normal, default), -\fBex\fR (extra), -\fBef\fR (fast), -or -\fBes\fR (super fast), -the standard \fIdeflate\fR compression is used. -\fBe0\fR selects no compression, -and -\fBbz2\fR selects \fIbzip2\fR compression. -T} -.TE -.in -6 -.sp -This option is ignored with -.I \-i -unless the -.I \-k -option is also present. -The default for -.I \-o -is binary cpio format. -.TP -\fB\-I\fI\ file\fR -Selects a -.I file -that is read with the -.I \-i -option instead of standard input. -.TP -.B \-k -Try to continue operation on read errors and invalid headers. -If an archive contains another archive, -files from either archive may be chosen. -.TP -.B \-l -Link files instead of copying them with -.I \-p -if possible. -.TP -.B \-L -Follow symbolic links when reading files with -.I \-o -or -.IR \-p . -.TP -.B \-m -Restore modification times of extracted files -to those given in the archive. -.TP -\fB\-M\fI message\fR -The given -.I message -is printed instead of the standard one -with -.I \-I -or -.I \-O -when changing media. -.TP -\fB\-O\fI file\fR -Selects an archive -.I file -that is written instead of standard output -with the -.I \-o -option. -.TP -.B \-P -In copy-out or pass mode, -interpret the data read from standard input -as prototype lines -of colon-separated fields -of the form -.in +3m -.sp -\fItype\fB:\fIuser\fB:\fIgroup\fB:\fImode\fB:\fIatime\fB:\fImtime\fB:\fImajor\fB:\fIminor\fB:\fIpath\fR -.sp -.in -3m -For each non-empty field, -the corresponding attribute of the input file is overridden. -With this option, -an unprivileged user can create -an archive that contains files -with arbitrary attributes. -The meanings of the individual fields are: -.RS -.TP 6 -.PD 0 -.I type -File type, one of: -\fBb\fR (block device), -\fBc\fR (character device), -\fBd\fR (directory), -\fBf\fR (plain file), -\fBp\fR (named pipe), -or -\fBs\fR (symbolic link). -.TP -.I user -The owner of the file, -which can be a numeric user ID or a user name. -.TP -.I group -The group owner of the file, -which can be a numeric group ID or a group name. -.TP -.I mode -The octal mode of the file. -.TP -.I atime -The time the file was last accessed. -Note that most archive formats cannot store this attribute, -in which case it is ignored. -The format is the same as that of the -.I mtime -field. -.TP -.I mtime -The time the file was last modified. -This is either a decimal integer -specifying the seconds past the epoch, -or an ISO\ 8601 date and time field -of the format \fIYYYYMMDD\fBT\fIHHMMSS\fR, -e.g. 20070326T190511, -the latter being relative to the current time zone -and with all digits past the \fBT\fR being optional. -.TP -.I major minor -Major and minor device numbers as with -.IR mknod (1M). -These fields are only allowed for block and character devices. -.TP -.I path -The name of the file to be archived. -If the file is not a symbolic link, -and the specification is otherwise sufficient, -the file needs not exist -at the time the archive is created. -A non-existent regular file will be empty in the archive. -.PD -.RE -.IP -This option is an extension. -.TP -.B \-r -Rename files interactively. -Before a file is extracted from the archive, -its file name is printed on standard error -and the user is prompted to specify a substitute file name. -If the line read from the terminal is empty, -the file is skipped; -if the line consists of a single dot, -the name is retained; -otherwise, -the line forms the new file name. -.TP -\fB\-R\fI user\fR -Set the ownership of extracted files -to the user and group ids of -.I user -instead of those specified in the archive. -Valid only for the super-user. -.TP -.B \-s -Swap bytes within each half word -of input file data. -.TP -.B \-S -Swap half words within each word -of input file data. -.TP -.B \-t -When combined with the -.I \-o -option, -a list of files in the archive is written to standard output; -no files are extracted. -.TP -.B \-u -.I Cpio -will overwrite existing target files -that were modified more recently than the file in the archive -when this option is given. -.TP -.B \-v -Prints the file names of archived or extracted files with -.I \-i -and -.I \-o -and a verbose output format with -.IR \-t . -If given twice -.RB ( \-vv ) -in combination with -.I \-t -when reading a -.I zip -archive, -information about compression level and method is printed. -.TP -.B \-V -Prints a dot for each archived or extracted file. -.TP -.B \-6 -Selects Unix 6th Edition archive format -(only in copy-in mode). -.PP -.ne 37 -Characteristics of archive formats are as follows: -.sp -.TS -allbox; -l r r r l -l1fB r2 n2 r2 c. - T{ -.ad l -maximum user/\%group id -T} T{ -.ad l -maximum file size -T} T{ -.ad l -maximum pathname length -T} T{ -.ad l -bits in dev_t (major/minor) -T} -binary 65535 2 GB\ 256 \ 16 -\-H\ sgi 65535 9 EB\ 256 \ 14/18 -\-H\ odc 262143 8 GB\ 256 \ 18 -\-H\ dec 262143 8 GB\ 256 \ 24/24 -T{ -\-c, \-H\ crc -T} 4.3e9 4 GB\ 1024 \ 32/32 -T{ -\-H\ sco, \-H\ scocrc -T} 4.3e9 9 EB\ 1024 \ 32/32 -T{ -\-H\ cray, \-H\ cray5 -T} 1.8e19 9 EB\ 65535 \ 64 -\-H\ otar 2097151 8 GB\ 99 \ n/a -T{ -\-H\ tar, -\-H\ ustar -T} 2097151 8 GB\ 256 (99) \ 21/21 -\-H\ pax 1.8e19 9 EB\ 65535 \ 21/21 -\-H\ sun 1.8e19 9 EB\ 65535 \ 63/63 -\-H\ gnu 1.8e19 9 EB\ 65535 \ 63/63 -\-H\ bar 2097151 8 GB\ 427 \ 21 -\-H\ zip 4.3e9 9 EB\ 60000 \ 32 -.TE -.sp -.PP -By default, -.B binary -cpio archives are written. -The byte order of such archives -depends on the machine -on which the archive is created. -Unlike some other implementations, -.I cpio -fully supports -archives of either byte order. -.I \-H\ bbs -can be used to create an archive -with the byte order opposed to that of the current machine. -.PP -The -.B sgi -format extends the binary format -to handle larger files and more device bits. -If an archive does not contain any entries -that actually need the extensions, -it is identical to a binary archive. -.I \-H\ sgi -archives are always created in MSB order. -.PP -The -.B odc -format was introduced with System\ III -and standardized with IEEE Std. 1003.1. -All known -.I cpio -implementations since around 1980 can read this format. -.PP -The -.B dec -format extends the -.I odc -format -to support more device bits. -Archives in this format are generally incompatible with -.I odc -archives -and need special implementation support to be read. -.PP -The -.B \-c -format was introduced with System\ V Release\ 4. -Except for the file size, -it imposes no practical limitations -on files archived. -The original SVR4 implementation -stores the contents of hard linked files -only once and with the last archived link. -This -.I cpio -ensures compatibility with SVR4. -With archives created by implementations that employ other methods -for storing hard linked files, -each file is extracted as a single link, -and some of these files may be empty. -Implementations that expect methods other than the original SVR4 one -may extract no data for hard linked files at all. -.PP -The -.B crc -format is essentially the same as the -.I \-c -format -but adds a simple checksum (not a CRC, despite its name) -for the data of regular files. -The checksum requires the implementation to read each file twice, -which can considerably increase running time and system overhead. -As not all implementations claiming to support this format -handle the checksum correctly, -it is of limited use. -.PP -The -.B sco -and -.B scocrc -formats are variants of the -.I \-c -and -.I \-H\ crc -formats, respectively, -with extensions to support larger files. -The extensions result in a different archive format -only if files larger than slightly below 2\ GB occur. -.PP -The -.B cray -format extends all header fields to 64 bits. -It thus imposes no practical limitations of any kind -on archived files, -but requires special implementation support -to be read. -Although it is originally a binary format, -the byte order is always MSB as on Cray machines. -The -.B cray5 -format is an older variant -that was used with UNICOS 5 and earlier. -.PP -The -.B otar -format was introduced with the Unix 7th Edition -.I tar -utility. -Archives in this format -can be read on all Unix systems since about 1980. -It can only hold regular files -(and, on more recent systems, symbolic links). -For file names that contain characters with the most significant bit set -(non-ASCII characters), -implementations differ in the interpretation of the header checksum. -.PP -The -.B ustar -format was introduced with IEEE Std. 1003.1. -It extends the old -.I tar -format -with support for directories, device files, -and longer file names. -Pathnames of single-linked files can consist of up to 256 characters, -dependent on the position of slashes. -Files with multiple links can only be archived -if the first link encountered is no longer than 100 characters. -Due to implementation errors, -file names longer than 99 characters -can not considered to be generally portable. -Another addition of the -.I ustar -format -are fields for the symbolic user and group IDs. -These fields are created by -.IR cpio , -but ignored when reading such archives. -.PP -With -.BR "\-H tar" , -a variant of the -.I ustar -format is selected -which stores file type bits in the mode field -to work around common implementation problems. -These bits are ignored by -.I cpio -when reading archives. -.PP -The -.B pax -format is an extension to the -.I ustar -format. -If attributes cannot be archived with -.IR ustar , -an extended header is written. -Unless the size of an entry is greater than 8\ GB, -a -.I pax -archive should be readable by any implementation -capable of reading -.I ustar -archives, -although files may be extracted under wrong names -and extended headers may be extracted as separate files. -If a file name contains non-UTF-8 characters, -it may not be archived or extracted correctly -because of a problem of the -.I pax -format specification. -.PP -The -.B sun -format extends the -.I ustar -format similar as the -.I pax -format does. -The extended headers in -.I sun -format archives are not understood -by implementations that support only the -.I pax -format and vice-versa. -The -.I sun -format has also problems with non-UTF-8 characters in file names. -.PP -The -.B GNU -.I tar -format is mostly compatible with the other -.I tar -formats, -unless an archive entry actually uses its extended features. -There are no practical limitations on files archived with this format. -The implementation of -.I cpio -is limited to expanded numerical fields -and long file names; -in particular, -there is no support for sparse files or incremental backups. -If -.I cpio -creates a multi-volume -.I GNU -archive, -it just splits a single-volume archive in multiple parts, -as with the other formats; -.I GNU -multi-volume archives are not supported. -.PP -The -.B bar -format is similar to the -.I tar -format, but can store longer file names. -It requires special implementation support to be read. -.PP -The -.B zip -format can be read in many non-Unix environments. -There are several restrictions on archives -intended for data exchange: -only regular files should be stored; -file times, permissions and ownerships -might be ignored by other implementations; -there should be no more than 65536 files in the archive; -the total archive size should not exceed 2 GB; -only -.I deflate -compression should be used. -Otherwise, -.I cpio -stores all information available with other archive formats -in extended -.I zip -file headers, -so if archive portability is of no concern, -the -.I zip -implementation in -.I cpio -can archive complete Unix file hierarchies. -.I Cpio -supports the -.I zip64 -format extension for large files; -it automatically writes -.I zip64 -entries if necessary. -.I Cpio -can extract all known -.I zip -format compression codes. -It does not support -.I zip -encryption. -Multi-volume -.I zip -archives are created as splitted single-volume archives, -as with the other formats written by -.IR cpio ; -generic multi-volume -.I zip -archives are not supported. -.SH EXAMPLES -Extract all files named -.I Makefile -or -.I makefile -from the archive stored on -.IR /dev/rmt/c0s0 , -overwriting recent files: -.RS 2 -.sp -cpio \-idmu \-I /dev/rmt/c0s0 \'[Mm]akefile\' \'*/[Mm]akefile\' -.RE -.PP -List the files contained in a software distribution archive: -.RS 2 -.sp -cpio \-itv \-I distribution.tar.gz -.RE -.PP -Write a -.IR gzip (1) -compressed -.I ustar -archive containing all files below the directory -.I \%project -to the file -.IR \%project.tar.gz , -excluding all directories named -.I CVS -or -.I SCCS -and their contents: -.RS 2 -.sp -find project \-depth \-print | egrep \-v \'/(CVS|SCCS)(/|$)\' | -.br - cpio \-o \-H ustar | gzip \-c > project.tar.gz -.RE -.PP -Copy the directory -.I work -and its contents -to the directory -.IR \%savedfiles : -.RS 2 -.sp -find work \-depth \-print | cpio \-pdm savedfiles -.RE -.PP -Self-extracting zip archives are not automatically recognized, -but can normally be read using the -.I \-k -option, as with -.RS 2 -.sp -cpio \-itvk \-H zip \-I archive.exe -.sp -.RE -.SH "ENVIRONMENT VARIABLES" -.TP -.BR LANG ", " LC_ALL -See -.IR locale (7). -.TP -.B LC_CTYPE -Selects the mapping of bytes to characters -used for matching patterns. -.TP -.B LC_TIME -Sets the month names printed with -.IR \-tv . -.TP -.B SYSV3 -If this variable is set, -the -.I \-c -option has the same effect as \fI\-H odc\fR; -\fB\-H newc\fR can be used -to select SVR4 ASCII format. -The output format of -.I \-tv -is changed, as well as the text of diagnostic messages. -.SH "SEE ALSO" -find(1), -pax(1), -tar(1) -.SH DIAGNOSTICS -.I Cpio -exits with -.sp -.TS -l8fB l. -0 after successful operation; -1 on usage errors; -2 when operation was continued after minor errors; -3 on fatal error conditions. -.TE -.SH NOTES -Device and inode numbers -are used for hard link recognition -with the various cpio formats. -Since the header space cannot hold -large numbers present in current file systems, -devices and inode numbers are set on a per-archive basis. -This enables hard link recognition with all cpio formats, -but the link connection to files appended with -.I \-A -is not preserved. -.PP -If a numeric user or group id does not fit -within the size of the header field in the selected format, -files are stored with the user id (or group id, respectively) -set to 60001. -.PP -Use of the -.I \-A -option with a -.I zip -format archive may cause data loss -if the archive was not previously created by -.I cpio -itself. -.PP -.I Cpio -cannot store file names that contain newline characters; -see the -.I NOTES -section of -.IR find (1) -for more information. -.PP -If the file names passed to -.I "cpio \-o" -begin with a slash character, -absolute path names are stored in the archive -and will be extracted to these path names later -regardless of the current working directory. -This is normally not advisable, -and relative path names should be passed to -.I cpio -only. |