Sunday, December 28, 2008

Got myself a new external USB drive

I've been backing up my ZFS data to my PC booted into Solaris and running a send/recv operation. This works fine but takes a while so I need to run it overnight and I'm concerned about my leccy bill.
So I've been thinking about an external USB drive for a while now and picked up a 1TB unit in the PC World sale for a shade under 70 quid. I've decided to chop it up using fdisk into 2 partitions;
25% for pcfs which I'll sync my homedir to using rsync, and
74% which I'll put in a zpool and pour my ZFS data into.
My thinking being; ZFS is the business but if my tinkering does something severe to my server and I need my docs in a hurry, at least I can read my docs on my PC/laptop whilst I'm getting my server back up and running.

So, steps to set the disk up for PCFS;
1. Attach the disk and check the new device in format.
2. fdisk /dev/rdsk/c7t0d0p0
Slice it up: 25% as FAT=32, the remainder for Solaris2
3. mkfs -F pcfs -o fat=32 /dev/rdsk/c7t0d0p0:c
Unplug and plug back in again and the new partition is mounted;
Filesystem size used avail capacity Mounted on
/dev/dsk/c7t0d0p0:1 233G 64K 233G 1% /media/NONAME

Steps to set the other partition up for ZFS;
1. format
Select disk and slice up vtoc such that there are no overlapping slices. format will automagically take you into the Solaris partition so no worries there.
2. zpool create neo /dev/dsk/c7t0d0s0
Keep the matrix theme.

All done!

Tuesday, December 16, 2008

I noticed an error on boot up on my new nv_104 install. Nothing to calamitous;

[root] deckard:/root # grep driver_alias /var/adm/messages
Dec 16 18:50:35 deckard genunix: [ID 107833 kern.warning] WARNING: Unexpected token '423' on line 983 of /etc/driver_aliases
Dec 16 18:50:35 deckard genunix: [ID 107833 kern.warning] WARNING: Missing " on line 983 of /etc/driver_aliases
[root] deckard:/root # vi /etc/driver_aliases

980 nvidia "pci10de,84f"
981 nvidia "pci10de,87a"
982 iwh "pciex8086,4236"
983 iwh 423a"
984 ath "pci168c,23"
985 ath "pciex168c,1c"
986 ath "pciex168c,24"
987 bge "pciex14e4,1674"

Slimserver broken after liveupgrade

Here's one that gets me every time. Slimserver breaks after upgrading.
The fix is to force install Scalar::Util. Don't ask me why - I dabble in perl but this sort of thing is totally beyond me. Anyways, here are the obligatory screengrabs;

[root] deckard:/root # uname -a
SunOS deckard 5.11 snv_104 i86pc i386 i86pc
[root] deckard:/root # su - slim
Sun Microsystems Inc. SunOS 5.11 snv_104 November 2008
[slim] deckard:/usr/local/squeezecenter-7.3.1-24296 $ ./slimserver.pl
Weak references are not implemented in the version of perl at /usr/local/squeezecenter-7.3.1-24296/Slim/Utils/Accessor.pm line 25
BEGIN failed--compilation aborted at /usr/local/squeezecenter-7.3.1-24296/Slim/Utils/Accessor.pm line 25.
Compilation failed in require at (eval 161) line 3.
...propagated at /usr/perl5/5.8.4/lib/base.pm line 85.
BEGIN failed--compilation aborted at /usr/local/squeezecenter-7.3.1-24296/Slim/Player/Client.pm line 17.
Compilation failed in require at /usr/local/squeezecenter-7.3.1-24296/Slim/Utils/Alarm.pm line 47.
BEGIN failed--compilation aborted at /usr/local/squeezecenter-7.3.1-24296/Slim/Utils/Alarm.pm line 47.
Compilation failed in require at /usr/local/squeezecenter-7.3.1-24296/Slim/Buttons/Alarm.pm line 12.
BEGIN failed--compilation aborted at /usr/local/squeezecenter-7.3.1-24296/Slim/Buttons/Alarm.pm line 12.
Compilation failed in require at /usr/local/squeezecenter-7.3.1-24296/Slim/Buttons/Common.pm line 42.
BEGIN failed--compilation aborted at /usr/local/squeezecenter-7.3.1-24296/Slim/Buttons/Common.pm line 42.
Compilation failed in require at ./slimserver.pl line 140.
BEGIN failed--compilation aborted at ./slimserver.pl line 140.
[slim] deckard:/usr/local/squeezecenter-7.3.1-24296 $ perl -v

This is perl, v5.8.4 built for i86pc-solaris-64int
(with 31 registered patches, see perl -V for more detail)

Copyright 1987-2004, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using `man perl' or `perldoc perl'. If you have access to the
Internet, point your browser at http://www.perl.com/, the Perl Home Page.

[slim] deckard:/usr/local/squeezecenter-7.3.1-24296 $ su -
Password:
Sun Microsystems Inc. SunOS 5.11 snv_104 November 2008
[root] deckard:/root # cpan

cpan shell -- CPAN exploration and modules installation (v1.7601)
ReadLine support enabled

cpan> force install Scalar::Util
CPAN: Storable loaded ok
Going to read /root/.cpan/Metadata
Database was generated on Sun, 14 Dec 2008 19:26:50 GMT
CPAN: LWP::UserAgent loaded ok
Fetching with LWP:
ftp://ftp.ticklers.org/pub/CPAN/authors/01mailrc.txt.gz
LWP failed with code[404] message[File '01mailrc.txt.gz' not found]
Fetching with Net::FTP:
ftp://ftp.ticklers.org/pub/CPAN/authors/01mailrc.txt.gz
Couldn't fetch 01mailrc.txt.gz from ftp.ticklers.org
Fetching with LWP:
ftp://cpan.etla.org/pub/CPAN/authors/01mailrc.txt.gz
LWP failed with code[404] message[File '01mailrc.txt.gz' not found]
Fetching with Net::FTP:
ftp://cpan.etla.org/pub/CPAN/authors/01mailrc.txt.gz
Couldn't fetch 01mailrc.txt.gz from cpan.etla.org

Trying with "/opt/csw/bin/lynx -source" to get
ftp://ftp.ticklers.org/pub/CPAN/authors/01mailrc.txt.gz
Syntax Error parsing COLOR in configuration file:
The line must be of the form:
COLOR:INTEGER:FOREGROUND:BACKGROUND

Here FOREGROUND and BACKGROUND must be one of:
The special strings 'nocolor' or 'default', or
black red green brown
blue magenta cyan lightgray
gray brightred brightgreen yellow
brightblue brightmagenta brightcyan white
Offending line:


System call "/opt/csw/bin/lynx -source "ftp://ftp.ticklers.org/pub/CPAN/authors/01mailrc.txt.gz" > /root/.cpan/sources/authors/01mailrc.txt"
returned status 1 (wstat 256)
Warning: expected file [/root/.cpan/sources/authors/01mailrc.txt.gz] doesn't exist

Trying with "/usr/bin/ncftpget" to get
ftp://ftp.ticklers.org/pub/CPAN/authors/01mailrc.txt.gz
01mailrc.txt.gz: 146.31 kB 722.30 kB/s
Going to read /root/.cpan/sources/authors/01mailrc.txt.gz
Use of uninitialized value in concatenation (.) or string at /usr/perl5/5.8.4/lib/i86pc-solaris-64int/Scalar/Util.pm line 30.

Trying with "/opt/csw/bin/lynx -source" to get
ftp://ftp.ticklers.org/pub/CPAN/modules/02packages.details.txt.gz
Syntax Error parsing COLOR in configuration file:
The line must be of the form:
COLOR:INTEGER:FOREGROUND:BACKGROUND

Here FOREGROUND and BACKGROUND must be one of:
The special strings 'nocolor' or 'default', or
black red green brown
blue magenta cyan lightgray
gray brightred brightgreen yellow
brightblue brightmagenta brightcyan white
Offending line:


System call "/opt/csw/bin/lynx -source "ftp://ftp.ticklers.org/pub/CPAN/modules/02packages.details.txt.gz" > /root/.cpan/sources/modules/02packages.details.txt"
returned status 1 (wstat 256)
Warning: expected file [/root/.cpan/sources/modules/02packages.details.txt.gz] doesn't exist

Trying with "/usr/bin/ncftpget" to get
ftp://ftp.ticklers.org/pub/CPAN/modules/02packages.details.txt.gz
02packages.details.txt.gz: 704.12 kB 493.35 kB/s
Going to read /root/.cpan/sources/modules/02packages.details.txt.gz
Use of uninitialized value in concatenation (.) or string at /usr/perl5/5.8.4/lib/i86pc-solaris-64int/Scalar/Util.pm line 30.
Database was generated on Tue, 16 Dec 2008 16:27:00 GMT

There's a new CPAN.pm version (v1.9301) available!
[Current version is v1.7601]
You might want to try
install Bundle::CPAN
reload cpan
without quitting the current session. It should be a seamless upgrade
while we are running...


Trying with "/opt/csw/bin/lynx -source" to get
ftp://ftp.ticklers.org/pub/CPAN/modules/03modlist.data.gz
Syntax Error parsing COLOR in configuration file:
The line must be of the form:
COLOR:INTEGER:FOREGROUND:BACKGROUND

Here FOREGROUND and BACKGROUND must be one of:
The special strings 'nocolor' or 'default', or
black red green brown
blue magenta cyan lightgray
gray brightred brightgreen yellow
brightblue brightmagenta brightcyan white
Offending line:


System call "/opt/csw/bin/lynx -source "ftp://ftp.ticklers.org/pub/CPAN/modules/03modlist.data.gz" > /root/.cpan/sources/modules/03modlist.data"
returned status 1 (wstat 256)
Warning: expected file [/root/.cpan/sources/modules/03modlist.data.gz] doesn't exist

Trying with "/usr/bin/ncftpget" to get
ftp://ftp.ticklers.org/pub/CPAN/modules/03modlist.data.gz
03modlist.data.gz: 151.92 kB 653.80 kB/s
Going to read /root/.cpan/sources/modules/03modlist.data.gz
Use of uninitialized value in concatenation (.) or string at /usr/perl5/5.8.4/lib/i86pc-solaris-64int/Scalar/Util.pm line 30.
Going to write /root/.cpan/Metadata
Running install for module Scalar::Util
Running make for G/GB/GBARR/Scalar-List-Utils-1.19.tar.gz
CPAN: Digest::MD5 loaded ok
Use of uninitialized value in concatenation (.) or string at /usr/perl5/5.8.4/lib/i86pc-solaris-64int/Scalar/Util.pm line 30.
Checksum for /root/.cpan/sources/authors/id/G/GB/GBARR/Scalar-List-Utils-1.19.tar.gz ok
Scanning cache /root/.cpan/build for sizes
Use of uninitialized value in concatenation (.) or string at /usr/perl5/5.8.4/lib/i86pc-solaris-64int/Scalar/Util.pm line 30.
Use of uninitialized value in concatenation (.) or string at /usr/perl5/5.8.4/lib/i86pc-solaris-64int/Scalar/Util.pm line 30.
x Scalar-List-Utils-1.19, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/t, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/t/refaddr.t, 1793 bytes, 4 tape blocks
x Scalar-List-Utils-1.19/t/p_tainted.t, 228 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/p_maxstr.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/p_blessed.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/tainted.t, 672 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/maxstr.t, 717 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/p_minstr.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/p_readonly.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/p_min.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/p_refaddr.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/reftype.t, 1180 bytes, 3 tape blocks
x Scalar-List-Utils-1.19/t/blessed.t, 748 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/lln.t, 1105 bytes, 3 tape blocks
x Scalar-List-Utils-1.19/t/proto.t, 1476 bytes, 3 tape blocks
x Scalar-List-Utils-1.19/t/p_first.t, 217 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/minstr.t, 716 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/first.t, 3187 bytes, 7 tape blocks
x Scalar-List-Utils-1.19/t/p_shuffle.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/min.t, 628 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/reduce.t, 3647 bytes, 8 tape blocks
x Scalar-List-Utils-1.19/t/p_lln.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/max.t, 629 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/p_openhan.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/p_max.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/openhan.t, 574 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/readonly.t, 1041 bytes, 3 tape blocks
x Scalar-List-Utils-1.19/t/isvstring.t, 648 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/p_sum.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/p_reduce.t, 217 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/sum.t, 596 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/shuffle.t, 626 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/t/dualvar.t, 1152 bytes, 3 tape blocks
x Scalar-List-Utils-1.19/t/00version.t, 416 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/t/weak.t, 3001 bytes, 6 tape blocks
x Scalar-List-Utils-1.19/t/p_reftype.t, 156 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/inc, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/inc/Test, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/inc/Test/Builder.pm, 25016 bytes, 49 tape blocks
x Scalar-List-Utils-1.19/inc/Test/Builder, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/inc/Test/Builder/Module.pm, 1239 bytes, 3 tape blocks
x Scalar-List-Utils-1.19/inc/Test/More.pm, 14095 bytes, 28 tape blocks
x Scalar-List-Utils-1.19/inc/Module, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install.pm, 8073 bytes, 16 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install/InstallDirs.pm, 656 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install/Include.pm, 524 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install/Makefile.pm, 5883 bytes, 12 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install/Metadata.pm, 7998 bytes, 16 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install/Win32.pm, 1806 bytes, 4 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install/Fetch.pm, 2456 bytes, 5 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install/Base.pm, 1053 bytes, 3 tape blocks
x Scalar-List-Utils-1.19/inc/Module/Install/Can.pm, 1788 bytes, 4 tape blocks
x Scalar-List-Utils-1.19/Changes, 9573 bytes, 19 tape blocks
x Scalar-List-Utils-1.19/lib, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/lib/List, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/lib/List/Util.pm, 7088 bytes, 14 tape blocks
x Scalar-List-Utils-1.19/lib/Scalar, 0 bytes, 0 tape blocks
x Scalar-List-Utils-1.19/lib/Scalar/Util.pm, 9079 bytes, 18 tape blocks
x Scalar-List-Utils-1.19/MANIFEST, 851 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/META.yml, 302 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/Util.xs, 10579 bytes, 21 tape blocks
x Scalar-List-Utils-1.19/mytypemap, 250 bytes, 1 tape blocks
x Scalar-List-Utils-1.19/multicall.h, 4598 bytes, 9 tape blocks
x Scalar-List-Utils-1.19/Makefile.PL, 1021 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/README, 795 bytes, 2 tape blocks
x Scalar-List-Utils-1.19/SIGNATURE, 4186 bytes, 9 tape blocks
Removing previously used /root/.cpan/build/Scalar-List-Utils-1.19

CPAN.pm: Going to build G/GB/GBARR/Scalar-List-Utils-1.19.tar.gz

Checking if your kit is complete...
Looks good
Writing Makefile for List::Util
cp lib/List/Util.pm blib/lib/List/Util.pm
cp lib/Scalar/Util.pm blib/lib/Scalar/Util.pm
/usr/perl5/5.8.4/bin/perl "-Iinc" /usr/perl5/5.8.4/lib/ExtUtils/xsubpp -typemap /usr/perl5/5.8.4/lib/ExtUtils/typemap Util.xs > Util.xsc && mv Util.xsc Util.c
cc -c -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TS_ERRNO -xO3 -xspace -xildoff -DVERSION=\"1.19\" -DXS_VERSION=\"1.19\" -KPIC "-I/usr/perl5/5.8.4/lib/i86pc-solaris-64int/CORE" -DPERL_EXT Util.c
Running Mkbootstrap for List::Util ()
chmod 644 Util.bs
rm -f blib/arch/auto/List/Util/Util.so
LD_RUN_PATH="" cc -G Util.o -o blib/arch/auto/List/Util/Util.so
chmod 755 blib/arch/auto/List/Util/Util.so
cp Util.bs blib/arch/auto/List/Util/Util.bs
chmod 644 blib/arch/auto/List/Util/Util.bs
Manifying blib/man3/List::Util.3
Manifying blib/man3/Scalar::Util.3
/usr/bin/make -- OK
Running make test
PERL_DL_NONLAZY=1 /usr/perl5/5.8.4/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/*.t
t/00version.....ok
t/blessed.......ok
t/dualvar.......ok
t/first.........ok
2/17 skipped: Poor man's MULTICALL can't cope
t/isvstring.....ok
t/lln...........ok
t/max...........ok
t/maxstr........ok
t/min...........ok
t/minstr........ok
t/openhan.......ok
t/p_blessed.....ok
t/p_first.......ok
t/p_lln.........ok
t/p_max.........ok
t/p_maxstr......ok
t/p_min.........ok
t/p_minstr......ok
t/p_openhan.....ok
t/p_readonly....ok
t/p_reduce......ok
t/p_refaddr.....ok
t/p_reftype.....ok
t/p_shuffle.....ok
t/p_sum.........ok
t/p_tainted.....ok
t/proto.........ok
t/readonly......ok
t/reduce........ok
2/23 skipped: Poor man's MULTICALL can't cope
t/refaddr.......ok
t/reftype.......ok
t/shuffle.......ok
t/sum...........ok
t/tainted.......ok
t/weak..........ok
All tests successful, 4 subtests skipped.
Files=35, Tests=380, 1 wallclock secs ( 1.02 cusr + 0.02 csys = 1.04 CPU)
/usr/bin/make test -- OK
Running make install
Installing /usr/perl5/5.8.4/lib/i86pc-solaris-64int/auto/List/Util/Util.so
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Writing /usr/perl5/5.8.4/lib/i86pc-solaris-64int/auto/List/Util/.packlist
Appending installation info to /usr/perl5/5.8.4/lib/i86pc-solaris-64int/perllocal.pod
/usr/bin/make install -- OK

cpan> Lockfile removed.
[root] deckard:/root #
[slim] deckard:/usr/local/squeezecenter-7.3.1-24296 $ ./slimserver.pl
[08-12-16 19:00:28.2242] Slim::Utils::PluginManager::enablePlugins (423) Couldn't load Plugins::Alien::Plugin. Error: Plugin is incompatible with this version of SqueezeCenter. Please update.
[08-12-16 19:00:28.3508] Slim::Utils::PluginManager::enablePlugins (423) Couldn't load Plugins::WeatherTime::Plugin. Error: Plugin is incompatible with this version of SqueezeCenter. Please update.
^C[slim] deckard:/usr/local/squeezecenter-7.3.1-24296 $
[root] deckard:/root # svcadm enable slimserver
[root] deckard:/root # svcadm disable slimserver
[root] deckard:/root # svcadm enable slimserver
[root] deckard:/root # ps -fu slim
UID PID PPID C STIME TTY TIME CMD
slim 5772 1 3 19:00:41 ? 0:01 /usr/bin/perl -w /usr/local/slimserver/slimserver.pl --logfile=/usr/local/slims
[root] deckard:/root # ps -fu slim
UID PID PPID C STIME TTY TIME CMD
slim 5772 1 7 19:00:41 ? 0:03 /usr/bin/perl -w /usr/local/slimserver/slimserver.pl --logfile=/usr/local/slims
[root] deckard:/root #

Live Upgrade from nv_103 to nv_104

So last week I managed to Live Upgrade my ufs root to a zfs root and it all worked fine.
This week with the release of nv_104 it's time to do a zfs Live Upgrade.
Needless to say it worked a treat.
Here's the pertinent output.

I downloaded the iso image and mounted it loopback - no need to burn DVDs;
[root] deckard:/ # lofiadm -a /data/solaris/sol10/sol-nv-b104-x86-dvd.iso
[root] deckard:/ # mount -F hsfs /dev/lofi/2 /mnt

Don't forget to add the new Live Upgrade packages before starting work;
[root] deckard:/ # pkgadd -d /mnt/Solaris_11/Product SUNWlucfg SUNWluu SUNWlur
[root] deckard:/ # lustatus
Boot Environment Is Active Active Can Copy
Name Complete Now On Reboot Delete Status
-------------------------- -------- ------ --------- ------ ----------
ufs_nv_101 yes no no yes -
zfs_nv_103 yes yes yes no -
[root] deckard: # lucreate -n zfs_nv_104
Checking GRUB menu...
System has findroot enabled GRUB
Analyzing system configuration.
Comparing source boot environment file systems with the file
system(s) you specified for the new boot environment. Determining which
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Updating system configuration files.
Creating configuration for boot environment .
Source boot environment is .
Creating boot environment .
Cloning file systems from boot environment to create boot environment .
Creating snapshot for on .
Creating clone for on .
Setting canmount=noauto for in zone on .
Saving existing file in top level dataset for BE as //boot/grub/menu.lst.prev.
File propagation successful
Copied GRUB menu from PBE to ABE
No entry for BE in GRUB menu
Population of boot environment successful.
Creation of boot environment successful.
[root] deckard:/ # zfs list
NAME USED AVAIL REFER MOUNTPOINT
rpool 35.8G 106G 32.5K /rpool
rpool/ROOT 13.8G 106G 18K /rpool/ROOT
rpool/ROOT/zfs_nv_103 13.8G 106G 13.8G /.alt.zfs_nv_103
rpool/ROOT/zfs_nv_104 176K 106G 13.8G /tmp/.alt.luupdall.7317
rpool/dump 6.00G 106G 6.00G -
rpool/swap 16G 122G 4.89M -
[root] deckard:/mnt/Solaris_11 # lustatus
Boot Environment Is Active Active Can Copy
Name Complete Now On Reboot Delete Status
-------------------------- -------- ------ --------- ------ ----------
ufs_nv_101 yes no no yes -
zfs_nv_103 yes yes yes no -
zfs_nv_104 yes no no yes -
[root] deckard:/root # luupgrade -u -n zfs_nv_104 -s /mnt

System has findroot enabled GRUB
No entry for BE in GRUB menu
Uncompressing miniroot
Copying failsafe kernel from media.
52023 blocks
miniroot filesystem is
Mounting miniroot at
Validating the contents of the media .
The media is a standard Solaris media.
The media contains an operating system upgrade image.
The media contains version <11>.
Constructing upgrade profile to use.
Locating the operating system upgrade program.
Checking for existence of previously scheduled Live Upgrade requests.
Creating upgrade profile for BE .
Checking for GRUB menu on ABE .
Saving GRUB menu on ABE .
Checking for x86 boot partition on ABE.
Determining packages to install or upgrade for BE .
Performing the operating system upgrade of the BE .
CAUTION: Interrupting this process may leave the boot environment unstable
or unbootable.
Upgrading Solaris: 100% completed
Installation of the packages from this media is complete.
Restoring GRUB menu on ABE .
Adding operating system patches to the BE .
The operating system patch installation is complete.
ABE boot partition backing deleted.
PBE GRUB has no capability information.
PBE GRUB has no versioning information.
ABE GRUB is newer than PBE GRUB. Updating GRUB.
GRUB update was successful.
Configuring failsafe for system.
Failsafe configuration is complete.
INFORMATION: The file on boot
environment contains a log of the upgrade operation.
INFORMATION: The file on boot
environment contains a log of cleanup operations required.
WARNING: <1> packages failed to install properly on boot environment .
INFORMATION: The file on
boot environment contains a list of packages that failed to
upgrade or install properly.
INFORMATION: Review the files listed above. Remember that all of the files
are located on boot environment . Before you activate boot
environment , determine if any additional system maintenance
is required or if additional media of the software distribution must be
installed.
The Solaris upgrade of the boot environment is partially complete.
Installing failsafe
Failsafe install is complete.
[root] deckard:/root # lustatus
Boot Environment Is Active Active Can Copy
Name Complete Now On Reboot Delete Status
-------------------------- -------- ------ --------- ------ ----------
ufs_nv_101 yes no no yes -
zfs_nv_103 yes yes yes no -
zfs_nv_104 yes no no yes -
[root] deckard:/root # luactivate zfs_nv_104
System has findroot enabled GRUB
Generating boot-sign, partition and slice information for PBE
WARNING: <1> packages failed to install properly on boot environment .
INFORMATION: on boot
environment contains a list of packages that failed to
upgrade or install properly. Review the file before you reboot the system
to determine if any additional system maintenance is required.

Generating boot-sign for ABE
Saving existing file in top level dataset for BE as //etc/bootsign.prev.
Generating partition and slice information for ABE
Copied boot menu from top level dataset.
Generating direct boot menu entries for PBE.
Generating xVM menu entries for PBE.
Generating direct boot menu entries for ABE.
Generating xVM menu entries for ABE.
Disabling splashimage
Re-enabling splashimage
No more bootadm entries. Deletion of bootadm entries is complete.
GRUB menu default setting is unaffected
Done eliding bootadm entries.

**********************************************************************

The target boot environment has been activated. It will be used when you
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You
MUST USE either the init or the shutdown command when you reboot. If you
do not use either init or shutdown, the system will not boot using the
target BE.

**********************************************************************

In case of a failure while booting to the target BE, the following process
needs to be followed to fallback to the currently working boot environment:

1. Boot from Solaris failsafe or boot in single user mode from the Solaris
Install CD or Network.

2. Mount the Parent boot environment root slice to some directory (like
/mnt). You can use the following command to mount:

mount -Fzfs /dev/dsk/c0d0s0 /mnt

3. Run utility with out any arguments from the Parent boot
environment root slice, as shown below:

/mnt/sbin/luactivate

4. luactivate, activates the previous working boot environment and
indicates the result.

5. Exit Single User mode and reboot the machine.

**********************************************************************

Modifying boot archive service
Propagating findroot GRUB for menu conversion.
File propagation successful
File propagation successful
File propagation successful
Deleting stale GRUB loader from all BEs.
File deletion successful
File deletion successful
File deletion successful
Activation of boot environment successful.
[root] deckard:/root # lustatus
Boot Environment Is Active Active Can Copy
Name Complete Now On Reboot Delete Status
-------------------------- -------- ------ --------- ------ ----------
ufs_nv_101 yes no no yes -
zfs_nv_103 yes yes no no -
zfs_nv_104 yes no yes no -
[root] deckard:/root # shutdown -y -g0 -i6

Shutdown started. Tuesday, 16 December 2008 18:46:49 GMT

Changing to init state 6 - please wait
Broadcast Message from root (pts/3) on deckard Tue Dec 16 18:46:49...
THE SYSTEM deckard IS BEING SHUT DOWN NOW ! ! !
Log off now or risk your files being damaged

updating /platform/i86pc/amd64/boot_archive
updating /platform/i86pc/boot_archive
propagating updated GRUB menu


When rebooted it all looked fine. Happy days!!

[root] deckard:/root # lustatus
Boot Environment Is Active Active Can Copy
Name Complete Now On Reboot Delete Status
-------------------------- -------- ------ --------- ------ ----------
ufs_nv_101 yes no no yes -
zfs_nv_103 yes no no yes -
zfs_nv_104 yes yes yes no -

First post. No content.

Hello if you've stumbled across my random musings.
This is mostly an aide-memoir for myself relating to Sun Solaris at home and work but you never know, you might find something of interest. Things I might cover include Solaris, Nevada, Open Solaris, Squeezebox slimserver software. That's the plan. Let's see how it works out.
Cheers and out.