Upgrading from OpenSolaris 2009.06 to Solaris 11 Express 2010.11

In this entry I document my experience of upgrading from OpenSolaris 2009.06 to Solaris 11 Express 2010.11. I selected to include lots of output, in case you want to compare your experience to mine.

Step 1: Read the Release Notes!

We done our best to document the known issues in the release notes and I'll touch on the more common ones here (at least the ones that affected me). The steps for upgrading are also included in the release notes, but my goal is to provide a more thorough set up steps here.

Step 2: Create a New Boot Environment.

Yes, the image-update process creates a new boot environment, but for big updates like this I like to also create a "trailing" boot environment. My last boot environment dates back to September. If for some reason I need to revert back, I want to know I'm reverting back to exactly how things are as of today.

bleonard@opensolaris:~$ pfexec beadm create opensolaris-november_17_2010

Step 3: Remove "Problematic" Packages

Some packages, such as PostgreSQL, have been removed from Solaris 11 Express. If the image update finds these problematic packages installed, it simply assumes you want to continue using them and terminates the update. You can read more about this here and here. The release notes contain a complete list of the features removed in the current release. Also note the comment about removing any packages you may have installed from the contrib repository.

From the note above:

..PostgreSQL Versions 8.2, 8.3, and 8.4 have been removed.

As amp-dev depends on SUNWphp52-pgsql (a PHP PostgreSQL library) which depends on PostgreSQL, the package system is unable to move your system forward. It assumes you prefer to keep postgre, etc. working instead of updating it to a point where software stops working.

You'll need to remove amp-dev, all of the \*php\* and postgre packages.

I believe that should allow you to upgrade (assuming there isn't some other package in the way).

I'm going to start by removing any packages I've installed from the webstack repository:

bleonard@opensolaris:~$ pkg list -s | grep '(webstack)'
drupal (webstack)              Drupal is a content management system. See project web site at http://drupal.org/
drupal-demo (webstack)         This package provides a quick start for setting up drupal on localhost. While not suitable for production setup, it is handy for setting up a local instance for testing, evaluation or demonstrations.

bleonard@opensolaris:~$ pfexec pkg uninstall -r drupal
PHASE                                        ACTIONS
Removal Phase                                366/599 
Warning - directory etc/drupal/default not empty - contents preserved in /var/pkg/lost+found/etc/drupal/default-20101117T151647Z
Removal Phase                                599/599 
PHASE                                          ITEMS
Reading Existing Index                           8/8 
Indexing Packages                                2/2
 

I might as well remove the webstack publisher at this time too:

bleonard@opensolaris:~$ pfexec pkg unset-publisher webstack

In the note above, Shawn recommends deleting all of the \*php\* packages, however, this isn't really necessary (and with all the associated dependencies, I'm not sure you'd have any packages left). I'm going to simply remove PostgreSQL and its 2 dependent packages, which can be identified as follows (the same two Shawn lists in the note above):

bleonard@opensolaris:~$ pkg uninstall -rnv SUNWpostgr-83-libs 
Creating Plan - Before evaluation:           
UNEVALUATED:
-pkg:/SUNWpostgr-83-libs@8.3.7,5.11-0.111:20090508T163014Z

After evaluation:
pkg:/amp-dev@0.5.11,5.11-0.111:20090508T164640Z -> None
pkg:/SUNWphp52-pgsql@5.2.9,5.11-0.111:20090508T162718Z -> None
pkg:/SUNWpostgr-83-libs@8.3.7,5.11-0.111:20090508T163014Z -> None
Actuators:

Now running the uninstall one more time with feeling:

bleonard@opensolaris:~$ pfexec pkg uninstall -rv SUNWpostgr-83-libs 
Creating Plan - Before evaluation:           
UNEVALUATED:
-pkg:/SUNWpostgr-83-libs@8.3.7,5.11-0.111:20090508T163014Z

After evaluation:
pkg:/amp-dev@0.5.11,5.11-0.111:20090508T164640Z -> None
pkg:/SUNWphp52-pgsql@5.2.9,5.11-0.111:20090508T162718Z -> None
pkg:/SUNWpostgr-83-libs@8.3.7,5.11-0.111:20090508T163014Z -> None
Actuators:

PHASE                                        ACTIONS
Removal Phase                                333/333 
PHASE                                          ITEMS
Reading Existing Index                           8/8 
Indexing Packages                                3/3

For good measure, I'm also going to remove the packages associated with the now decommissioned Source Juicer.
bleonard@opensolaris:~$ pkg list -s | grep jucr
conky (jucr.opensolaris.org)   Light-weight system monitor for X
bleonard@opensolaris:~$ pfexec pkg uninstall conky
PHASE                                        ACTIONS
Removal Phase                                  30/30 
PHASE                                          ITEMS
Reading Existing Index                           8/8 
Indexing Packages                                1/1
bleonard@opensolaris:~$ pfexec pkg unset-publisher jucr.opensolaris.org

Step 4: Update the OpenSolaris Image

The upgrade from OpenSolaris 2009.06 (build snv_111b) to Solaris 11 Express 2010.11 (snv_151a) requires an intermediate stop along to way at OpenSolaris 2010.05 (build snv_134b), which was never officially released (until now).

The update process is a bit noisier than usual, but all warnings can be ignored:

bleonard@opensolaris:~$ pfexec pkg image-update --be-name=opensolaris-b134 
DOWNLOAD                                    PKGS       FILES     XFER (MB)
Completed                                2085/2085 74286/74286 1356.88/1356.88  56.88 88 

PHASE                                        ACTIONS
Removal Phase                            20384/30296 
Warning - directory usr/share/gdm/applications not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/share/gdm/applications-20101117T162536Z
Removal Phase                            21274/30296 
Warning - directory usr/lib/python2.4/vendor-packages/pkg not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/lib/python2.4/vendor-packages/pkg-20101117T162536Z

Warning - directory usr/lib/python2.4/vendor-packages/osol_install/distro_const not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/lib/python2.4/vendor-packages/osol_install/distro_const-20101117T162536Z
Removal Phase                            22132/30296 
Warning - directory usr/X11/lib/X11/fonts/misc not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/misc-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/encodings/large not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/encodings/large-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/encodings not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/encodings-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/Type1 not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/Type1-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType/wqy not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType/wqy-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType/unfonts not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType/unfonts-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType/thai-scalable not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType/thai-scalable-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType/ipafont not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType/ipafont-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType/indic-fonts-core not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType/indic-fonts-core-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType/hangyang not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType/hangyang-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType/arphic not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType/arphic-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType/arabeyes not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType/arabeyes-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TrueType not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TrueType-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/TTF not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/TTF-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/75dpi not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/75dpi-20101117T162536Z

Warning - directory usr/X11/lib/X11/fonts/100dpi not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/usr/X11/lib/X11/fonts/100dpi-20101117T162536Z
Removal Phase                            22345/30296
Warning - directory etc/sma/snmp/mibs not empty - contents preserved in /tmp/tmpPvRzSx/var/pkg/lost+found/etc/sma/snmp/mibs-20101117T162536Z
Removal Phase                            30296/30296 
Install Phase                            107697/109140 The 'pcieb' driver shares the alias 'pciexclass,060400' with the 'pcie_pci'
driver, but the system cannot determine how the latter was delivered.
Its entry on line 2 in /etc/driver_aliases has been commented
out.  If this driver is no longer needed, it may be removed by booting
into the 'opensolaris-b134' boot environment and invoking 'rem_drv pcie_pci'
as well as removing line 2 from /etc/driver_aliases or, before
rebooting, mounting the 'opensolaris-b134' boot environment and running
'rem_drv -b <mountpoint> pcie_pci' and removing line 2 from
<mountpoint>/etc/driver_aliases.
The 'pcieb' driver shares the alias 'pciexclass,060401' with the 'pcie_pci'
driver, but the system cannot determine how the latter was delivered.
Its entry on line 3 in /etc/driver_aliases has been commented
out.  If this driver is no longer needed, it may be removed by booting
into the 'opensolaris-b134' boot environment and invoking 'rem_drv pcie_pci'
as well as removing line 3 from /etc/driver_aliases or, before
rebooting, mounting the 'opensolaris-b134' boot environment and running
'rem_drv -b <mountpoint> pcie_pci' and removing line 3 from
<mountpoint>/etc/driver_aliases.
Install Phase                            109140/109140 
Update Phase                             49275/49317 driver (aggr) upgrade (removal of policy'read_priv_set=net_rawaccess write_priv_set=net_rawaccess) failed: minor node spec required.
Update Phase                             49279/49317 driver (softmac) upgrade (removal of policy'read_priv_set=net_rawaccess write_priv_set=net_rawaccess) failed: minor node spec required.
Update Phase                             49280/49317 driver (vnic) upgrade (removal of policy'read_priv_set=net_rawaccess write_priv_set=net_rawaccess) failed: minor node spec required.
Update Phase                             49290/49317 driver (ibd) upgrade (removal of policy'read_priv_set=net_rawaccess write_priv_set=net_rawaccess) failed: minor node spec required.
Update Phase                             49302/49317 driver (dnet) upgrade (removal of policy'read_priv_set=net_rawaccess write_priv_set=net_rawaccess) failed: minor node spec required.
Update Phase                             49303/49317 driver (elxl) upgrade (removal of policy'read_priv_set=net_rawaccess write_priv_set=net_rawaccess) failed: minor node spec required.
Update Phase                             49304/49317 driver (iprb) upgrade (removal of policy'read_priv_set=net_rawaccess write_priv_set=net_rawaccess) failed: minor node spec required.
Update Phase                             49317/49317 
PHASE                                          ITEMS
Reading Existing Index                           8/8 
Indexing Packages                          2085/2085 
Optimizing Index...
PHASE                                          ITEMS
Indexing Packages                          2192/2192 

A clone of opensolaris-firefox-plugin-flash-10.1.82.76.0.111 exists and has been updated and activated.
On the next boot the Boot Environment opensolaris-b134 will be mounted on '/'.
Reboot when ready to switch to this updated BE.


---------------------------------------------------------------------------
NOTE: Please review release notes posted at:

http://docs.sun.com/doc/821-1479
---------------------------------------------------------------------------

Step 5: Reboot Into Build 134

bleonard@opensolaris:~$ reboot

Step 6:  Switch to the Oracle Repositories

The OpenSolaris repositories hosted at opensolaris.org have been replaced with Solaris repositories hosted at oracle.com. The --non-sticky option instructs Solaris to install packages from the new preferred repository (solaris) over the repository they were originally installed from (opensolaris.org):

bleonard@opensolaris:~$ pfexec pkg set-publisher --non-sticky opensolaris.org
bleonard@opensolaris:~$ pfexec pkg set-publisher --non-sticky extra

Set up the new preferred publisher:

bleonard@opensolaris:~$ pfexec pkg set-publisher -P -g http://pkg.oracle.com/solaris/release solaris

After which, your configured publishers should look as follows:

bleonard@opensolaris:~$ pkg publisher
PUBLISHER                             TYPE     STATUS   URI
solaris                  (preferred)  origin   online   http://pkg.oracle.com/solaris/release/
opensolaris.org          (non-sticky) origin   online   http://pkg.opensolaris.org/release/
extra                    (non-sticky) origin   online   https://pkg.sun.com/opensolaris/extra/

Step 7: Update the pkg Utility

The pkg utility needs to be updated before running image-update again. You can see this if you run the following:

bleonard@opensolaris:~$ pfexec pkg image-update -n 
WARNING: pkg(5) appears to be out of date, and should be updated before
running image-update.  Please update pkg(5) using 'pfexec pkg install
pkg:/package/pkg' and then retry the image-update.

bleonard@opensolaris:~$ pfexec pkg install pkg:/package/pkg
DOWNLOAD                                  PKGS       FILES    XFER (MB)
Completed                              916/916         1/1      0.0/0.0 

PHASE                                        ACTIONS
Removal Phase                              8202/8202 
Update Phase                                     2/2
PHASE                                          ITEMS
Reading Existing Index                           8/8 
Indexing Packages                            916/916

Step 8: View the Licenses (Optional)

In the next step we're going to update the image and accept the licenses associated with the various packages that will be installed as part of the update. You can first view the licenses for the packages as follows:

bleonard@opensolaris:~$ pfexec pkg image-update --licenses | more
------------------------------------------------------------
Package: pkg://solaris/gnome/trusted/locale/zh_tw@0.5.11,5.11-0.151.0.1:20101105T054732Z
License: SUNWtgnome-l10n-ui-zhTW.copyright

Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.



------------------------------------------------------------
Package: pkg://solaris/release/getting-started/locale/zh_tw@0.5.11,5.11-0.151.0.1:20101105T060221Z
License: SUNWgetting-started-l10n-zhTW.copyright

Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
Use is subject to license terms.

--------------------------------------------------------------------

PUBLIC DOCUMENTATION LICENSE 

Version 1.01 

1.0 DEFINITIONS. 

        1.1. "Commercial Use" means distribution or otherwise making the Documentation available to a thir
d party. 

        1.2. "Contributor" means a person or entity who creates or contributes to the creation of Modifica
tions. 

        1.3. "Documentation" means the Original Documentation or Modifications or the combination of the O
riginal Documentation and Modifications, in each case including portions thereof.

--More--

Step 9: Update to Solaris 11 Express 2010.11

This step requires accepting the OTN License Agreement for Oracle Solaris as part of the image-update process:

bleonard@opensolaris:~$ pfexec pkg image-update --accept --be-name Solaris_11_Express_2010.11
------------------------------------------------------------
Package: pkg://solaris/consolidation/osnet/osnet-incorporation@0.5.11,5.11-0.151.0.1:20101104T230646Z
License: usr/src/pkg/license_files/lic_OTN

Oracle Technology Network Developer License Agreement

Oracle Solaris, Oracle Solaris Cluster and Oracle Solaris Express

EXPORT CONTROLS
Selecting the "Accept License Agreement" button is a confirmation
of your agreement that you comply, now and during the trial term
(if applicable), with each of the following statements:

-You are not a citizen, national, or resident of, and are not under
control of, the government of Cuba, Iran, Sudan, North Korea, Syria,
or any country to which the United States has prohibited export.

-You will not download or otherwise export or re-export the Programs
(as defined below), directly or indirectly, to the above mentioned
countries or to citizens, nationals or residents of those countries.

-You are not listed on the United States Department of Treasury lists
of Specially Designated Nationals, Specially Designated Terrorists,
and Specially Designated Narcotic Traffickers, nor are you listed on
the United States Department of Commerce Table of Denial Orders.

You will not download or otherwise export or re-export the Programs,
directly or indirectly, to persons on the above mentioned lists.

You will not use the Programs for, and will not allow the Programs to
be used for, any purposes prohibited by United States law, including,
without limitation, for the development, design, manufacture or
production of nuclear, chemical or biological weapons of mass
destruction.

EXPORT RESTRICTIONS
You agree that U.S. export control laws and other applicable export
and import laws govern your use of the Programs, including technical
data; additional information can be found on Oracle's Global Trade
Compliance web site (http://www.oracle.com/products/export).

You agree that neither the Programs nor any direct product thereof
will be exported, directly, or indirectly, in violation of these
laws, or will be used for any purpose prohibited by these laws
including, without limitation, nuclear, chemical, or biological
weapons proliferation.

Oracle Employees: Under no circumstances are Oracle Employees
authorized to download software for the purpose of distributing it to
customers. Oracle products are available to employees for internal
use or demonstration purposes only. In keeping with Oracle's trade
compliance obligations under U.S. and applicable multilateral law,
failure to comply with this policy could result in disciplinary action
up to and including termination.

PLEASE READ THE FOLLOWING LICENSE AGREEMENT TERMS AND CONDITIONS
CAREFULLY BEFORE DOWNLOADING, INSTALLING OR USING THE PROGRAMS.
THESE TERMS AND CONDITIONS CONSTITUTE A LEGAL AGREEMENT BETWEEN YOU
AND ORACLE.

Oracle Technology Network Development License Agreement
"We," "us," and "our" refers to Oracle America, Inc., for and on
behalf of itself and its subsidiaries and affiliates under common
control. "You" and "your" refers to the individual or entity that
wishes to use the Programs. "Programs" refers to Oracle Solaris,
Oracle Solaris Cluster and/or Oracle Solaris Express that you download
from this site (including, any updates and/or additional software
packages that you may receive in the future from the product's
package repository) and related program documentation. "License"
refers to your right to use the Programs under the terms of this
agreement. This agreement is governed by California law, except
for that body of laws related to the conflict of laws. You agree to
submit to the exclusive jurisdiction of, and venue in, the courts of
San Francisco or Santa Clara counties in California in any dispute
arising out of or relating to this agreement.

In order to use the Programs, You must first agree to this License
Agreement by selecting the "Accept License Agreement" button below. If
You do not or cannot agree to this License Agreement, You are not
permitted to download or use the Programs.

LICENSE RIGHTS
Except for any included software package or file that is licensed to
you by Oracle under different license terms, we grant you a perpetual
(unless terminated as provided in this agreement), nonexclusive,
nontransferable, limited License to use the Programs only for the
purpose of developing, testing, prototyping and demonstrating your
applications, and not for any other purpose.

All rights not expressly granted above are hereby reserved.  If you
want to use the Programs for any purpose other than as permitted
under this agreement, including but not limited to distribution of the
Programs or any use of the Programs for your internal business purposes
(other than developing, testing, prototyping and demonstrating your
applications) or for any commercial production purposes, you must
obtain a valid license permitting such use. We may audit your use of
the Programs.   Program documentation, if available, may be accessed
online at http://otn.oracle.com/docs.

Third-Party Technology.  The Programs may contain or be distributed
with certain third-party technology. Oracle may provide certain notices
related to such third-party technology in the program documentation,
or in readme or notice files provided with the Programs.

Third party technology will be licensed to you either under the terms
of this agreement, or, if specified in the program documentation,
readme files or otherwise in writing, under separate license
terms ("Separate Terms") and not under the terms of this agreement
("Separately Licensed Third Party Technology"). Licensee's rights to
use such Separately Licensed Third Party Technology under the Separate
Terms are not restricted or modified in any way by this Agreement.

Information Collection and Registration
Configuration Data and Registration:  The Programs may communicate
configuration data to Oracle. You can register your version of
the Programs to capture this data for your use, or the data is
sent anonymously.  For information about what configuration data is
communicated and how to control this facility, refer to the release
notes or www.oracle.com/goto/solarisautoreg.

Ownership and Restrictions
We retain all ownership and intellectual property rights in the
Programs. The Programs may be installed on one computer only, and
used by one person in the hardware environment identified by us. You
may make one copy of the Programs for backup purposes.

You may not:
- use the Programs for your own internal business purposes (other than
developing, testing, prototyping and demonstrating your applications)
or for any commercial or production purposes;

- remove or modify any program markings or any notice of our
proprietary rights;

- make the Programs available in any manner to any third party;

- use the Programs to provide third-party training;

- assign this agreement or give or transfer the Programs or an interest
in them to another individual or entity;

- cause or permit reverse engineering (unless required by law for
interoperability), disassembly or decompilation of the Programs;

- disclose results of any benchmark test results related to the
Programs without our prior consent.

Export
You agree that U.S. export control laws and other applicable
export and import laws govern your use of the Programs,
including technical data; additional information can be
found on Oracle's Global Trade Compliance web site located at
http://www.oracle.com/products/export/index.html?content.html. You
agree that neither the Programs nor any direct product thereof will be
exported, directly, or indirectly, in violation of these laws, or will
be used for any purpose prohibited by these laws including, without
limitation, nuclear, chemical, or biological weapons proliferation.

Disclaimer of Warranty and Exclusive Remedies
THE PROGRAMS ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. WE
FURTHER DISCLAIM ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING
WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.

IN NO EVENT SHALL WE BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL,
PUNITIVE OR CONSEQUENTIAL DAMAGES, OR DAMAGES FOR LOSS OF PROFITS,
REVENUE, DATA OR DATA USE, INCURRED BY YOU OR ANY THIRD PARTY, WHETHER
IN AN ACTION IN CONTRACT OR TORT, EVEN IF WE HAVE BEEN ADVISED OF
THE POSSIBILITY OF SUCH DAMAGES. OUR ENTIRE LIABILITY FOR DAMAGES
HEREUNDER SHALL IN NO EVENT EXCEED ONE THOUSAND DOLLARS (U.S. $1,000).

Additional Trial Programs
We may include additional trial programs with your download of the
Programs licensed under this agreement. You will have 30 days from
the delivery date to evaluate these additional trial programs. Any
use of these trial programs after the 30-day trial period requires
you to obtain the applicable license.  Any additional trial programs
are provided "as is" and we do not provide technical support or any
warranties for these programs.

No Technical Support
Our technical support organization will not provide technical support,
phone support, or updates to you for the Programs licensed under
this agreement.

End of Agreement
You may terminate this agreement by destroying all copies of the
Programs. We have the right to terminate your right to use the Programs
if you fail to comply with any of the terms of this agreement, in
which case you shall destroy all copies of the Programs.

Relationship Between the Parties
The relationship between you and us is that of
licensee/licensor. Neither party will represent that it has any
authority to assume or create any obligation, express or implied,
on behalf of the other party, nor to represent the other party as
agent, employee, franchisee, or in any other capacity. Nothing in
this agreement shall be construed to limit either party's right to
independently develop or distribute software that is functionally
similar to the other party's products, so long as proprietary
information of the other party is not included in such software.

Open Source Software
"Open Source" software - software available without charge for
use, modification and distribution - is often licensed under terms
that require the user to make the user's modifications to the Open
Source software or any software that the user 'combines' with the
Open Source software freely available in source code form. If you use
Open Source software in conjunction with the Programs (or if you plan
on licensing your own application under an Open Source license), you
must ensure that your use does not: (i) create, or purport to create,
obligations with respect to the Oracle Programs; or (ii) grant,
or purport to grant, to any third party any rights to or immunities
under our intellectual property or proprietary rights in the Oracle
Programs.  For example, you may not develop a software program using
an Oracle program and an Open Source program where such use results
in a program file(s) that contains code from both the Oracle program
and the Open Source program (including without limitation libraries)
if the Open Source program is licensed under a license that requires
any "modifications" be made freely available. You also may not combine
the Oracle program with programs licensed under the GNU General Public
License ("GPL") in any manner that could cause, or could be interpreted
or asserted to cause, the Oracle program or any modifications thereto
to become subject to the terms of the GPL.

Entire Agreement
You agree that this agreement is the complete agreement for the
Programs and licenses, and this agreement supersedes all prior or
contemporaneous agreements or representations, including any and
all clickwrap, shrinkwrap or similar licenses.  If any term of this
agreement is found to be invalid or unenforceable, the remaining
provisions will remain effective.

Last updated: 08/12/10

Should you have any questions concerning this License Agreement,
or if you desire to contact Oracle for any reason, please write:

Oracle America, Inc.
500 Oracle Parkway,
Redwood City, CA 94065

Oracle may contact you to ask if you had a satisfactory experience
installing and using this OTN software download.



DOWNLOAD                                  PKGS       FILES    XFER (MB)
Completed                              1363/1363 60273/60273 1140.3/1140.3 

PHASE                                        ACTIONS
Removal Phase                            17325/30895 
Warning - directory usr/share/icons/Neutral_Plus_Inv not empty - contents preserved in /tmp/tmpYKlVZ9/var/pkg/lost+found/usr/share/icons/Neutral_Plus_Inv-20101117T222355Z
Removal Phase                            17331/30895
Warning - directory usr/share/gdm/themes not empty - contents preserved in /tmp/tmpYKlVZ9/var/pkg/lost+found/usr/share/gdm/themes-20101117T222355Z
Removal Phase                            30895/30895 
Install Phase                            36748/36748 
Update Phase                             53257/53257 
PHASE                                          ITEMS
Reading Existing Index                           8/8 
Indexing Packages                          1363/1363 
Indexing Packages                          1363/1363
Optimizing Index...
PHASE                                          ITEMS
Indexing Packages                          1420/1420 
pkg: unable to unmount /tmp/tmpYKlVZ9

---------------------------------------------------------------------------
NOTE: Please review release notes posted at:

http://docs.sun.com/doc/821-1479
---------------------------------------------------------------------------


Step 10: Reboot into Solaris 11 Express 2010.11

bleonard@opensolaris:~$ pfexec reboot

Step 11: Enjoy

Coincidence that the upgrade to Solaris 11 takes 11 steps?

Comments:

Hi,

What about the case when I actually want to keep the PostgreSQL install? The upgrade should be fully backwards compatible with OpenSolaris (that provided PostgreSQL). By this I mean that even though the PostgreSQL packages are no longer present in Solaris 11 Express, the upgrade should allow to keep the old packages and run the old PostgreSQL service.

Posted by mircea on November 19, 2010 at 01:51 AM GMT #

It seems I get an HTTP 403 from https://pkg.sun.com/opensolaris/extra/

Is that normal?

Posted by Matt Ingenthron on November 19, 2010 at 10:12 PM GMT #

@mircea

It was decided to force the removal of the contents of and any support for PostgreSQL 8.2, 8.3, and 8.4 packages.

As a result, to upgrade, they must be removed. If you want to use PostgreSQL, you will have to get your packages from somewhere else.

Posted by Shawn Walker on November 20, 2010 at 10:22 PM GMT #

@matt

Yes, it is normal that you can't view the extra repository using a web browser.

That's because it requires certificate-based authentication.

To access it via a web browser, you would need to take the certificates you retrieved from pkg.sun.com/register, place the key & cert in a pkcs12 format file, and then import that into your browser's certificate store.

Posted by Shawn Walker on November 20, 2010 at 10:23 PM GMT #

My install is snv-130 from pkg.opensolaris.org/dev/ which was listed as OSDev in my installer.
Here is the output of
#pkg publisher
PUBLISHER TYPE STATUS URI
solaris (preferred) origin online http://pkg.oracle.com/solaris/release/
opensolaris.org (non-sticky) origin online http://pkg.opensolaris.org/release/
OSDev (non-sticky) origin online http://pkg.opensolaris.org/dev/

whenever I try to perform an image-update I get the following:

Creating Plan -Planning for install failed:
Use -v option for more details
pkg: No solution was found to satisfy constraints

I do not have any of the "problematic" packages listed above.

Any ideas?

Posted by David Stanton on November 21, 2010 at 05:46 AM GMT #

My install is snv-130 from pkg.opensolaris.org/dev/ which was listed as OSDev in my installer.
Here is the output of
#pkg publisher
PUBLISHER TYPE STATUS URI
solaris (preferred) origin online http://pkg.oracle.com/solaris/release/
opensolaris.org (non-sticky) origin online http://pkg.opensolaris.org/release/
OSDev (non-sticky) origin online http://pkg.opensolaris.org/dev/

whenever I try to perform an image-update I get the following:

Creating Plan -Planning for install failed:
Use -v option for more details
pkg: No solution was found to satisfy constraints

I do not have any of the "problematic" packages listed above.

Any ideas?

Posted by David Stanton on November 21, 2010 at 06:06 AM GMT #

If one removes PostgreSQL, performs the upgrade to Solaris 11 Express, will reinstalling PostgreSQL from the source code work? Or has the kernel been changed to specifically stop the installation of PostgreSQL or other open-source databases?

Posted by David Kirkby on November 23, 2010 at 12:06 AM GMT #

@Matt

Here are some instructions on how to browse the extras repository: http://wikis.sun.com/display/OpenSolarisInfo200906/How+to+Browse+the+Support+and+Extra+Repositories

Posted by W Brian Leonard on November 29, 2010 at 08:04 AM GMT #

@David Stanton - have you already tried running image-update with -v?

@David Kirkby - no changes have been made to the kernel to specifically stop the installation of PostgreSQL or other open source databases.

Posted by W Brian Leonard on November 29, 2010 at 08:07 AM GMT #

Guys couple of things.

The upgrade from OpenSolaris to OpenSolaris went well but then to Solaris 11 Express failed until I removed my zones.

I see the zpool also needs upgrading so that's 12 steps :-)

It's been a long time between drinks lets hope we won't have to wait so long next time.

Posted by Trevor Pretty on December 05, 2010 at 02:29 PM GMT #

I love the 11 steps. You are as quirky as me.

It seems everything is working perfectly on my virtual images based on your instructions. I think you should be providing the technical writers so pointers on how to do good documentation. The default documentation is "lacking" to say the least.

Thanks for the great information.

Posted by John Yeary on December 17, 2010 at 08:06 PM GMT #

Hey John,

Good to hear from you. And I'm glad your updates went smoothly.

Posted by W Brian Leonard on December 20, 2010 at 06:23 AM GMT #

Well,
great tutorial. Great OS.

After booting to Solaris Express 11, can we remove OpenSolaris publishers from IPS list?

Regards.

Posted by Predrag Zecevic on December 31, 2010 at 01:18 AM GMT #

Predrag,

Yes, you can remove the OpenSolaris publishers. However, just be aware that certain software has yet to find its way over to the new Oracle publisher (see: http://blogs.sun.com/observatory/entry/left_behind ). You can always just add the OpenSolaris publisher again if you find you want/need something from that list.

Regards,
Brian

Posted by W Brian Leonard on January 02, 2011 at 03:24 PM GMT #

I really hope I'm not the last one on the shore now that the boat has sailed, but I have an opensolaris system that I wanted to upgrade but I'm getting errors to the effect that the opensolaris package respository is no longer functioning:

# pkg search anything
pkg: Some servers failed to respond appropriately:
http://pkg.opensolaris.org/release/ appears not to be a valid package depot.

This makes it a tad difficult to upgrade to Solaris Express 11 if I can't get a hold of the 134b packages. Is there any hope for me or this system?

Posted by Jim Leonard on October 07, 2011 at 12:38 PM GMT #

Hey Jim,
I just discovered this too. You want to switch to the openindiana.org repository and you should be able to go to 134. I am trying it out right now.

Of course, my system probably won't boot from 134 so I'll be going back to 126...

Posted by Jonathan Kalbfeld on October 11, 2011 at 02:22 AM GMT #

Post a Comment:
  • HTML Syntax: NOT allowed
About

The Observatory is a blog for users of Oracle Solaris. Tune in here for tips, tricks and more as we explore the Solaris operating system from Oracle.

Connect with Oracle Solaris:


Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
20
21
22
23
24
25
26
27
28
29
30
   
       
Today