1 .\" " CDDL HEADER START
   2 .\" "
   3 .\" " The contents of this file are subject to the terms of the
   4 .\" " Common Development and Distribution License (the "License").
   5 .\" " You may not use this file except in compliance with the License.
   6 .\" "
   7 .\" " You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   8 .\" " or http://www.opensolaris.org/os/licensing.
   9 .\" " See the License for the specific language governing permissions
  10 .\" " and limitations under the License.
  11 .\" "
  12 .\" " When distributing Covered Code, include this CDDL HEADER in each
  13 .\" " file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  14 .\" " If applicable, add the following below this CDDL HEADER, with the
  15 .\" " fields enclosed by brackets "[]" replaced with your own identifying
  16 .\" " information: Portions Copyright [yyyy] [name of copyright owner]
  17 .\" "
  18 .\" " CDDL HEADER END
  19 .\" "
  20 .\" "Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
  21 .\" "Copyright 2010, Richard Lowe
  22 .\" "
  23 .TH onu 1ONBLD "28 August 2010"
  24 .SH NAME
  25 .I onu
  26 \- OS/Net Update
  27 .SH SYNOPSIS
  28 \fBonu [opts] [-s <beName>] -t <beName>\fP
  29 .br
  30 \fBonu [opts] -r\fP
  31 .LP
  32 .SH DESCRIPTION
  33 .IX "OS-Net build tools" "onu" "" "\fBonu\fP"
  34 .LP
  35 .I onu 
  36 is a replacement for
  37 .I bfu
  38 used to update a system with the latest set of IPS packages for the ON
  39 (OS/Net) consolidation of Solaris, using beadm(1M) to create a new Boot
  40 Environment (BE) and pkg(1) to update the image.
  41 .SH OPTIONS
  42 .LP
  43 The following global options are supported:
  44 .TP 4
  45 .B \-c <consolidation>
  46 Specifies the consolidation being installed via 
  47 .IR onu ,
  48 used to locate the publisher from which that consolidation is currently
  49 installed.  This is almost always "osnet".
  50 .TP 4
  51 .B \-d <dir>
  52 Specifies that <dir> contains the repo.redist sub-directory;
  53 .I onu
  54 will run a depot using this packaging repository.
  55 Note that -d ignores -u and -U as well
  56 as the environment variables used by those options.
  57 .TP 4
  58 .B \-u <URI>
  59 Specifies that <URI> should be used as the origin URI for the publisher
  60 packaging repository.  See \fBONURI\fP below for default values.
  61 .TP 4
  62 .B \-U <publisher>
  63 Specifies that <publisher> should be used as the publisher name for
  64 the packaging repository.  See \fBONPUB\fP below for default values.
  65 .TP 4
  66 .B \-v
  67 Verbose mode.
  68 .LP
  69 The first form of onu creates a new BE and then updates it, and takes
  70 the following options:
  71 .TP 4
  72 .B \-s <beName>
  73 Specifies that <beName> should be used as the source Boot Environment to
  74 clone.  The default is the active BE.
  75 .TP 4
  76 .B \-t <beName>
  77 Specifies the target BE name.  This argument is required; there
  78 is no default value.
  79 .TP 4
  80 .B \-Z
  81 Do not update any installed zones.
  82 .LP
  83 The second form of onu takes the following option:
  84 .TP 4
  85 .B \-r
  86 In the current BE configure the requested publisher appropriately, without
  87 updating.
  88 .SH EXIT STATUS
  89 .LP
  90 The following exit values are returned:
  91 .TP 4
  92 .B 0
  93 The command completed successfully.
  94 No errors or warnings were reported.
  95 .LP
  96 .TP 4
  97 .B 1
  98 Incorrect usage.
  99 .LP
 100 .TP 4
 101 .B 2
 102 One of the commands used by the script failed.
 103 .SH NOTES
 104 .LP
 105 Former users of bfu should note the following ways in which onu behaves
 106 differently from bfu.  First, as noted above, onu creates a new BE, rather
 107 than updating an existing BE in-place.  Second, onu will not install packages
 108 that are older than what is already installed in the source BE.  Third,
 109 conflicts in system configuration files are automatically resolved according
 110 to the files' "preserve" attribute, as described in pkg(5).
 111 .LP
 112 If the
 113 .B -d
 114 option is given to specify a repository directory, the new
 115 publishers will not be available in the new BE. This can prevent correct
 116 zone installs or cause issues with installing additional packages
 117 sourced from the ON repositories. In both cases, the \fB-r\fR option
 118 can be used in the new BE to re-enable the publishers. See
 119 \fBEXAMPLES\fR.
 120 .LP
 121 Use of
 122 .I onu
 123 will prevent use of zone attach for ipkg-brand zones in the new BE,
 124 since the
 125 .B entire
 126 incorporation is removed.
 127 .LP
 128 By default,
 129 .I onu
 130 will attempt to update any ipkg-brand installed zones on the system; the
 131 .B -Z
 132 option may be used to disable this behavior.
 133 .SH EXAMPLES
 134 .LP
 135 \fBExample 1\fR Installing latest ON nightly build
 136 .LP
 137 .SP
 138 .IN +2
 139 .NF
 140 # onu -t new-nightly-be
 141 .FI
 142 .IN -2
 143 .SP
 144 .LP
 145 \fBExample 2\fR Installing an ON build from a directory
 146 .LP
 147 .SP
 148 .IN +2
 149 .NF
 150 # onu -d /path/to/my/ws/packages/`uname -p`/nightly -t new-nightly-be
 151 .FI
 152 .IN -2
 153 .SP
 154 .LP
 155 \fBExample 3\fR Installing additional packages in the new BE
 156 .LP
 157 .SP
 158 .IN +2
 159 .NF
 160 # onu -d /path/to/my/ws/packages/`uname -p`/nightly -t new-nightly-be
 161 .br
 162 # reboot
 163 .br
 164 # onu -r -d /path/to/my/ws/packages/`uname -p`/nightly
 165 .br
 166 # pkg install netcat
 167 .br
 168 #
 169 .FI
 170 .IN -2
 171 .SP
 172 .SH ENVIRONMENT
 173 .LP
 174 ONURI
 175 .IP
 176 If the -u option is not provided, and this variable is set, it will be used
 177 as the origin URI for the publisher packaging repository.  If -u is not
 178 provided and this variable is not set, http://ipkg.sfbay/on-nightly will
 179 be used.
 180 .LP
 181 ONPUB
 182 .IP
 183 If the -U option is not provided, and this variable is set, it will be
 184 used as the publisher name for the packaging repository.  If -U is not
 185 provided and this variable is not set, on-nightly will be used.
 186 .LP
 187 .SH SEE ALSO
 188 .BR beadm "(1M), "
 189 .BR pkg "(1), "
 190 .BR pkg "(5) "