NAME

     install - install files


SYNOPSIS

     install [-lcszN] [-o owner] [-g group] [-m mode] [-S  stack]
          [file1] file2
     install [-lcszN] [-o owner] [-g group] [-m mode] [-S  stack]
          file ... dir
     install -d [-o owner] [-g group] [-m mode] directory


DESCRIPTION

     Install puts executables, manual pages, and library files in
     their  proper  place  in  the bin, man, and lib directories.
     The first two forms of the command are  like  cp(1)  copying
     either  one  file  to  another or copying several files to a
     directory.  The "-d" form is like mkdir(1) with the -p flag.
     File1 may be omitted if neither -l nor -c is given to change
     the attributes of file2.

     Attributes are always copied from the source file,  use  the
     options  to  change.  Note that the source file's attributes
     are changed with the destination file if  they  are  linked.
     So  copy  the  file  if you change it in a way that makes it
     read-only.  You would otherwise not be  able  to  compile  a
     command again.


OPTIONS

     -l   Link the destination to  the  source  file  instead  of
          copying  it.   This  is  done to either save space on a
          file system with both the source  and  the  bin  direc-
          tories on it, or to install synonyms to a command.

     -c   Copy the source file to its proper place.  This  option
          is  the  default if -l is not given.  With -l, the file
          is copied if the link fails.

     -s   Strip the destination file of its symbol table,  if  it
          is an executable, and if it is actually copied.  It has
          no effect on a link or a non-executable.

     -z   Compress the executable using compress(1) and prepend a
          header  line that calls zexec(1) to decompress and exe-
          cute the binary.  This will on average  save  40%  disk
          space at the expense of a slower startup time.  Like -s
          the file must be actually copied for the flag  to  have
          effect.

     -N   Use gzip -N to compress the binary.  You may see up  to
          60%  space savings, but it will take much longer.  N is
          a digit from 1 to 9 telling the compression effort, see
          gzip(1).

     -d   Make  a  directory,  usually  to  install  files  in  a
          separate  directory  in a library.  Intermediate direc-
          tories in the path are created with the same attributes
          as  the  final  directory.   Only the attributes of the
          final directory are set if the directory exists.

     -o owner
          Set the owner of the target.  This only  works  if  the
          invoker  is the super-user, or if install is run setuid
          root and the invoker is a member of group zero.  If  -o
          is omitted then the ownership is copied from the source
          file, or set to the id of the invoker if a directory is
          made.

     -g group
          Like -o, but for the group ownership of the target.

     -m mode
          Mode is an octal number that  specifies  the  mode  the
          target  should  get.   The default is the source file's
          mode with a chmod a+rX applied to it, or 755 for a  new
          directory.   Implies  -o  0, or -g 0 if a file is to be
          set-uid or set-gid and the invoker  has  permission  to
          change  ownership.   This trick allows a group 0 member
          to install third party software, even though it expects
          to be installed by root.

     -S stack
          Sets the maximum amount of heap + stack that an execut-
          able  may have when running.  The argument is a C-style
          decimal, octal or hexadecimal number,  optionally  fol-
          lowed  by  the  multipliers  m,  k,  w,  and b for mega
          (1024*1024), kilo (1024), "word" (2  or  4),  and  byte
          (1).   Uppercase  M is also accepted for those who know
          what S.I. means.  The compilers use -S 32kw by default,
          that  translates  to  64kb  for  an 8086, and 128kb for
          other architectures.  This option is ignored on a  non-
          executable.


SEE ALSO

     ln(1),  cp(1),  strip(1),  compress(1),  gzip(1),  zexec(1),
     chown(8), chgrp(1), chmod(1), chmem(1), mkdir(1).


BUGS

     Uppercase K, W, and B are also accepted for those who  don't
     know what S.I. means.


AUTHOR

     Kees J. Bot (kjb@cs.vu.nl)