[geeks] Solaris 10 u9 live-upgrade mini-howto

velociraptor velociraptor at gmail.com
Sun Oct 10 10:47:24 CDT 2010


On Sun, Sep 12, 2010 at 1:35 PM, Phil Stracchino <alaric at metrocast.net> wrote:
> The results of some research and trial-and-error:  Mini-howto on how to
> live-upgrade to Solaris 10 u9, on ZFS, from a previous version that lacks
> the new autoregistration feature, opting out of autoregistration in the
> event that you do not have an existing autoregistration file or don't wish
> to autoregister.
>
>
> # mkdir /mnt/iso
> # lofiadm -a /.../sol-10-u9-ga-x86-dvd.iso
> # mount -F hsfs /dev/lofi/1 /mnt/iso
> # /mnt/iso/Solaris_10/Tools/Installers/liveupgrade20
> # lucreate -n s10_u9_amd64
> # echo "auto_reg=disable" > /tmp/sysidcfg
> # luupgrade -u -n s10_u9_amd64 -s /mnt/iso -k /tmp/sysidcfg
>
> [ ...wait about 20-30 minutes... ]
>
> # zfs set mountpoint=/a rpool/ROOT/s10_u9_amd64
> # zfs mount rpool/ROOT/s10_u9_amd64
> # less /a/var/sadm/system/data/upgrade_cleanup
>
> [ do whatever is needed, which in my case amounted to undoing replacement of
> openSSH-5.6p1 with Sun SSH 1.5 and re-adding my changes to
> /etc/init.d/sysetup to ifconfig bge1 ]
>
> # less /a/var/sadm/system/data/upgrade_failed_pkgadds (if applicable)
> # zfs unmount rpool/ROOT/s10_u9_amd64
> # zfs set mountpoint=/ rpool/ROOT/s10_u9_amd64
>
> # luactivate s10_u9_amd64
> # init 6

Another note for folks using BEs on ZFS.  In /etc/lu there are text
files named ICF.<num> for each BE.  By default when you create a new
BE, *all* mounted zfs datasets are included in the created BE.  This
can cause problems if you shuffle data around after the fact, or
delete datasets, etc.  It also slows things down, since those datasets
have to be parsed/mounted/etc. when you manipulate a BE.

There are some patches floating around on the net to work around this
issue by using regex excludes when you create/modify/delete a BE, but
they don't apply cleanly to Sol 10 U8 (haven't patched up to U9 yet).

You can work around issues that might crop up with a BE by editing a
BE's ICF file by hand.  Essentially, anything outside of that BE's
root pool is unnecessary.  It's not clear to me if this file is used
by the OS for anything other than lu commands, so it's probably wise
to take a backup of it.  Y

Refs: http://www.mail-archive.com/zfs-discuss@opensolaris.org/msg23041.html
 (Specifically talking about zones, but still applicable more
generally.)
http://forums.sun.com/thread.jspa?threadID=5382539
http://iws.cs.uni-magdeburg.de/~elkner/luc/lutrouble.html  (details on
trouble-shooting live upgrade issues, and the above mentioned patches
for the scripts:
http://iws.cs.uni-magdeburg.de/~elkner/luc/lu-5.10.patch)

While I like the idea of patching the scripts, keeping them working as
the system is patched is problematic, so I am content with hacking on
the ICF files as needed.

=Nadine=



More information about the geeks mailing list