Solaris 10 5/09 Installation Guide: Solaris Live Upgrade and Upgrade Planning

Example of Upgrading With Solaris Live Upgrade

In this example, a new boot environment is created by using the lucreate command on a system that is running the Solaris 9 release. The new boot environment is upgraded to the Solaris 10 5/09 release by using the luupgrade command. The upgraded boot environment is activated by using the luactivate command. An example of falling back to the original boot environment is also given.

Prepare to Use Solaris Live Upgrade

Before running Solaris Live Upgrade for the first time, you must install the latest Solaris Live Upgrade packages from installation media and install the patches listed in the SunSolve info doc 206844. Search for the info doc 206844 (formerly 72099) on the SunSolve web site.

The latest packages and patches ensure that you have all the latest bug fixes and new features in the release. Ensure that you install all the patches that are relevant to your system before proceeding to create a new boot environment.

The following steps describe the steps in the SunSolve info doc 206844.


Note –

This procedure assumes that the system is running Volume Manager. For detailed information about managing removable media with the Volume Manager, refer to System Administration Guide: Devices and File Systems.


  1. Become superuser or assume an equivalent role.

  2. From the SunSolve web site, follow the instructions in info doc 206844 to remove and add Solaris Live Upgrade packages.

    1. Remove existing Solaris Live Upgrade packages.

      The three Solaris Live Upgrade packages, SUNWluu, SUNWlur, and SUNWlucfg, comprise the software needed to upgrade or patch by using Solaris Live Upgrade. These packages include existing software, new features, and bug fixes. If you do not remove the existing packages and install the new packages on your system before using Solaris Live Upgrade, upgrading or patching to the target release fails. The SUMWlucfg package is new starting with the Solaris 10 8/07 release. If you are using Solaris Live Upgrade packages from a release previous to Solaris 10 8/07, you do not need to remove this package.


      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    2. Install the new Solaris Live Upgrade packages.

      You can install the packages by using the liveupgrade20 command that is on the installation DVD or CD or by using the pkgadd command. The liveupgrade20 command requires Java software. If your system does not have Java software installed, then you need to use the pkgadd command to install the packages. See the SunSolve info doc for more information.

      • If you are using the Solaris Operating System DVD, change directories and run the installer:

        • Change directories.


          # cd /cdrom/cdrom0/Solaris_10/Tools/Installers
          

          Note –

          For SPARC based systems, the path to the installer is different for releases previous to the Solaris 10 10/08 release:


          # cd /cdrom/cdrom0/s0/Solaris_10/Tools/Installers
          

        • Run the installer


          # ./liveupgrade20  -noconsole - nodisplay
          

          The -noconsole and -nodisplay options prevent the character user interface (CUI) from displaying.


          Note –

          The Solaris Live Upgrade CUI is no longer supported.


      • If you are using the Solaris Software – 2 CD, you can run the installer without changing the path.


        % ./installer
        
      • Verify that the packages have been installed successfully.


        # pkgchk -v SUNWlucfg SUNWlur SUNWluu
        
  3. Install the patches listed in info doc 206844.

    1. If you are storing the patches on a local disk, create a directory such as /var/tmp/lupatches.

    2. From the SunSolve web site, obtain the list of patches.

    3. Change to the patch directory as in this example.


      # cd /var/tmp/lupatches
      
    4. Install the patches.


      # patchadd -M  path-to-patchespatch-id  patch-id
      

      path-to-patches is the patch to the patch directory such as /var/tmp/lupatches. patch-id is the patch number or numbers. Separate multiple patch names with a space.


      Note –

      The patches need to be applied in the order specified in infodoc 206844.


    5. Reboot the system if necessary. Certain patches require a reboot to be effective.

      x86 only: Rebooting the system is required. Otherwise, Solaris Live Upgrade fails.


      # init 6
      

      You now have the packages and patches necessary for a successful creation of a new boot environment.

To Create a Boot Environment

The source boot environment is named c0t4d0s0 by using the -c option. Naming the source boot environment is required only when the first boot environment is created. For more information about naming using the -c option, see the description in “To Create a Boot Environment for the First Time” Step 2.

The new boot environment is named c0t15d0s0. The -A option creates a description that is associated with the boot environment name.

The root (/) file system is copied to the new boot environment. Also, a new swap slice is created rather than sharing the source boot environment's swap slice.


# lucreate -A 'BE_description' -c /dev/dsk/c0t4d0s0 -m /:/dev/dsk/c0t15d0s0:ufs\
-m -:/dev/dsk/c0t15d0s1:swap -n /dev/dsk/c0t15d0s0

To Upgrade the Inactive Boot Environment

The inactive boot environment is named c0t15d0s0. The operating system image to be used for the upgrade is taken from the network.


# luupgrade -n c0t15d0s0 -u -s /net/ins-svr/export/Solaris_10 \ 
combined.solaris_wos

To Check if Boot Environment Is Bootable

The lustatus command reports if the boot environment creation is complete. lustatus also shows if the boot environment is bootable.


# lustatus
boot environment   Is        Active  Active     Can	    Copy
Name               Complete  Now	 OnReboot   Delete	 Status
------------------------------------------------------------------------
c0t4d0s0           yes       yes      yes      no      -
c0t15d0s0          yes       no       no       yes     -

To Activate the Inactive Boot Environment

The c0t15d0s0 boot environment is made bootable with the luactivate command. The system is then rebooted and c0t15d0s0 becomes the active boot environment. The c0t4d0s0 boot environment is now inactive.


# luactivate c0t15d0s0
# init 6

(Optional) To Fall Back to the Source Boot Environment

The following procedures for falling back depend on your new boot environment activation situation:


Example 9–1 SPARC: To Fall Back Despite Successful Boot Environment Creation

In this example, the original c0t4d0s0 boot environment is reinstated as the active boot environment although it was activated successfully. The device name is first_disk.


# /sbin/luactivate first_disk 
# init 6


Example 9–2 SPARC: To Fall Back From a Failed Boot Environment Activation

In this example, the new boot environment was not bootable. You must return to the OK prompt before booting from the original boot environment, c0t4d0s0, in single-user mode.


OK boot net -s
# /sbin/luactivate first_disk
Do you want to fallback to activate boot environment c0t4d0s0 
(yes or no)? yes
# init 6

The original boot environment, c0t4d0s0, becomes the active boot environment.



Example 9–3 SPARC: To Fall Back to the Original Boot Environment by Using a DVD, CD, or Net Installation Image

In this example, the new boot environment was not bootable. You cannot boot from the original boot environment and must use media or a net installation image. The device is /dev/dsk/c0t4d0s0. The original boot environment, c0t4d0s0, becomes the active boot environment.


OK boot net -s
# fsck /dev/dsk/c0t4d0s0
# mount /dev/dsk/c0t4d0s0 /mnt 
# /mnt/sbin/luactivate
Do you want to fallback to activate boot environment c0t4d0s0 
(yes or no)? yes
# umount /mnt 
# init 6


Example 9–4 x86: To Fall Back to the Original Boot Environment By Using the GRUB Menu

Starting with the Solaris 10 1/06 release, the following example provides the steps to fall back by using the GRUB menu.

In this example, the GRUB menu is displayed correctly, but the new boot environment is not bootable. To enable a fallback, the original boot environment is booted in single-user mode.

  1. Become superuser or assume an equivalent role.

  2. To display the GRUB menu, reboot the system.


    # init 6
    

    The GRUB menu is displayed.


    GNU GRUB version 0.95 (616K lower / 4127168K upper memory)
    +-------------------------------------------------------------------+
    |Solaris                                                            |
    |Solaris failsafe                                                   |
    |second_disk                                                        |
    |second_disk failsafe                                               |
    +-------------------------------------------------------------------+
    Use the ^ and v keys to select which entry is highlighted. Press
    enter to boot the selected OS, 'e' to edit the commands before
    booting, or 'c' for a command-line.
  3. From the GRUB menu, select the original boot environment. The boot environment must have been created with GRUB software. A boot environment that was created before the Solaris 10 1/06 release is not a GRUB boot environment. If you do not have a bootable GRUB boot environment, then skip to Example 9–5.

  4. Edit the GRUB menu by typing: e.

  5. Select kernel /boot/multiboot by using the arrow keys and type e. The grub edit menu is displayed.


    grub edit>kernel /boot/multiboot
  6. Boot to single user mode, by typing -s.


    grub edit>kernel /boot/multiboot -s
    
  7. Boot and mount the boot environment. Then activate it.


# b
# fsck /dev/dsk/c0t4d0s0
# mount /dev/dsk/c0t4d0s0 /mnt 
# /mnt/sbin/luactivate
Do you want to fallback to activate boot environment c0t4d0s0
(yes or no)? yes
# umount /mnt
# init 6


Example 9–5 x86: To Fall Back to the Original Boot Environment With the GRUB Menu by Using the DVD or CD

Starting with the Solaris 10 1/06 release, the following example provides the steps to fall back by using the DVD or CD.

In this example, the new boot environment was not bootable. Also, the GRUB menu does not display. To enable a fallback, the original boot environment is booted in single-user mode.

  1. Insert the Solaris Operating System for x86 Platforms DVD or Solaris Software for x86 Platforms - 1 CD.

  2. Become superuser or assume an equivalent role.

  3. Boot from the DVD or CD.


    # init 6
    

    The GRUB menu is displayed.


    GNU GRUB version 0.95 (616K lower / 4127168K upper memory)
    +-------------------------------------------------------------------+
    |Solaris 10 5/09                                                    |
    |Solaris 10 5/09 Serial Console ttya                                |
    |Solaris 10 5/09 Serial Console ttyb (for lx50, v60x and v65x       |
    +-------------------------------------------------------------------+
    Use the ^ and v keys to select which entry is highlighted. Press
    enter to boot the selected OS, 'e' to edit the commands before
    booting, or 'c' for a command-line.
  4. Wait for the default option to boot or choose any option displayed.

    The installation screen is displayed.


    +-------------------------------------------------------------------+
    
    |Select the type of installation you want to perform:                |
    |                                                                    |
    |         1 Solaris Interactive                                      |
    |         2 Custom JumpStart                                         |
    |         3 Solaris Interactive Text (Desktop session)               |
    |         4 Solaris Interactive Text (Console session)               |
    |         5 Apply driver updates                                     |
    |         6 Single user shell                                        |
    |                                                                    |
    |        Enter the number of your choice followed by the <ENTER> key.|
    |        Alternatively, enter custom boot arguments directly.        |
    |
    |         If you wait 30 seconds without typing anything,            |
    |         an interactive installation will be started.               |
    +----------------------------------------------------------------- --+
  5. Choose the “Single user shell” option.

    The following message is displayed.


    Do you wish to automatically update the boot archive? y /n
  6. Type: n


    Starting shell...
    #

    You are now in single user mode.

  7. Mount the boot environment. Then activate and reboot.


    # fsck /dev/dsk/c0t4d0s0
    # mount /dev/dsk/c0t4d0s0 /mnt 
    # /mnt/sbin/luactivate
    Do you want to fallback to activate boot environment c0t4d0s0
    (yes or no)? yes
    # umount /mnt
    # init 6