You are on page 1of 8

Figure 1 describes the complete Solaris Live Upgrade process.

Figure 1 Solaris Live Upgrade Process for Patching The context describes the illustration. This figure describes the commands for the Solaris Live Upgrade process: Creating a new boot environment with the lucreate command. Applying patches to the new boot environment with the luupgrade command. Using the luactivate command to activate the new boot environment or fallbac k to the original boot environment. Removing an inactive boot environment with the ludelete command. You can rem ove a boot environment after the running boot environment is stable. Planning for Using Solaris Live Upgrade The following list describes the requirements and limitations for patching with Solaris Live Upgrade. Table 1 Planning and Limitations Issue Description Disk space requirements Using Solaris Live Upgrade involves having two boot environments on your system. Therefore enough disk space for both the original and new boot environments is a prerequisite. Either you need an extra disk or one disk large enough to contai n both boot environments. Supported releases Sun supports and tests an upgrade from any release to a release that is no more than two releases ahead of the one you are running. For example, if you are runn ing the Solaris 7 release you can upgrade to any Solaris 8 or Solaris 9 release, but not a Solaris 10 release. If you are running the Solaris 7 release, you wou ld need to upgrade to the Solaris 8 release before using Solaris Live Upgrade. You need to upgrade to the latest version of the Solaris Live Upgrade software p rior to patching the system, regardless of the version of the Solaris OS running on the system. The procedure below shows you how to add the latest packages. Yo u need these for the latest features and bug fixes. Dependency order of patches The Solaris 10 patchadd command correctly orders patches for you, but Solaris 9 and earlier releases require patches to be in dependency order. Because Sun uses a command line similar to the luupgrade command in the procedure below as part of the standard testing, use a similar approach when you use Solaris Live Upgrad e to patch, regardless of the Solaris release you are patching. Evaluate the patch log Patching can generate a number of errors. You should go through the patch log an d evaluate whether any patch failures impact you. For example, if you were to patch a Solaris 10 3/05 system with the latest Recom mended Patch cluster, many of the patches relate to functionality introduced aft er Solaris 10 3/05, and therefore, patches with the new functionality would fail to install. Support for third-party patches

Third-party patches might not be able to be applied through Solaris Live Upgrade . All Sun patches conform to the requirement that preinstallation and postinstal lation scripts never modify the running system when the target is an inactive bo ot environment. Furthermore, testing the application of Recommended Patches with Solaris Live Upgrade is part of Sun's standard test procedures. However, Sun ca nnot guarantee that all third-party patches are equally well behaved. When you i ntend only to patch an inactive boot environment, you might need to verify that a third-party patch does not contain a script that attempts to modify the curren tly running environment . How to Apply a Patch When Using Solaris Live Upgrade This procedure provides commands for the Solaris 10 8/07 release. If you are usi ng Solaris Live Upgrade from another release, you might need slightly different procedures. For the release you are using, see the Solaris Live Upgrade document ation on docs.sun.com. Before installing or running Solaris Live Upgrade, you are required to insta ll the following patches. These patches ensure that you have all the latest bug fixes and new features in the release. Ensure that you have the most recently updated patch list by consulting SunS olve. Search for the info doc 72099 on the SunSolve web site. Become superuser or assume an equivalent role. If you are storing the patches on a local disk, create a directory such as /var/tmp/lupatches and download the patches to that directory. From the SunSolve web site, obtain the list of patches. Change to the patch directory. # cd /var/tmp/lupatches Install the patches with the patchadd command. # patchadd patch_id patch_id is the patch number or numbers. Separate multiple patch names w ith a space. Note - The patches need to be applied in a specific order that are speci fied in infodoc 72099. Reboot the system if necessary. Certain patches require a reboot to be e ffective. x86 only: Rebooting the system is required or Solaris Live Upgrade fails . # init 6 Remove existing Solaris Live Upgrade packages.

The three Solaris Live Upgrade packages, SUNWluu, SUNWlur, and SUNWlucfg, co mprise the software needed to upgrade by using Solaris Live Upgrade. These packa ges 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 to the target release fails. Note - The SUMWlucfg package is new starting with the Solaris 10 8/07 releas e. If you are using Solaris Live Upgrade packages from a previous release, you d o not need to remove this package. # pkgrm SUNWlucfg SUNWluu SUNWlur Install the Solaris Live Upgrade packages. The following provide the steps to install the packages by using the liveupg rade20 command. The liveupgrade20 command requires Java. If your system does not have Java installed, then you need to use the pkgadd command to install the pac kages individually. Insert the Solaris DVD or CD. This media contains the packages for the release to which you are upgrad ing. Change the directory to the installer. If you are using the Solaris Operating System DVD: For SPARC based systems: # cd /cdrom/cdrom0/s0/Solaris_10/Tools/Installers For x86 based systems: # cd /cdrom/cdrom0/Solaris_10/Tools/Installers If you are using the Solaris Software - 2 CD, run the installer. % ./installer Run the installer. # ./liveupgrade20 -noconsole - nodisplay The -noconsole and -nodisplay options prevent the character user interfa ce (CUI) from displaying.

Note - The Solaris Live Upgrade CUI is no longer supported. Verify that the packages have been installed successfully. # pkgchk -v SUNWlucfg SUNWlur SUNWluu Create the new boot environment. # lucreate [-c BE_name] -m mountpoint:device:fs_options [-m ...] \ -n BE_name

-n BE_name The name of the boot environment to be created. BE_name must be unique o n the system. -c BE_name (Optional) Assigns the name BE_name to the active boot environment. This option is not required and is used only when the first boot environment is crea ted. If you run lucreate for the first time and you omit the -c option, the soft ware creates a default name for you. -m mountpoint:device:fs_options [ -m ...] Specifies the file systems' configuration of the new boot environment in the vfstab. The file systems that are specified as arguments to -m can be on th e same disk or they can be spread across multiple disks. Use this option as many times as needed to create the number of file systems that are needed. mountpoint can be any valid mount point or - (hyphen), indicating a swap partition. device field is the name of the disk device. fs_options field is ufs, which indicates a UFS file system. In the following example, a new boot environment named solaris2 is created. The root ( /) file system is placed on c0t1d0s4. # lucreate -n solaris2 -m /:/dev/dsk/c0t1d0s4:ufs This command generates output similar to the following. The time to complete varies depends on the system. 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. The device name <c0t1d0s4> expands to device path </dev/dsk/c0t1d0s4>. Preparing logical storage devices. Preparing physical storage devices. Configuring physical storage devices. Configuring logical storage devices. Analyzing system configuration. No name for current boot environment. Current boot environment is named <solaris1>. Creating initial configuration for primary boot environment <solaris1>. The device </dev/dsk/c0t1d0s4> is not a root device for any boot environment . PBE configuration successful: PBE name <solaris1> PBE Boot Device </dev/dsk/ c0t1d0s4> Comparing source boot environment <solaris1> 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. The device </dev/dsk/c0t1d0s4> is not a root device for any boot environment . Creating configuration for boot environment <solaris2>. Source boot environment is <solaris1>. Creating boot environment <solaris2>. Creating file systems on boot environment <solaris2>. Creating <ufs> file system for </> on </dev/dsk/c0t1d0s4>. Mounting file systems for boot environment <solaris2>. Calculating required sizes of file systems for boot environment <solaris2>. Populating file systems on boot environment <solaris2>. Checking selection integrity. Integrity check OK. Populating contents of mount point </>. Copying. Creating shared file system mount points. Creating compare databases for boot environment <solaris2>. Creating compare database for file system </>. Updating compare databases on boot environment <solaris2>. Making boot environment <solaris2> bootable. Population of boot environment <solaris2> successful. Creation of boot environment <solaris2> successful. (Optional) Verify that the boot environment is bootable. The lustatus command reports if the boot environment creation is complete an d bootable. # lustatus BE_name boot environment Is Active Active Can Copy Name Complete Now OnReboot Delete Status -----------------------------------------------------------------------solaris1 yes yes yes no solaris2 yes no no yes -

Apply patches to the boot environment. The patches you apply can come from several sources. The following example p rovides steps for installing patches from the SunSolve database. However, the pr ocedure can be used for any patch or patch bundle, such as patches from custom p atch bundles, Sun Update Connection enterprise patches, Enterprise Installation Services CD, or security patches. From the SunSolve web site, obtain the list of patches. Create a directory such as /var/tmp/lupatches and download the patches t o that directory. Change to the patch directory. # cd /var/tmp/lupatches Apply the patches. # luupgrade -n BE_name -t -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 a re to be added. patch-name Specifies the names of the patch or patches that are to be added. Se parate multiple patch names with a space. In the following examples, the patches are applied to the solaris2 boot environment. The patches can be stored on a local disk or on a server. If you are storing the patches in a directory on the local disk: # luupgrade -n solaris2 -t -s /tmp/solaris/patches 222222-01 333333-01 If you are storing the patches on a server:

# luupgrade -n solaris2 -t \ -s /net/server/export/solaris/patch-dir/patches 222222-01 333333-01 Note - The Solaris 10 patchadd command correctly orders patches for you, but Solaris 9 and earlier releases require patches to be in dependency order. B ecause Sun uses a command line similar to the luupgrade command above as part of the standard testing, use a similar approach when you use Solaris Live Upgrade to patch, regardless of the Solaris release you are patching. Evaluate the patch log file to make sure there were no patch failures. Activate the new boot environment. # luactivate BE_name

BE_name specifies the name of the boot environment that is to be activated. See the following documents for more information about activating a boot env ironment: For an x86 based system, the luactivate command is required when booting a boot environment for the first time. Subsequent activations can be made by se lecting the boot environment from the GRUB menu. For step-by-step instructions, see Solaris 10 8/07 Installation Guide: Solaris Live Upgrade and Upgrade Plannin g, Chapter 5, Activating a Boot Environment With the GRUB Menu. To successfully activate a boot environment, that boot environment must meet several conditions. For more information, see Activating a Boot Environment . Reboot. # init 6 Caution - Use only the init or shutdown command to reboot. If you use the re boot, halt, or uadmin command, the system does not switch boot environments. The most recently active boot environment is booted again. The boot environments have switched and the new boot environment is now the current boot environment. (Optional) Fall back to a different boot environment. (Optional) Verify that the boot environment is bootable. The lustatus command reports if the boot environment creation is complet e and bootable. # lustatus

BE_name boot environment Is Active Active Can Copy Name Complete Now OnReboot Delete Status -----------------------------------------------------------------------solaris2 yes yes yes no solaris1 yes no no yes Activate the solaris1 boot environment. For SPARC based systems: # /sbin/luactivate solaris1 # init 6 For x86 based systems, reboot and choose the solaris1 boot environme nt from the GRUB menu. GNU GRUB version 0.95 (616K lower / 4127168K upper memory) +------------------------------------------------------------------+ solaris1 solaris1 failsafe Solaris2 solaris2 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. # init 6 If the new boot environment is not viable or you want to switch to another b oot environment, see Solaris 10 8/07 Installation Guide: Solaris Live Upgrade, C hapter 6, Failure Recovery.

You might also like