


CPIO(1L)						 CPIO(1L)


NNAAMMEE
       cpio - copy files to and from archives

SSYYNNOOPPSSIISS
       ccppiioo  {-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] [--version]
       < name-list [> archive]

       ccppiioo {-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]  [--pat-
       tern-file=file]				[--format=format]
       [--owner=[user][:.][group]] [--no-preserve-owner]  [--mes-
       sage=message] [--version] [pattern...] [< archive]

       ccppiioo	{-p|--pass-through}	[-0adlmuvLV]      [-R
       [user][:.][group]] [--null] [--reset-access-time] [--make-
       directories]    [--link]	[--preserve-modification-time]
       [--unconditional]  [--verbose]	[--dot]	[--dereference]
       [--owner=[user][:.][group]]  [--no-preserve-owner] [--ver-
       sion] destination-directory < name-list

DDEESSCCRRIIPPTTIIOONN
       This manual page documents the GNU version of ccppiioo.   ccppiioo
       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  pathname,  owner,  timestamps, and
       access permissions.  The archive can be	another	file  on
       the  disk,  a  magnetic	tape,  or a pipe.  ccppiioo has three
       operating modes.

       In copy-out mode, ccppiioo 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
       ffiinndd command; you should give ffiinndd the  -depth  option  to
       minimize problems with permissions on directories that are
       unwritable or not searchable.

       In copy-in mode, ccppiioo 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



								1





CPIO(1L)						 CPIO(1L)


       filename does match a wildcard at the start of a	pattern,
       and  a  `/' in a filename can match wildcards.  If no pat-
       terns are given, all files are extracted.

       In copy-pass mode, ccppiioo 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.

       ccppiioo  supports  the following archive formats: binary, old
       ASCII, new ASCII, crc, 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 dif-
       ferent  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 ccppiioo; cur-
       rently,	it is only supported by GNU and Unix System V R4.
       The crc format is like the new ASCII format, but also con-
       tains  a checksum for each file which ccppiioo calculates when
       creating	an  archive  and  verifies  when  the	file   is
       extracted from the archive.

       The  tar format is provided for compatability with the ttaarr
       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).

       By  default, ccppiioo creates binary format archives, for com-
       patibility with older ccppiioo programs.  When extracting from
       archives,  ccppiioo	automatically  recognizes  which  kind of
       archive it is reading and can  read  archives  created  on
       machines with a different byte-order.

       Some  of the options to ccppiioo apply only to certain operat-
       ing modes; see the SYNOPSIS section for a  list	of  which
       options are allowed in which modes.

   OOPPTTIIOONNSS
       _-_0_, _-_-_n_u_l_l
	      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 new-
	      lines can be archived.  GNU ffiinndd is one way to pro-
	      duce a list of null-terminated filenames.

       _-_a_, _-_-_r_e_s_e_t_-_a_c_c_e_s_s_-_t_i_m_e
	      Reset the access times of files after reading them,



								2





CPIO(1L)						 CPIO(1L)


	      so that it does not look like they have  just  been
	      read.

       _-_A_, _-_-_a_p_p_e_n_d
	      Append to an existing archive.  Only works in copy-
	      out mode.	The archive must be a disk  file  speci-
	      fied with the _-_O or _-_F _(_-_-_f_i_l_e_) option.

       _-_b_, _-_-_s_w_a_p
	      In  copy-in  mode, swap both halfwords of words and
	      bytes of halfwords in the data.  Equivalent to _-_s_S.
	      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.

       _-_-_b_l_o_c_k_-_s_i_z_e_=_B_L_O_C_K_-_S_I_Z_E
	      Set the I/O block size to BLOCK-SIZE * 512 bytes.

       _-_c     Use the old portable (ASCII) archive format.

       _-_C _I_O_-_S_I_Z_E_, _-_-_i_o_-_s_i_z_e_=_I_O_-_S_I_Z_E
	      Set the I/O block size to IO-SIZE bytes.

       _-_d_, _-_-_m_a_k_e_-_d_i_r_e_c_t_o_r_i_e_s
	      Create leading directories where needed.

       _-_E _F_I_L_E_, _-_-_p_a_t_t_e_r_n_-_f_i_l_e_=_F_I_L_E
	      In  copy-in mode, read additional patterns specify-
	      ing filenames to extract or list	from  FILE.   The
	      lines  of FILE are treated as if they had been non-
	      option arguments to ccppiioo.

       _-_f_, _-_-_n_o_n_m_a_t_c_h_i_n_g
	      Only copy files that do not match any of the  given
	      patterns.

       _-_F_, _-_-_f_i_l_e_=_a_r_c_h_i_v_e
	      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 (typ-
	      ically an entry in that user's `~/.rhosts' file).

       _-_-_f_o_r_c_e_-_l_o_c_a_l
	      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 _F_O_R_M_A_T_, _-_-_f_o_r_m_a_t_=_F_O_R_M_A_T
	      Use  archive  format FORMAT.  The valid formats are



								3





CPIO(1L)						 CPIO(1L)


	      listed below; the same names are also recognized in
	      all-caps.	The default in copy-in mode is to auto-
	      matically 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 sup-
		     ports file systems having more than 65536 i-
		     nodes.

	      crc    The new (SVR4) portable format with a check-
		     sum added.

	      tar    The old tar format.

	      ustar  The POSIX.1 tar format.  Also recognizes GNU
		     ttaarr  archives,  which  are	similar  but not
		     identical.

       _-_i_, _-_-_e_x_t_r_a_c_t
	      Run in copy-in mode.

       _-_I _a_r_c_h_i_v_e
	      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  `HOST-
	      NAME:'.  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
	      ccppiioo.

       _-_l_, _-_-_l_i_n_k
	      Link  files instead of copying them, when possible.

       _-_L_, _-_-_d_e_r_e_f_e_r_e_n_c_e
	      Dereference symbolic links  (copy	the  files  that
	      they point to instead of copying the links).

       _-_m_, _-_-_p_r_e_s_e_r_v_e_-_m_o_d_i_f_i_c_a_t_i_o_n_-_t_i_m_e
	      Retain previous file modification times when creat-
	      ing files.

       _-_M _M_E_S_S_A_G_E_, _-_-_m_e_s_s_a_g_e_=_M_E_S_S_A_G_E
	      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).



								4





CPIO(1L)						 CPIO(1L)


       _-_n_, _-_-_n_u_m_e_r_i_c_-_u_i_d_-_g_i_d
	      In the verbose  table  of	contents  listing,  show
	      numeric  UID  and	GID  instead of translating them
	      into names.

	_-_-_n_o_-_p_r_e_s_e_r_v_e_-_o_w_n_e_r
	      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 inad-
	      vertantly give away files.

       _-_o_, _-_-_c_r_e_a_t_e
	      Run in copy-out mode.

       _-_O _a_r_c_h_i_v_e
	      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  `HOST-
	      NAME:'.  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).

       _-_p_, _-_-_p_a_s_s_-_t_h_r_o_u_g_h
	      Run in copy-pass mode.

       _-_r_, _-_-_r_e_n_a_m_e
	      Interactively rename files.

       _-_R _[_u_s_e_r_]_[_:_._]_[_g_r_o_u_p_]_, _-_-_o_w_n_e_r _[_u_s_e_r_]_[_:_._]_[_g_r_o_u_p_]
	      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' own-
	      ership.

       _-_s_, _-_-_s_w_a_p_-_b_y_t_e_s
	      In copy-in mode, swap the bytes  of  each	halfword
	      (pair of bytes) in the files.

       _-_S_, _-_-_s_w_a_p_-_h_a_l_f_w_o_r_d_s
	      In copy-in mode, swap the halfwords of each word (4
	      bytes) in the files.

       _-_t_, _-_-_l_i_s_t
	      Print a table of contents of the input.

       _-_u_, _-_-_u_n_c_o_n_d_i_t_i_o_n_a_l
	      Replace  all  files,  without  asking  whether   to
	      replace existing newer files with older files.




								5





CPIO(1L)						 CPIO(1L)


       _-_v_, _-_-_v_e_r_b_o_s_e
	      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 corre-
	      spond locally to the numeric UID and GID stored  in
	      the archive.

       _-_V _-_-_d_o_t
	      Print a "." for each file processed.

       _-_-_v_e_r_s_i_o_n
	      Print the ccppiioo program version number and exit.

       The  long-named options can be introduced with `+' as well
       as `--', for compatibility with previous releases.   Even-
       tually  support	for  `+'  will	be removed, because it is
       incompatible with the POSIX.2 standard.






































								6


