INSTALL(1)              NetBSD General Commands Manual              INSTALL(1)

NNAAMMEE
     iinnssttaallll -- install binaries

SSYYNNOOPPSSIISS
     iinnssttaallll [--UUbbccpprrss] [--BB _s_u_f_f_i_x] [--DD _d_e_s_t_d_i_r] [--ff _f_l_a_g_s] [--MM _m_e_t_a_l_o_g]
             [--TT _t_a_g_s] [--aa _c_o_m_m_a_n_d] [--mm _m_o_d_e] [--NN _d_b_d_i_r] [--oo _o_w_n_e_r] [--gg _g_r_o_u_p]
             [--ll _l_i_n_k_f_l_a_g_s] [--hh _h_a_s_h] [--SS _s_t_r_i_p_f_l_a_g] _f_i_l_e_1 _f_i_l_e_2
     iinnssttaallll [--UUbbccpprrss] [--BB _s_u_f_f_i_x] [--DD _d_e_s_t_d_i_r] [--ff _f_l_a_g_s] [--MM _m_e_t_a_l_o_g]
             [--TT _t_a_g_s] [--aa _c_o_m_m_a_n_d] [--mm _m_o_d_e] [--NN _d_b_d_i_r] [--oo _o_w_n_e_r] [--gg _g_r_o_u_p]
             [--ll _l_i_n_k_f_l_a_g_s] [--hh _h_a_s_h] [--SS _s_t_r_i_p_f_l_a_g] _f_i_l_e_1 _._._. _f_i_l_e_N _d_i_r_e_c_t_o_r_y
     iinnssttaallll --dd [--UUpp] [--DD _d_e_s_t_d_i_r] [--MM _m_e_t_a_l_o_g] [--TT _t_a_g_s] [--aa _c_o_m_m_a_n_d]
             [--mm _m_o_d_e] [--NN _d_b_d_i_r] [--oo _o_w_n_e_r] [--gg _g_r_o_u_p] _d_i_r_e_c_t_o_r_y _._._.

DDEESSCCRRIIPPTTIIOONN
     The file(s) are copied (or linked if the --ll option is specified) to the
     target file or directory.  If the destination is a directory, then the
     _f_i_l_e is copied into _d_i_r_e_c_t_o_r_y with its original filename.  If the target
     file already exists, it is either renamed to _f_i_l_e_._o_l_d if the --bb option is
     given or overwritten if permissions allow; an alternate backup suffix may
     be specified via the --BB option's argument.

     --aa _c_o_m_m_a_n_d
             Run _c_o_m_m_a_n_d on the target after installation and stripping (--ss),
             but before ownership, permissions or timestamps are set and
             before renaming (--rr) occurs.  _c_o_m_m_a_n_d is invoked via the sh(1)
             shell, allowing a single --aa argument be to specified to iinnssttaallll
             which the shell can then tokenize.

     --bb      Backup any existing files before overwriting them by renaming
             them to _f_i_l_e_._o_l_d. _S_e_e --BB for specifying a different backup suf-
             fix.

     --BB _s_u_f_f_i_x
             Use _s_u_f_f_i_x as the backup suffix if --bb is given.  If _s_u_f_f_i_x con-
             tains a '%' sign, a numbered backup will be performed, and the
             %-pattern will be expanded using sprintf(3), given an integer
             counter as the backup number.  The counter used starts from 0,
             and the first available name resulting from the expansion is
             used.

     --cc      Copy the file.  This is the default behavior; the flag is main-
             tained for backwards compatibility only.

     --dd      Create directories.  Missing parent directories are created as
             required.

     --DD _d_e_s_t_d_i_r
             Specify the DESTDIR (top of the file hierarchy) that the items
             are installed in to.  If --MM _m_e_t_a_l_o_g is in use, a leading string
             of ``_d_e_s_t_d_i_r'' will be removed from the file names logged to the
             _m_e_t_a_l_o_g.  This option does not affect where the actual files are
             installed.

     --ff _f_l_a_g_s
             Specify the target's file flags.  (See chflags(1) for a list of
             possible flags and their meanings.)

     --gg _g_r_o_u_p
             Specify a group.

     --hh _h_a_s_h
             When copying, calculate the digest of the files with _h_a_s_h to
             store in the --MM _m_e_t_a_l_o_g.  Supported digests:

                   nnoonnee    No hash.  This is the default.

                   mmdd55     The MD5 cryptographic message digest.

                   rrmmdd116600  The RMD-160 cryptographic message digest.

                   sshhaa11    The SHA-1 cryptographic message digest.

     --ll _l_i_n_k_f_l_a_g_s
             Instead of copying the file make a link to the source.  The type
             of the link is determined by the _l_i_n_k_f_l_a_g_s argument.  Valid
             _l_i_n_k_f_l_a_g_s are: _a (absolute), _r (relative), _h (hard), _s (sym-
             bolic), _m (mixed).  Absolute and relative have effect only for
             symbolic links.  Mixed links are hard links for files on the same
             filesystem, symbolic otherwise.

     --MM _m_e_t_a_l_o_g
             Write the metadata associated with each item installed to _m_e_t_a_l_o_g
             in an mtree(8) ``full path'' specification line.  The metadata
             includes: the file name and file type, and depending upon other
             options, the owner, group, file flags, modification time, and
             tags.

     --mm _m_o_d_e
             Specify an alternative mode.  The default mode is set to rwxr-xr-
             x (0755).  The specified mode may be either an octal or symbolic
             value; see chmod(1) for a description of possible mode values.

     --NN _d_b_d_i_r
             Use the user database text file _m_a_s_t_e_r_._p_a_s_s_w_d and group database
             text file _g_r_o_u_p from _d_b_d_i_r, rather than using the results from
             the system's getpwnam(3) and getgrnam(3) (and related) library
             calls.

     --oo _o_w_n_e_r
             Specify an owner.

     --pp      Preserve the source files access and modification times.

     --rr      Install to a temporary file and then rename the file to its final
             destination name.  This can be used for precious files, to avoid
             truncation of the original when error conditions (filesystem full
             etc.) occur.

     --ss      iinnssttaallll exec's the command strip(1) to strip binaries so that
             install can be portable over a large number of systems and binary
             types.  If the environment variable STRIP is set, it is used as
             the strip(1) program.

     --SS _s_t_r_i_p_f_l_a_g_s
             iinnssttaallll passes _s_t_r_i_p_f_l_a_g_s as option arguments to strip(1).  When
             --SS is used, strip(1) is invoked via the sh(1) shell, allowing a
             single --SS argument be to specified to iinnssttaallll which the shell can
             then tokenize.  Normally, iinnssttaallll invokes strip(1) directly.
             This flag implies --ss.

     --TT _t_a_g_s
             Specify the mtree(8) tags to write out for the file when using --MM
             _m_e_t_a_l_o_g.

     --UU      Indicate that install is running unprivileged, and that it should
             not try to change the owner, the group, or the file flags of the
             destination.  The information that would have been updated can be
             stored in a log file with --MM _m_e_t_a_l_o_g.

     By default, iinnssttaallll preserves all file flags, with the exception of the
     ``nodump'' flag.

     The iinnssttaallll utility attempts to prevent copying a file onto itself.

     Installing _/_d_e_v_/_n_u_l_l creates an empty file.

EEXXIITT SSTTAATTUUSS
     The iinnssttaallll utility exits 0 on success, and >0 if an error occurs.

EENNVVIIRROONNMMEENNTT
     STRIP       The program used to strip installed binaries when the --ss
                 option is used.  If unspecified, _/_u_s_r_/_b_i_n_/_s_t_r_i_p is used.

SSEEEE AALLSSOO
     chflags(1), chgrp(1), chmod(1), cp(1), mv(1), strip(1), chown(8),
     mtree(8)

HHIISSTTOORRYY
     The iinnssttaallll utility appeared in 4.2BSD.

NetBSD 4.0                     January 29, 2003                     NetBSD 4.0
