Solaris Live Upgrade

From Brandonhutchinson.com

(Difference between revisions)
Jump to: navigation, search
Line 117: Line 117:
installed.
installed.
The Solaris upgrade of the boot environment <Solaris_10> is partially complete.
The Solaris upgrade of the boot environment <Solaris_10> is partially complete.
 +
 +
=== Activate the Alternate Boot Environment ===
 +
 +
# '''luactivate Solaris_10'''
 +
WARNING: <1> packages failed to install properly on boot environment <Solaris_10>.
 +
INFORMATION: </var/sadm/system/data/upgrade_failed_pkgadds> on boot
 +
environment <Solaris_10> contains a list of packages that failed to
 +
upgrade or install properly. Review the file before you reboot the system
 +
to determine if any additional system maintenance is required.
 +
 +
 +
**********************************************************************
 +
 +
The target boot environment has been activated. It will be used when you
 +
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You
 +
MUST USE either the init or the shutdown command when you reboot. If you
 +
do not use either init or shutdown, the system will not boot using the
 +
target BE.
 +
 +
**********************************************************************
 +
 +
In case of a failure while booting to the target BE, the following process
 +
needs to be followed to fallback to the currently working boot environment:
 +
 +
1. Enter the PROM monitor (ok prompt).
 +
 +
2. Change the boot device back to the original boot environment by typing:
 +
 +
setenv boot-device
 +
/pci@9,600000/SUNW,qlc@2/fp@0,0/disk@w21000004cf99d73e,0:a
 +
 +
3. Boot to the original boot environment by typing:
 +
 +
boot
 +
 +
**********************************************************************
 +
 +
Activation of boot environment <Solaris_10> successful.
 +
 +
=== Reboot into Solaris 10 ===
 +
 +
# '''shutdown -i6 -g0 -y'''
 +
...
 +
Live Upgrade: Deactivating current boot environment <Solaris_8>.
 +
Live Upgrade: Executing Stop procedures for boot environment <Solaris_8>.
 +
Live Upgrade: Current boot environment is <Solaris_8>.
 +
Live Upgrade: New boot environment will be <Solaris_10>.
 +
Live Upgrade: Activating boot environment <Solaris_10>.
 +
Live Upgrade: The boot device for boot environment <Solaris_10> is
 +
</dev/dsk/c1t1d0s0>.
 +
Live Upgrade: Activation of boot environment <Solaris_10> completed.

Revision as of 21:43, 25 November 2008

Contents

Overview

In this example, I use Solaris Live Upgrade to upgrade a Solaris 8 2/02 SPARC system to the original Solaris 10 SPARC release.

  • Note that Live Upgrade for Solaris 8 to Solaris 10 Update 5 or later is not supported[1].
  • I ran into problems upgrading to Solaris 10 Update 4, but it may have been PEBCAK.

For this example:

  • c1t0d0 is the Solaris 8 disk.
  • c1t1d0 is unused, and has an identical geometry as c1t0d0. It will be used for the Solaris 10 boot environment.
  • I use the same partition sizes and file system locations on the new boot environment.

Duplicate partition table

First, I duplicate the partition table from the source disk to the target.

# prtvtoc /dev/rdsk/c1t0d0s2 | fmthard -s - /dev/rdsk/c1t1d0s2

Create Alternate Boot Environment

Next, I create the Alternate Boot Environment.

# lucreate -c Solaris_8 -m /:/dev/dsk/c1t1d0s0:ufs -m /usr:/dev/dsk/c1t1d0s4:ufs -m /var:/dev/dsk/c1t1d0s3:ufs -m /nsr:/dev/dsk/c1t1d0s7:ufs -m  /opt:/dev/dsk/c1t1d0s5:ufs -m -:/dev/dsk/c1t1d0s1:swap -n Solaris_10
Discovering physical storage devices
Discovering logical storage devices
Cross referencing storage devices with boot environment configurations
Determining types of file systems supported
Validating file system requests
Preparing logical storage devices
Preparing physical storage devices
Configuring physical storage devices
Configuring logical storage devices
Analyzing system configuration.
Comparing source boot environment <Solaris_8> file systems with the file 
system(s) you specified for the new boot environment. Determining which 
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Searching /dev for possible boot environment filesystem devices

Updating system configuration files.
Creating configuration for boot environment <Solaris_10>.
Creating boot environment <Solaris_10>.
Creating file systems on boot environment <Solaris_10>.
Creating <ufs> file system for </> on </dev/dsk/c1t1d0s0>.
Creating <ufs> file system for </nsr> on </dev/dsk/c1t1d0s7>.
Creating <ufs> file system for </opt> on </dev/dsk/c1t1d0s5>.
Creating <ufs> file system for </usr> on </dev/dsk/c1t1d0s4>.
Creating <ufs> file system for </var> on </dev/dsk/c1t1d0s3>.
Mounting file systems for boot environment <Solaris_10>.
Calculating required sizes of file systems for boot environment <Solaris_10>.
Populating file systems on boot environment <Solaris_10>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Populating contents of mount point </nsr>.
Populating contents of mount point </opt>.
Populating contents of mount point </usr>.
Populating contents of mount point </var>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <Solaris_10>.
Creating compare database for file system </var>.
Creating compare database for file system </usr>.
Creating compare database for file system </opt>.
Creating compare database for file system </nsr>.
Creating compare database for file system </>.
Updating compare databases on boot environment <Solaris_10>.
Making boot environment <Solaris_10> bootable.
Population of boot environment <Solaris_10> successful.
Creation of boot environment <Solaris_10> successful.
# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
Solaris_8                  yes      yes    yes       no     -         
Solaris_10                 yes      no     no        yes    -   

Upgrade the Alternate Boot Environment

I have the Solaris 10 SPARC DVD loopback-mounted in /tmp/mnt.

# luupgrade -u -n Solaris_10 -s /tmp/mnt
Validating the contents of the media </tmp/mnt>.
The media is a standard Solaris media.
The media contains an operating system upgrade image.
The media contains <Solaris> version <10>.
Constructing upgrade profile to use.
Locating the operating system upgrade program.
Checking for existence of previously scheduled Live Upgrade requests.
Creating upgrade profile for BE <Solaris_10>.
Determining packages to install or upgrade for BE <Solaris_10>.
Performing the operating system upgrade of the BE <Solaris_10>.
CAUTION: Interrupting this process may leave the boot environment unstable 
or unbootable.
Upgrading Solaris: 100% completed
Installation of the packages from this the media is complete.
Updating package information on boot environment <Solaris_10>.
Package information successfully updated on boot environment <Solaris_10>.
Adding operating system patches to the BE <Solaris_10>.
The operating system patch installation is complete.
INFORMATION: The file </var/sadm/system/logs/upgrade_log> on boot 
environment <Solaris_10> contains a log of the upgrade operation.
INFORMATION: The file </var/sadm/system/data/upgrade_cleanup> on boot 
environment <Solaris_10> contains a log of cleanup operations required.
WARNING: <1> packages failed to install properly on boot environment <Solaris_10>.
INFORMATION: The file </var/sadm/system/data/upgrade_failed_pkgadds> on 
boot environment <Solaris_10> contains a list of packages that failed to 
upgrade or install properly.
INFORMATION: Review the files listed above. Remember that all of the files 
are located on boot environment <Solaris_10>. Before you activate boot 
environment <Solaris_10>, determine if any additional system maintenance 
is required or if additional media of the software distribution must be 
installed.
The Solaris upgrade of the boot environment <Solaris_10> is partially complete.

Activate the Alternate Boot Environment

# luactivate Solaris_10
WARNING: <1> packages failed to install properly on boot environment <Solaris_10>.
INFORMATION: </var/sadm/system/data/upgrade_failed_pkgadds> on boot 
environment <Solaris_10> contains a list of packages that failed to 
upgrade or install properly. Review the file before you reboot the system 
to determine if any additional system maintenance is required.


**********************************************************************

The target boot environment has been activated. It will be used when you 
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You 
MUST USE either the init or the shutdown command when you reboot. If you 
do not use either init or shutdown, the system will not boot using the 
target BE.

**********************************************************************

In case of a failure while booting to the target BE, the following process 
needs to be followed to fallback to the currently working boot environment:

1. Enter the PROM monitor (ok prompt).

2. Change the boot device back to the original boot environment by typing:

    setenv boot-device 
/pci@9,600000/SUNW,qlc@2/fp@0,0/disk@w21000004cf99d73e,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

Activation of boot environment <Solaris_10> successful.

Reboot into Solaris 10

# shutdown -i6 -g0 -y
...
Live Upgrade: Deactivating current boot environment <Solaris_8>.
Live Upgrade: Executing Stop procedures for boot environment <Solaris_8>.
Live Upgrade: Current boot environment is <Solaris_8>.
Live Upgrade: New boot environment will be <Solaris_10>.
Live Upgrade: Activating boot environment <Solaris_10>.
Live Upgrade: The boot device for boot environment <Solaris_10> is 
</dev/dsk/c1t1d0s0>.
Live Upgrade: Activation of boot environment <Solaris_10> completed.
Personal tools