Friday, January 13, 2006

patch_order made easy

Some of my most tedious times as a Solaris administrator have been when I needed to create a patch_order file for a custom patch cluster. For a long time I have intended to just write a script...

But now, I don't have to do that any longer! Today I discovered that smpatch(1M) now has an order subcommand. This makes it really quite simple for me to create a patch_order file for a very long list of patches. In this example, I create the patch_order file for the patches in the Solaris 10 Update 1 UpgradePatches directory:

# cd /mnt/Solaris_10/UpgradePatches
# ls > /tmp/patches
# smpatch order -d `pwd` -x idlist=/tmp/patches > /tmp/patch_order
Now, if you want to go the full length and create a patch cluster for it:
# mkdir /tmp/10U1_UpgradePatches
# cd /tmp/10U1_UpgradePatches
# mv /tmp/patch_order .
# ln -s /mnt/Solaris_10/UpgradePatches/* .
# cp /somewhere/10_Recommended/install_cluster .
Modify the SUPPLEMENT_NAME="..." line in install_cluster to be more descriptive for this patch cluster. Be sure to not use characters like /, \, |, etc.
# cd /tmp
# zip -rq 10U1_UpgradePatches.zip 10U1_UpgradePatches
At this point, you can copy the 10U1_UpgradePatches around to your various machines and use it just like you would a 10_Recommended bundle. Enjoy!

1 comment:

Alex said...

Thankx a lot Mike...Your post save me! :-)