Tuesday, March 06, 2018

Solaris 11.4: Tips about Upgrading from Solaris 11.3

With the release of Oracle Solaris 11.4 Beta I am sure many have upgraded but when I tried to upgrade my Sun Ultra 24 desktop I had a few problems. This is more down to me modifying the Solaris over the years and not with Solaris 11.4.

Just checked and I installed Solaris 11 back in 20th October 2011 11:19pm.
Solaris 1.4 beta update method 1:
 # pkg update --accept --be-name 11.4.0 --ignore-missing \ 
 --reject system/input-method/ibus/anthy \ 
 --reject system/input-method/ibus/pinyin \ 
 --reject system/input-method/ibus/sunpinyin \ 
 --reject system/input-method/library/m17n/contrib \ 
 entire@latest 

Solaris 1.4 beta update method 2:
I got some errors with the above, so I knew I had to modify my existing boot environment, which I did not want to do at this time. I went for this approach which allows me to copy my existing boot environment (BE) and work on it without any reboots (until the very end):
 # beadm create 11.4beta 
 # beadm mount 11.4beta /mnt 
 # pkg -R /mnt update --accept --be-name 11.4.0........ 
The above command means all pkg operations will be on the new Boot environment called 11.4bata which is mounted as /mnt.

Remove third part publisher packages:
I did notice that I had update errors due to other publishers software being installed, which may be down to this beta, but bare that in mind. I had to remove both SolarisStudio and http://sfe.opencsw.org packages. (Note: remove -R /mnt if working on current BE)
 # pkg -R /mnt uninstall `pkg -R /mnt list |egrep "localhosts11"| awk ' { print 1ドル } '` 

Unlock packages (freeze):
Solaris allows you to constrain a package version which stops it being upgraded. In my case this was need since my graphics card was no longer compatible with 11.3, so I was using a 11.2 version of the package.
 # pkg -R /mnt freeze 
 NAME VERSION DATE COMMENT 
 driver/graphics/nvidia 0.331.38.0-0.175.2.... 20 Jun 2015 16:03:11 BST None 
 # pkg -R /mnt unfreeze driver/graphics/nvidia 

Unlock packages (facet):
If you have changed the version constraints of a package then it may be a good idea to reset them but not necessary required:
 # pkg -R /mnt facet 
 FACET VALUE SRC 
 consolidation/userland/userland-incorporation False local 
 ..... 
 network/dns/bind True local 
 service/network/dns/bind True local 
 shell/bash True local 
 version-lock.consolidation/java-7/java-7-incorporation False local 
 version-lock.consolidation/java-8/java-8-incorporation False local 
 version-lock.consolidation/nvidia/nvidia-incorporation False local 
 version-lock.consolidation/shell/bash True local 
 
 # pkg -R /mnt change-facet consolidation/userland/userland-incorporation=true 
 Variants/Facets to change: 1 
 Updating package state database Done 
 Updating package cache 0/0 
 Updating image state Done 
 Creating fast lookup database Done 
 Reading search index Done 
 Updating search index 0/0 
 Updating package cache 3/3 


Upgrade to latest SRU and packages:
In my case I have a selection of old packages installed.
# pkg -R /mnt list | grep 0.175.1 
consolidation/admin/admin-incorporation 0.5.11-0.175.1.0.0.5.0 i--
consolidation/gfx/gfx-incorporation 0.5.11-0.175.1.0.0.5.0 i--
consolidation/nspg/nspg-incorporation 0.5.11-0.175.1.0.0.5.0 i--
consolidation/xvm/xvm-incorporation 0.5.11-0.175.1.0.0.5.0 i--
developer/library/lint 0.5.11-0.175.1.0.0.20.0 i-r
library/java/javahelp 0.5.11-0.175.1.0.0.11.1 i--
service/postrun 1.0-0.175.1.0.0.18.0 i--
shell/ksh 20110208-0.175.1.0.0.21.0 i-r
In the above you can ignore the first 4 since they are valid and are OK!
You can see in the following I have 85 packages which were installed for Solaris 11.2. You will always get some (check a new built system), but I have to many which may upset the upgrade.
# pkg -R /mnt list | grep 0.175.2|wc 
 85 340 6918 
 
# pkg -R /mnt info entire | grep Version 
 Version: 0.5.11 (Oracle Solaris 11.3.27.4.0) 
# pkg -R /mnt update 

For interest you will see 5 Solaris 11.{0,1} packages installed in S11.4 Beta:

 S11.4# pkg list |grep 0.175 
 consolidation/admin/admin-incorporation 0.5.11-0.175.1.0.0.5.0 i-- 
 consolidation/gfx/gfx-incorporation 0.5.11-0.175.1.0.0.5.0 i-- 
 consolidation/nspg/nspg-incorporation 0.5.11-0.175.1.0.0.5.0 i-- 
 consolidation/xvm/xvm-incorporation 0.5.11-0.175.1.0.0.5.0 i-- 
 data/docbook 2.30.0-0.175.0.0.0.0.0 i-r 

Verify and Fix installation:
It is a very good practice to always do a package verify after an install/update, since this will do a double check that all has gone well and then you can fix any package problems.
 # pkg verify 
 # pkg fix library/mesa
 Packages to fix: 1
 Create boot environment: No
 Create backup boot environment: Yes
 Repairing: pkg://solaris/x11/library/mesa@13.0.6,5.11-11.4.0.0.0.12.1752:20180103T043139Z
 PACKAGE STATUS
 pkg://solaris/x11/library/mesa ERROR
 link: usr/lib/amd64/libGLESv1_CM.so.1
 ERROR: Missing: symbolic link does not exist
 ....

Reduce your /var/tmp usage:
In Solaris 11.4 /var/tmp has been converted to a ZFS filesystem which is a good idea, but if like me it is very big then it can take a long time to convert (done at boot time)
Also, make sure you do not have any immutable files on it as well, since that gave me problems: Solaris 11.4 Beta: update problem: pkg: Could not complete the operation because of insufficient permissions

Solaris 11.4 beta autofs maps from ldap no longer functioning :
In the Beta version you may find out your autofs maps do not work any longer this is due to some changes and it is a now a know problem: CR: 27578660 - LDAP objectclass/attribute mappings for automount behaviour regression

No comments:

Post a Comment

Subscribe to: Post Comments (Atom)

AltStyle によって変換されたページ (->オリジナル) /