


Install(1)                User Commands                Install(1)



NAME
     Install - install a kernel from an OS/Net workspace

SYNOPSIS
     Install [ -w workspace ] [ -s source dir ]
             [ -k kernel arch ] [ -G glom name ]
             [ -n | -t|T target ] [ -u|m|a ] [ -v|V|q ] [ -c|p ]
             [ -l library file ] [ -L ] [ -D library dir ]
             [ -d temp dir ] [ -x|X ] [ -h ] [ module ... ]

     or

     Install -R [ options ]

DESCRIPTION
     Install is a utility to install a SunOS 5.x kernel.  Install
     gathers kernel binaries from the specified workspace for the
     specified kernel architecture (e.g. sun4m) into a  tar  file
     suitable  for  extraction  in  /.   With no options, Install
     assumes the  current  workspace  ($CODEMGR_WS),  infers  the
     karch  from the current working directory (e.g. if you're in
     usr/src/uts/sun4m, it assumes that you want a sun4m kernel),
     and    places    the    resulting   kernel   tar   file   in
     /tmp/Install.username/Install.karch.tar.

OPTIONS
     -w workspace        Install the kernel built in  the  speci-
                         fied workspace.  The workspace must con-
                         tain  already-built  kernel  binaries  -
                         Install  will  not  automatically invoke
                         make(1).   If  -w  is   not   specified,
                         Install  uses  the current workspace (as
                         indicated by $CODEMGR_WS).  If there  is
                         no  current workspace, Install checks to
                         see if you are in an appropriate  source
                         directory,   e.g.   uts/sun4m;   if  so,
                         Install takes files from there.   Other-
                         wise,  Install  looks  for  files  under
                         $SRC/uts.

     -s source dir       Where to get files [default: $SRC/uts].

     -k kernel arch      The type of  kernel  to  install.   This
                         option  is  required  unless  you invoke
                         Install from  a  karch  directory,  e.g.
                         $SRC/uts/sun4z,  in  which  case Install
                         assumes you want a sun4z kernel.

     -G glomname         Gloms all kernel binaries together  into
                         one directory, /platform/karch/glomname.
                         You can then boot this kernel with "boot
                         glomname/unix" (no leading slash).  This



SunOS 5.5            Last change: 1 May 1996                    1






Install(1)                User Commands                Install(1)



                         is useful for development  work  because
                         the glommed kernel doesn't overwrite the
                         normal kernel,  and  it  allows  you  to
                         install  multiple  test  kernels  on the
                         same system.

     -n                  No target; just create the tar  file  in
                         /tmp/Install.username/Install.karch.tar
                         [default].

     -t target           Extract the kernel tar  file  on  target
                         (machine:/dir). /dir is typically /.

     -T target           Copy  the  kernel  tar  file  to  target
                         (machine:/dir).  /dir is typically /tmp.
                         This creates the  file  /dir/Install.tar
                         on  machine.  To finish the install, log
                         on to machine as root, and type ``cd  /;
                         tar xvf /dir/Install.tar''.

     -u                  Install unix only.

     -m                  Install modules only.

     -a                  Install unix and all modules [default].

     -v                  Verbose mode [default].

     -V                  REALLY verbose mode.  Useful mainly  for
                         debugging.

     -q                  Quiet mode.   Only  fatal  messages  are
                         printed.

     -c                  Clean up.  After a  successful  install,
                         delete     the    files    created    in
                         /tmp/Install.username.   This   is   the
                         default  behavior  if a target is speci-
                         fied with -t or -T.

     -p                  Preserve  temp  files.   This   is   the
                         default   behavior  when  no  target  is
                         specified (-n).

     -L                  Add a  kernel  to  your  library.   This
                         allows  you  to build a personal collec-
                         tion of installable kernels from various
                         workspaces  and  for  various  architec-
                         tures.   When  you  type  ``Install   -w
                         /ws/ws_name   -k   karch  -L'',  Install
                         creates    a     tar     file     called
                         ws_name.arch.tar    in    your   library



SunOS 5.5            Last change: 1 May 1996                    2






Install(1)                User Commands                Install(1)



                         directory (~/LibInstall by default).

     -l library file     Installs the kernel contained in library
                         file.  You may omit the ``.tar'' suffix.
                         For example, ``Install -l my_ws.sun4m -t
                         machine:/'' installs a kernel you previ-
                         ously built with -L (from sun4m files in
                         my_ws) on machine:/.  This is equivalent
                         to typing ``rsh machine '(cd /; tar  xvf
                         -)' <~/LibInstall/my_ws.sun4m.tar'', but
                         it's easier to remember.

     -D lib directory    Specifies    the    library    directory
                         [default: $HOME/LibInstall].

     -d temp directory   Specifies where  Install  should  create
                         its       temp      files      [default:
                         /tmp/Install.username].  This is  useful
                         if   you  have  limited  space  in  /tmp
                         (Install needs about 4MB).   The  suffix
                         "Install.username" is always appended.

     -x                  Include various  auxiliary  files  along
                         with  the  kernel:  /etc/driver_aliases,
                         /etc/minor_perm,    /etc/name_to_sysnum,
                         /etc/name_to_major.

     -X                  The opposite of -x:  do not include aux-
                         iliary files [default].

     -h                  Help.   Prints  a   brief   summary   of
                         Install's options.

     -R                  Recover from a failed Install.  This  is
                         not required, it's just faster than res-
                         tarting.   A  typical  scenario  is  for
                         Install  to run smoothly right up to the
                         very end, but then die with  "Permission
                         denied"  when it tries to rsh/rcp to the
                         target machine.  At this point, you  log
                         on  to  the  target  machine, diddle the
                         permissions, log off, and type ``Install
                         -R''.   Install  will only have to retry
                         the rsh/rcp, rather than rebuild the tar
                         file from scratch.

     If you are in  a  directory  like  $SRC/uts/sun4z  when  you
     invoke  Install,  it  will  infer that you want to install a
     sun4z kernel from the current workspace.

     If you supply a list of modules, it overrides any of  the  -
     uma  options.   You only need to specify the basename of the



SunOS 5.5            Last change: 1 May 1996                    3






Install(1)                User Commands                Install(1)



     module(s), e.g. ``Install ufs nfs le''.  ``Install unix'' is
     equivalent  to  ``Install  -u'',  and ``Install modules'' is
     equivalent to ``Install -m''.

     You can customize Install by creating a .Installrc  file  in
     your home directory.  .Installrc should consist of a list of
     command-line-style options, e.g:

          -w /ws/foo
          -t labmachine:/mnt -pv

     Install processes default  options  first,  then  .Installrc
     options,  then  command-line  options.   In the case of con-
     flicting options (e.g. -uma), the last one wins.

ENVIRONMENT
     You can set the following variables in your environment:

     INSTALL_RC [default: $HOME/.Installrc]

          file containing default options for Install

     INSTALL_STATE [default: $HOME/.Install.state]

          where Install keeps its state information

     INSTALL_DIR [default: /tmp/Install.username]

          where Install does its work.  This can be overridden on
          the command line with -d.

     INSTALL_LIB [default: $HOME/LibInstall]

          where Install gets/puts library  files.   This  can  be
          overridden on the command line with -D.

     INSTALL_CP [default: cp -p]

          the command to copy files locally

     INSTALL_RCP [default: rcp -p]

          the command to copy files remotely












SunOS 5.5            Last change: 1 May 1996                    4






Install(1)                User Commands                Install(1)



EXAMPLES
     Install -w /ws/blort -k i86pc -t machine:/

          installs the i86pc kernel built in workspace  /ws/blort
          on machine:/

     Install -w /ws/blort -k i86pc -T machine:/tmp
     rsh machine -l root "cd /; tar xvf /tmp/Install.tar"

          is an equivalent way to do the previous example

     cd $SRC/uts/sun4u
     Install

          makes a tar file containing a sun4u kernel, and  places
          it in /tmp/Install.username/Install.sun4u.tar.

     Install -k sun4m -w /ws/xyz -t mpbox:/ ufs

          installs a new sun4m ufs module from workspace  /ws/xyz
          on mpbox:/

FILES
     $HOME/.Installrc, $HOME/.Install.state

SEE ALSO
     tar(1), rsh(1), rcp(1)

BUGS
     tar(1) and rsh(1)  do  not  have  particularly  useful  exit
     codes.   To compensate, Install feeds stderr through grep -v
     and throws away error messages which it considers  harmless.
     If there's anything left, Install assumes it is fatal.  It's
     a hack, but it works.

     Please report any bugs to bonwick@Eng.



















SunOS 5.5            Last change: 1 May 1996                    5



