Solaris 10 Installation Guide: Solaris Live Upgrade and Upgrade Planning

Upgrading a Boot Environment

Use the Upgrade menu or luupgrade command to upgrade a boot environment. This section provides the procedure for upgrading an inactive boot environment from files that are located on the following media:

Guidelines for Upgrading

When you upgrade a boot environment with the latest OS, you do not affect the active boot environment. The new files merge with the inactive boot environment critical file systems, but shareable file systems are not changed.

Rather than upgrading, if you have created a Solaris Flash archive, you could install the archive on an inactive boot environment. The new files overwrite critical file systems of the inactive boot environment, but shareable file systems are not changed. See Installing Solaris Flash Archives on a Boot Environment.

You can upgrade an inactive boot environment that contains any combination of physical disk slices, Solaris Volume Manager volumes, or Veritas Volume Manager volumes. The slice that is chosen for the root (/) file system must be a single-slice concatenation that is included in a RAID–1 volume (mirror). For procedures about creating a boot environment with mirrored file systems, see To Create a Boot Environment With RAID-1 Volumes (Mirrors) (Command-Line Interface).


Note –

If VxVM volumes are configured on your current system, the lucreate command can create a new boot environment. When the data is copied to the new boot environment, the Veritas file system configuration is lost and a UFS file system is created on the new boot environment.


Upgrading a System With Packages or Patches

You can use Solaris Live Upgrade to add patches and packages to a system. Solaris Live Upgrade creates a copy of the currently running system. This new boot environment can be upgraded or you can add packages or patches. When you use Solaris Live Upgrade, the only downtime the system incurs is that of a reboot. You can add patches and packages to a new boot environment with the luupgrade command.


Caution – Caution –

When adding and removing packages or patches, Solaris Live Upgrade requires packages or patches that comply with the SVR4 advanced packaging guidelines. While Sun packages conform to these guidelines, Sun cannot guarantee the conformance of packages from third-party vendors. If a package violates these guidelines, the package can cause the package-addition software to fail or alter the active boot environment during an upgrade.

For more information about packaging requirements, see Appendix B, Additional SVR4 Packaging Requirements (Reference).


Table 9–2 Upgrading a Boot Environment With Packages and Patches

Type of Installation 

Description 

For More Information 

Adding patches to a boot environment.  

Create a new boot environment and use the luupgrade command with the -t option.

To Add Patches to an Operating System Image on a Boot Environment (Command-Line Interface)

Adding packages to a boot environment. 

Use the luupgrade command with the -p option.

To Add Packages to an Operating System Image on a Boot Environment (Command-Line Interface)

ProcedureTo Upgrade an Operating System Image on a Boot Environment (Character User Interface)

To upgrade by using this procedure, you must use a DVD or a combined installation image. For an installation with CDs, you must use the procedure To Upgrade an Operating System Image From Multiple CDs (Command-Line Interface).

Steps
  1. From the Solaris Live Upgrade main menu, select Upgrade.

    The Upgrade menu screen is displayed.

  2. Type the new boot environment's name.

  3. Type the path to where the Solaris installation image is located.

    Installation Media Type 

    Description 

    Network File System 

    Specify the path to the network file system where the installation image is located.  

    Local file 

    Specify the path to the local file system where the installation image is located. 

    Local tape 

    Specify the local tape device and the position on the tape where the installation image is located. 

    Local device, DVD, or CD 

    Specify the local device and the path to the installation image. 

    • SPARC: If you are using a DVD or a CD, type the path to that disc, as in this example:


      /cdrom/cdrom0/s0/Solaris_10/s0
      
    • If you have a combined image on the network, type the path to the network file system as in this example:


      /net/installmachine/export/Solaris_10/os_image
      
  4. To upgrade, press F3.

    When the upgrade is completed, the main menu is displayed.

ProcedureTo Upgrade an Operating System Image on a Boot Environment (Command-Line Interface)

To upgrade by using this procedure, you must use a DVD or a combined installation image. If the installation requires more than one CD, you must use the procedure To Upgrade an Operating System Image From Multiple CDs (Command-Line Interface).

Steps
  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. Indicate the boot environment to upgrade and the path to the installation software by typing:


    # luupgrade -u -n BE_name -s os_image_path
    
    -u

    Upgrades an operating system image on a boot environment

    -n BE_name

    Specifies the name of the boot environment that is to be upgraded

    -s os_image_path

    Specifies the path name of a directory that contains an operating system image


Example 9–1 Upgrading an Operating System Image on a Boot Environment (Command-Line Interface)

In this example, the second_disk boot environment is upgraded.


# luupgrade -u -n second_disk \ 
-s /net/installmachine/export/Solaris_10/OS_image 

ProcedureTo Upgrade an Operating System Image From Multiple CDs (Command-Line Interface)

Because the operating system image resides on more than one CD, you must use this upgrade procedure. Use the luupgrade command with the -i option to install any additional CDs.

Steps
  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. Indicate the boot environment to upgrade and the path to the installation software by typing:


    # luupgrade -u -n BE_name -s os_image_path
    
    -u

    Upgrades an operating system image on a boot environment

    -n BE_name

    Specifies the name of the boot environment that is to be upgraded

    -s os_image_path

    Specifies the path name of a directory that contains an operating system image

  3. When the installer is finished with the contents of the first CD, insert the second CD.

  4. This step is identical to the previous step, but the -u option is replaced by the -i option. Also, choose to run the installer on the second CD with menus or with text.

    • This command runs the installer on the second CD with menus.


      # luupgrade -i -n BE_name -s os_image_path
      
    • This command runs the installer on the second CD with text and requires no user interaction.


      # luupgrade -i -n BE_name -s os_image_path -O '-nodisplay -noconsole'
      
    -i

    Installs additional CDs. The software looks for an installation program on the specified medium and runs that program. The installer program is specified with -s.

    -n BE_name

    Specifies the name of the boot environment that is to be upgraded.

    -s os_image_path

    Specifies the path name of a directory that contains an operating system image.

    -O '-nodisplay -noconsole'

    (Optional) Runs the installer on the second CD in text mode and requires no user interaction.

  5. Repeat Step 3 and Step 4 for each CD that you want to install.

    The boot environment is ready to be activated. See Activating a Boot Environment.


Example 9–2 SPARC: Upgrading an Operating System Image From Multiple CDs (Command-Line Interface)

In this example, the second_disk boot environment is upgraded and the installation image is on two CDs: the Solaris Software - 1 and the Solaris Software - 2 CDs. The -u option determines if sufficient space for all the packages is on the CD set. The -O option with the -nodisplay and -noconsole options prevents the character user interface from displaying after the reading of the second CD. If you use these options, you are not prompted to type information. Omit these options to display the interface.

Insert the Solaris Software - 1 CD and type:


# luupgrade -u -n second_disk -s /cdrom/cdrom0/s0 

Insert the Solaris Software - 2 CD and type the following.


# luupgrade -i -n second_disk -s /cdrom/cdrom0 -O '-nodisplay \ 
-noconsole'

Repeat the previous step for each CD that you want to install.


ProcedureTo Add Packages to an Operating System Image on a Boot Environment (Command-Line Interface)

In the following procedure, packages are removed from and added to a new boot environment.


Caution – Caution –

When you are upgrading. adding and removing packages or patches, Solaris Live Upgrade requires packages or patches that comply with the SVR4 advanced packaging guidelines. While Sun packages conform to these guidelines, Sun cannot guarantee the conformance of packages from third-party vendors. If a package violates these guidelines, the package can cause the package-addition software to fail or can alter the active boot environment.

For more information about packaging requirements, see Appendix B, Additional SVR4 Packaging Requirements (Reference).


Steps
  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. To remove a package or set of packages from a new boot environment, type:


    #  luupgrade -P -n second_disk package-name
    
    -P

    Indicates to remove the named package or packages from the boot environment

    -n BE_name

    Specifies the name of the boot environment where the package is to be removed

    package-name

    Specifies the names of the packages to be removed. Separate multiple package names with spaces.

  3. To add a package or a set of packages to the new boot environment, type:


    # luupgrade -p -n second_disk -s /path-to-packages package-name
    
    -p

    Indicates to add packages to the boot environment.

    -n BE_name

    Specifies the name of the boot environment where the package is to be added.

    -s path-to-packages

    Specifies the path to a directory that contains the package or packages that are to be added.

    package-name

    Specifies the names of the package or packages to be added. Separate multiple package names with a space.


Example 9–3 Adding packages to an Operating System Image on a Boot Environment (Command-Line Interface)

In this example, packages are removed then added to the second_disk boot environment.


# luupgrade -P -n second_disk SUNWabc SUNWdef SUNWghi
# luupgrade -p -n second_disk -s /net/installmachine/export/packages \
SUNWijk SUNWlmn SUNWpkr

ProcedureTo Add Patches to an Operating System Image on a Boot Environment (Command-Line Interface)

In the following procedure, patches are removed from and added to a new boot environment.


Caution – Caution –

When you are adding and removing packages or patches, Solaris Live Upgrade requires packages or patches that comply with the SVR4 advanced packaging guidelines. While Sun packages conform to these guidelines, Sun cannot guarantee the conformance of packages from third-party vendors. If a package violates these guidelines, the package can cause the package-addition software to fail or can alter the active boot environment.


Steps
  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. To remove a patch or set of patches from a new boot environment, type:


    # luupgrade -T -n second_disk patch_name
    
    -T

    Indicates to remove the named patch or patches from the boot environment.

    -n BE_name

    Specifies the name of the boot environment where the patch or patches are to be removed.

    patch-name

    Specifies the names of the patches to be removed. Separate multiple patch names with spaces.

  3. To add a patch or a set of patches to the new boot environment, type the following command.


    # luupgrade -t -n second_disk -s /path-to-patches patch-name
    
    -t

    Indicates to add patches to the boot environment.

    -n BE_name

    Specifies the name of the boot environment where the patch is to be added.

    -s path-to-patches

    Specifies the path to the directory that contains the patches that are to be added.

    patch-name

    Specifies the names of the patch or patches that are to be added. Separate multiple patch names with a space.


Example 9–4 Adding Patches to an Operating System Image on a Boot Environment (Command-Line Interface)

In this example, patches are removed then added to the second_disk boot environment .


# luupgrade -T -n second_disk 222222-01
# luupgrade -t -n second_disk -s /net/installmachine/export/packages \
333333-01 4444444-01

ProcedureTo Obtain Information on Packages Installed on a Boot Environment (Command-Line Interface)

The follow procedure checks the integrity of the packages installed on the new boot environment.

Steps
  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. To check the integrity of the newly installed packages on the new boot environment, type:


    #  luupgrade -C -n second_disk -O "-v" package-name
    
    -C

    Indicates to run the pkgchk command on the named packages

    -n BE_name

    Specifies the name of the boot environment where the check is to be performed

    -O

    Passes the options directly to the pkgchk command

    package-name

    Specifies the names of the packages to be checked. Separate multiple package names with spaces. If package names are omitted, the check is done on all packages in the specified boot environment.

    -v

    Specifies to run the command in verbose mode


Example 9–5 Checking the Integrity of Packages on a Boot Environment (Command-Line Interface)

In this example, the packages SUNWabc, SUNWdef, and SUNWghi are checked to make sure they were installed properly and are not damaged.


# luupgrade -C -n second_disk SUNWabc SUNWdef SUNWghi

Upgrading by Using a JumpStart Profile

You can create a JumpStart profile to use with Solaris Live Upgrade. If you are familiar with the custom JumpStart program, this is the same profile that custom JumpStart uses. The following procedures enable you to create a profile, test the profile, and install by using the luupgrade command with the -j option.


Caution – Caution –

When you install the Solaris OS with a Solaris Flash archive, the archive and the installation media must contain identical OS versions. For example, if the archive is the Solaris 10 3/05 operating system and you are using DVD media, then you must use Solaris 10 3/05 DVD media to install the archive. If the OS versions do not match, the installation on the target system fails. Identical operating systems are necessary when you use the following keyword or command:


For more information see the following:

ProcedureTo Create a Profile to be Used by Solaris Live Upgrade

This procedure shows you how to create a profile for use with Solaris Live Upgrade. You can use this profile to upgrade an inactive boot environment by using the luupgrade command with the -j option.

For procedures to use this profile, see the following sections:

Steps
  1. Use a text editor to create a text file.

    Name the file descriptively. Ensure that the name of the profile reflects how you intend to use the profile to install the Solaris software on a system. For example, you might name this profile upgrade_Solaris_10.

  2. Add profile keywords and values to the profile.

    Only the upgrade keywords in the following tables can be used in a Solaris Live Upgrade profile.

    The following table lists the keywords you can use with the Install_type keyword values of upgrade or flash_install.

    Keywords for an Initial Archive Creation 

    Description 

    Reference 

    (Required) Install_type

    Defines whether to upgrade the existing Solaris environment on a system or install a Solaris Flash archive on the system. Use the following values with this keyword: 

    • upgrade for an upgrade

    • flash_install for a Solaris Flash installation

    • flash_update for a Solaris Flash differential installation

    For a description of all the values for this keyword, see install_type Profile Keyword in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Required for a Solaris Flash archive) archive_location

    Retrieves a Solaris Flash archive from a designated location.  

    For a list of values that can be used with this keyword, see archive_location Keyword in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Optional) cluster (adding or deleting clusters)

    Designates whether a cluster is to be added or deleted from the software group that is to be installed on the system.  

    For a list of values that can be used with this keyword, see cluster Profile Keyword (Adding Software Groups) in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Optional) geo

    Designates the regional locale or locales that you want to install on a system or to add when upgrading a system.  

    For a list of values that can be used with this keyword, see geo Profile Keyword in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Optional) local_customization

    Before you install a Solaris Flash archive on a clone system, you can create custom scripts to preserve local configurations on the clone system. The local_customization keyword designates the directory where you have stored these scripts. The value is the path to the script on the clone system.

    For information about predeployment and postdeployment scripts, see Creating Customization Scripts in Solaris 10 Installation Guide: Solaris Flash Archives (Creation and Installation).

    (Optional) locale

    Designates the locale packages you want to install or add when upgrading.  

    For a list of values that can be used with this keyword, see locale Profile Keyword in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Optional) package

    Designates whether a package is to be added to or deleted from the software group that is to be installed on the system.  

    For a list of values that can be used with this keyword, see package Profile Keyword in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    The following table lists the keywords you can use with the Install_type keyword value flash_update.

    Keywords for a Differential Archive Creation 

    Description 

    Reference 

    (Required) Install_type

    Defines the installation to install a Solaris Flash archive on the system. The value for a differential archive is flash_update.

    For a description of all the values for this keyword, see install_type Profile Keyword in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Required) archive_location

    Retrieves a Solaris Flash archive from a designated location.  

    For a list of values that can be used with this keyword, see archive_location Keyword in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Optional) forced_deployment

    Forces the installation of a Solaris Flash differential archive onto a clone system that is different than the software expects. If you use forced_deployment, all new files are deleted to bring the clone system to the expected state. If you are not certain that you want files to be deleted, use the default, which protects new files by stopping the installation.

    For more information about this keyword, see forced_deployment Profile Keyword (Installing Solaris Flash Differential Archives) in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Optional) local_customization

    Before you install a Solaris Flash archive on a clone system, you can create custom scripts to preserve local configurations on the clone system. The local_customization keyword designates the directory where you have stored these scripts. The value is the path to the script on the clone system.

    For information about predeployment and postdeployment scripts, see Creating Customization Scripts in Solaris 10 Installation Guide: Solaris Flash Archives (Creation and Installation).

    (Optional) no_content_check

    When installing a clone system with a Solaris Flash differential archive, you can use the no_content_check keyword to ignore file-by-file validation. File-by-file validation ensures that the clone system is a duplicate of the master system. Avoid using this keyword unless you are sure the clone system is a duplicate of the original master system.

    For more information about this keyword, see no_content_check Profile Keyword (Installing Solaris Flash Archives) in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

    (Optional) no_master_check

    When installing a clone system with a Solaris Flash differential archive, you can use the no_master_check keyword to ignore a check of files. Clone system files are not checked. A check would ensure the clone was built from the original master system. Avoid using this keyword unless you are sure the clone system is a duplicate of the original master system.

    For more information about this keyword, see no_master_check Profile Keyword (Installing Solaris Flash Archives) in Solaris 10 Installation Guide: Custom JumpStart and Advanced Installations.

  3. Save the profile in a directory on the local system.

  4. Ensure that root owns the profile and that the permissions are set to 644.

  5. Test the profile (optional).

    For a procedure to test the profile, see To Test a Profile to Be Used by Solaris Live Upgrade.


Example 9–6 Creating a Solaris Live Upgrade Profile

In this example, a profile provides the upgrade parameters. This profile is to be used to upgrade an inactive boot environment with the Solaris Live Upgrade luupgrade command and the -u and -j options. This profile adds a package and a cluster. A regional locale and additional locales are also added to the profile. If you add locales to the profile, make sure that you have created a boot environment with additional disk space.

# profile keywords         profile values
# ----------------         -------------------
  install_type             upgrade
  package                  SUNWxwman add
  cluster                  SUNWCacc add
  geo                      C_Europe
  locale                   zh_TW
  locale                   zh_TW.BIG5
  locale                   zh_TW.UTF-8
  locale                   zh_HK.UTF-8
  locale                   zh_HK.BIG5HK
  locale                   zh
  locale                   zh_CN.GB18030
  locale                   zh_CN.GBK
  locale                   zh_CN.UTF-8


Example 9–7 Creating a Solaris Live Upgrade Profile to Install a Differential Archive

The following example of a profile is to be used by Solaris Live Upgrade to install a differential archive on a clone system. Only files that are specified by the differential archive are added, deleted, or changed. The Solaris Flash archive is retrieved from an NFS server. Because the image was built by the original master system, the clone system is not checked for a valid system image. This profile is to be used with the Solaris Live Upgrade luupgrade command and the -u and -j options.

# profile keywords         profile values
# ----------------         -------------------
 install_type              flash_update
 archive_location          nfs installserver:/export/solaris/archive/solarisarchive
 no_master_check

To use the luupgrade command to install the differential archive, see To Install a Solaris Flash Archive With a Profile (Command-Line Interface).


ProcedureTo Test a Profile to Be Used by Solaris Live Upgrade

After you create a profile, use the luupgrade command to test the profile. By looking at the installation output that is generated by luupgrade, you can quickly determine if a profile works as you intended.

Step

    Test the profile.


    # luupgrade -u -n BE_name -D -s os_image_path -j profile_path
    
    -u

    Upgrades an operating system image on a boot environment.

    -n BE_name

    Specifies the name of the boot environment that is to be upgraded.

    -D

    luupgrade command uses the selected boot environment's disk configuration to test the profile options that are passed with the -j option.

    -s os_image_path

    Specifies the path name of a directory that contains an operating system image. This directory can be on an installation medium, such as a DVD-ROM, CD-ROM, or it can be an NFS or UFS directory.

    -j profile_path

    Path to a profile that is configured for an upgrade. The profile must be in a directory on the local machine.


Example 9–8 Testing a Profile by Using Solaris Live Upgrade

In the following example, the profile is named Flash_profile. The profile is successfully tested on the inactive boot environment that is named second_disk.


# luupgrade -u -n u1b08 -D -s /net/installsvr/export/u1/combined.u1wos \
 -j /var/tmp/flash_profile
Validating the contents of the media /net/installsvr/export/u1/combined.u1wos.
The media is a standard Solaris media.
The media contains an operating system upgrade image.
The media contains Solaris version 10.
Locating upgrade profile template to use.
Locating the operating system upgrade program.
Checking for existence of previously scheduled Live Upgrade requests.
Creating upgrade profile for BE second_disk.
Determining packages to install or upgrade for BE second_disk.
Simulating the operating system upgrade of the BE second_disk.
The operating system upgrade simulation is complete.
INFORMATION: var/sadm/system/data/upgrade_cleanup contains a log of the
upgrade operation.
INFORMATION: var/sadm/system/data/upgrade_cleanup contains a log of
cleanup operations required.
The Solaris upgrade of the boot environment second_disk is complete.

You can now use the profile to upgrade an inactive boot environment.


ProcedureTo Upgrade With a Profile by Using Solaris Live Upgrade (Command-Line Interface)

This procedure provides step-by-step instructions for upgrading an OS by using a profile.

If you want to install a Solaris Flash archive by using a profile, see To Install a Solaris Flash Archive With a Profile (Command-Line Interface).

If you added locales to the profile, make sure that you have created a boot environment with additional disk space.


Caution – Caution –

When you install the Solaris OS with a Solaris Flash archive, the archive and the installation media must contain identical OS versions. For example, if the archive is the Solaris 10 3/05 operating system and you are using DVD media, then you must use Solaris 10 3/05 DVD media to install the archive. If the OS versions do not match, the installation on the target system fails. Identical operating systems are necessary when you use the following keyword or command:


Steps
  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. Create a profile.

    See To Create a Profile to be Used by Solaris Live Upgrade for a list of upgrade keywords that can be used in a Solaris Live Upgrade profile.

  3. Type:


    # luupgrade -u -n BE_name -s os_image_path -j profile_path
    
    -u

    Upgrades an operating system image on a boot environment.

    -n BE_name

    Specifies the name of the boot environment that is to be upgraded.

    -s os_image_path

    Specifies the path name of a directory that contains an operating system image. This directory can be on an installation medium, such as a DVD-ROM, CD-ROM, or it can be an NFS or UFS directory.

    -j profile_path

    Path to a profile. The profile must be in a directory on the local machine. For information about creating a profile, see To Create a Profile to be Used by Solaris Live Upgrade.

    The boot environment is ready to be activated.


Example 9–9 Upgrading a Boot Environment by Using a Custom JumpStart Profile (Command-Line Interface)

In this example, the second_disk boot environment is upgraded by using a profile. The -j option is used to access the profile. The boot environment is then ready to be activated. To create a profile, see To Create a Profile to be Used by Solaris Live Upgrade.


# luupgrade -u -n second_disk \ 
-s /net/installmachine/export/solarisX/OS_image \ 
-j /var/tmp/profile