Patches?! We don't need no steenking patches...


"Badges? We ain't got no badges. We don't need no badges. I don't have to show you any stinking badges!"

--Gold Hat, as played by Alfonso Bedoya
"The Treasure of the Sierra Madre" (1948)


I have been using my Virtualbox hosted JET server to install my VMs in Virtualbox for a couple weeks now. I have been using Solaris 10 update 5, and haven't worried about new patches. Until now.

Apparently the JET package from BigAdmin expects patch clusters/bundles to be in a directory called "10_x86_Recommended" with a patch_order file sitting amongst the individual patch directories (i.e. 109773-10/). The new patch clusters from SunSolve (using the 0508 extracted zips as an example) look like:


 patchbundle_0508_x86/
      Copyright                  
      README
      Copyright_chunk2           
      installbundle.sh\*
      LEGAL_LICENSE.TXT          
      patch_order
      LEGAL_LICENSE_chunk2.TXT   
      patchbundle.conf             
      prereq_order
      Patches/                   
            120411-28
            120413-08
            119255-53
            127885-01
            113000-07
            ...

The three options are pretty simple. We could run the installbundle.sh as a post-install task after the first reboot in this section of the template. Don't forget to include an NFS mount of the patch bundle directory in your custom script, and read the README file to make sure everything will work. The install_bundle.sh script requires a password to install to make sure you have read the README.


############
#
# Scripts to be run on the client at the end of the build
#
# The scripts must be placed in the directory
#       /opt/jet/Clients/
# and will be copied to the client.
#
# If you want to run custom scripts during the Jumpstart
# phase, use the custom_scripts_f variable below.
#
# Custom scripts at subsequent boots
#
#  denotes the boot number you want the action to be performed.
# You can create new variables for boot levels 2,3,4 etc.
# n means after the last reboot. i.e. last.
# m means n-1. i.e. before the last reboot. Use m if you need to
# guarantee a reboot after the action is performed.
#
custom_scripts_1=""
custom_scripts_m=""
custom_scripts_n=""

The second option would be to define the patch bundle as a custom patch set in this section of the template:

#
# Custom patch sets... create a directory in the patch 
# directory named after the set, and put a patch_order 
# file in it, along with the patches...
# (Space seperated list of patch set names)
#
# N.B. as a side effect, if a directory exists under the 
# patch set dir named
#      after the OS, (uname -r), the subdirectory will be 
#      used instead of the main patchset directory
#       i.e /export/install/patches/patchset/5.8 takes
#           preference over /export/install/patches/patchset
#
custom_patchsets=""

The third option (that I chose) was to make my patch tree appear to be what JET was expecting, using this section of the template:

############
#
# N.B. Unless you need to point this client at alternate 
#      media for patches and packages that is not held on 
#      this server, please skip this section!
#
# productdir    is where to find the products. This should 
#               be a URI style path, i.e. 
#               nfs://192.168.1.1/export/install/pkgs. 
#               If the server is the JumpStart server, then 
#               it should just be specified as a normal path.
#
# patchdir      is where to find the patches. Same format 
#               as productdir.
#

base_config_productdir=""
base_config_patchdir="/export/install/patches"

In order for this to work, the patches have to be in the "10_x86_Recommended" directory (discovered through trial and error, and looking at the logs on the installed VM), accompanied by a patch_order file.


ayrton# cd /export/install/patches

ayrton# ls
patchbundle_0508_x86

ayrton# ln -s patchbundle_0508_x86/Patches 10_x86_Recommended

ayrton# cd patchbundle_0508_x86/Patches

ayrton# ln -s ../patch_order patch_order

So now there is a 10_x86_Recommended directory (symlink) visible in /export/install/patches that contains the patch directories and a patch_order file. As always, your mileage may vary, no warranty expressed or implied, but it worked for me.


PS - Kudos to Mike Ramchand for finding my real answer. Apparently the 0508 bundle is supposed to bring you up to the level of the 05/08 Solaris update release. The real patch cluster (with the correct directory structure) is on SunSolve under "Solaris 10 x86", buried down in the list underneath the "Solaris 10 x86 0508 Patch Bundle" entry. Oops. Oh well, now we have two choices, but the obvious "best answer" is to just install the update 5 Solaris image in the first place from your JET server.

bill.


Comments:

Post a Comment:
Comments are closed for this entry.
About

mrbill

Search

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