Tuesday, June 10, 2008

Upgrading OpenSolaris2008.05 to snv90.

Many of you have installed and are running the first spin of the OpenSolaris distro, that is OpenSolaris2008.05 and have been wondering why SXCE have still been leading the way while OS has been falling behind out of sync with SXCE.

Well now the first update is out that will bring us up to sync with every second ON release. Just with a simple;

pfexec pkg refresh ; pfexec pkg image-update

However,
As this is the first update, it has its own problems.
Two bug trackers here:

http://defect.opensolaris.org/bz/show_bug.cgi?id=2119 (Pidgin does not start)
http://defect.opensolaris.org/bz/show_bug.cgi?id=1989 (Connection times out while installing or upgrading packages)

Both can be solve and I hope to illustrate that here.

Let start with the upgrade (~1GB download):
Bring up a default BASH shell by right clicking on the desktop:

$export PKG_CLIENT_TIMEOUT=120
$pfexec pkg refresh ; pfexec pkg image-update
.. This make take some time, make a coffee and relax.

"PAY ATTENTION TO THE ATTACHED UPDATE PROCEDURE!!! Failure to do so will
prevent your system from rebooting."

"Instructions to update OpenSolaris 2008.05 to build 89 or later
================================================================
The command "pkg image-update" can be used to update an OpenSolaris
2008.05 system to build 89 or later. However due to changes in the
GRUB boot system, one must manually update the Master Boot Record (MBR)
to include these latest changes.

When "pkg image-update" completes successfully, it will print a message
of the form

A clone of opensolaris exists and has been updated and
activated. On next boot the Boot Environment opensolaris-1 will
be mounted on '/'. Reboot when ready to switch to this updated
BE.

The name of the newly created clone can also be seen by looking for the
"Active on reboot" entry in the output of the "beadm list" command

$ beadm list
BE Active Active on Mountpoint Space
Name reboot Used
---- ------ --------- ---------- -----
opensolaris-1 no yes - 17.06M
opensolaris yes no - 33.92M

First, mount the clone under the /mnt directory

$ pfexec mount -F zfs rpool/ROOT/opensolaris-1 /mnt

Next, update the GRUB configuration on your ZFS boot device(s) using

$ pfexec /mnt/boot/solaris/bin/update_grub -R /mnt

When you're ready to boot into the updated boot environment, you can
reboot(1M) or init(1M) as usual."
*Details taken from:
http://www.opensolaris.org/jive/thread.jspa?threadID=62982&tstart=0

After the reboot you can fix Pidgin by doing the following:
$cd /usr/lib/purple-2/
$pfexec elfedit ssl-nss.so
> dyn:runpath
elfedit: [14: .dynamic]: no runpath (DT_RPATH or DT_RUNPATH) found
> dyn:runpath /usr/lib/%I:/usr/lib:/usr/lib/mps:/usr/lib/mps/%I
index tag value
[39] RUNPATH 0x39c
/usr/lib/%I:/usr/lib:/usr/lib/mps:/usr/lib/mps/%I
> quit
elfedit: Output ELF file has changes pending. Use 'write' to save them, or
'quit -f' to exit without saving
> write
> quit
$
If you find any problems leave a message and remember please do report bugs if you find them.
http://defect.opensolaris.org

Edward.
~

No comments: