Sometimes you don”t have a Solaris IPS local repo and just want to update to a newer SRU (Support Repository Update). You can check versions at Oracle support and last check this Doc ID contained a good list: Oracle Solaris 11.1 Support Repository Updates (SRU) Index (Doc ID 1501435.1)
Few things to note:
– In this example I updated from SRU 18.5 to SRU 19.6. Most of my updates was actually all the way from the GA release to the latest SRU. And for me I had to have both the Oracle online repo as well as the local incremental SRU set for the update to catch all possible dependencies.
– If updating to a latest SRU and coming from many versions back you might also see something similar to below when the update tries to activate the new BE (boot environment):
Error while accessing “/dev/rdsk/c2d1s0”: No such file or directory
pkg: unable to activate solaris-1
I have not 100% figured out why this is happening and if its just related to LDOM”s but so far once or twice when this occurred either one of the following or a combination of the following allowed me to manually activate the BE. Reboot the updated guest, just doing a simple zpool status, destroying the newly created BE and redoing the update. Like I said all or one of the above steps. I have a suspicion its as simple as doing a zfs status and then the activate worked.
Update 7.18.14: The last upgrade I did I encountered the unable to activate error and a simple zpool status allowed me to do beadm activate.
Lets start by checking the existing version. This indicates we are at SRU 18.5 in this case.
# pkg list entireNAME (PUBLISHER) VERSION IFOentire 0.5.11-0.175.1.18.0.5.0 i--Since I have the luxury of staging on NFS we might as well mount the repo direct. Another option since this is a LDOM is to add a virtual cdrom the guest. Note below I am setting both the incremental repo as well as the Oracle support repo. Use pkg unset-publisher to clear entries you don”t want.
# mount -F hsfs /software/solaris/sol-11_1_19_6_0-incr-repo.iso /mnt# pkg set-publisher -g file:///mnt/repo solaris# pkg set-publisher -P -g http://pkg.oracle.com/solaris/release/ solaris# pkg publisherPUBLISHER TYPE STATUS P LOCATIONsolaris origin online F file:///mnt/repo/solaris origin online F http://pkg.oracle.com/solaris/release/Now lets do the update. Since the README for SRU 19.6 explained license around java we need to include the –accept flag. Be warned the README might contain more information you need to adhere to for a successful update. In my case to be extra safe even though Solaris can maintain multiple BE”s (boot environments), I also made a snapshot of the OS on the storage back end.
# pkg update --accept Packages to install: 1 Packages to update: 72 Create boot environment: YesCreate backup boot environment: No
DOWNLOAD PKGS FILES XFER (MB) SPEEDCompleted 73/73 2018/2018 99.8/99.8 0B/s
PHASE ITEMSRemoving old actions 238/238Installing new actions 277/277Updating modified actions 3265/3265Updating package state database DoneUpdating package cache 72/72Updating image state DoneCreating fast lookup database Done
A clone of solaris-new-2 exists and has been updated and activated.On the next boot the Boot Environment solaris-new-3 will bemounted on '/'. Reboot when ready to switch to this updated BE.
---------------------------------------------------------------------------NOTE: Please review release notes posted at:
https://support.oracle.com/epmos/faces/DocContentDisplay?id=1501435.1---------------------------------------------------------------------------Lets take a look at the boot environments before reboot.
# beadm listBE Active Mountpoint Space Policy Created-- ------ ---------- ----- ------ -------solaris-new-1 - - 13.82M static 2014-01-30 08:27solaris-new-2 N / 3.13M static 2014-05-19 06:37solaris-new-3 R - 12.37G static 2014-06-18 04:55solaris-orig - - 11.73M static 2013-07-09 10:26solaris-sru14.5 - - 19.87M static 2014-01-29 06:07# rebootAfter a reboot the Solaris version and BE looks like this.
# pkg list entireNAME (PUBLISHER) VERSION IFOentire 0.5.11-0.175.1.19.0.6.0 i--# beadm listBE Active Mountpoint Space Policy Created-- ------ ---------- ----- ------ -------solaris-new-1 - - 13.82M static 2014-01-30 08:27solaris-new-2 - - 14.45M static 2014-05-19 06:37solaris-new-3 NR / 12.49G static 2014-06-18 04:55solaris-orig - - 11.73M static 2013-07-09 10:26solaris-sru14.5 - - 19.87M static 2014-01-29 06:07