Switching from Nevada to OpenSolaris
By mrj on Dec 17, 2009
The scripts lets you create a new (non COW) OpenSolaris BE on a nevada zfs root based system (or OpenSolaris system). You can use this to transition a Nevada zfs root based system to OpenSolaris. You can also choose to install an arbitrary OpenSolaris build (i.e. if you want to downgrade).
DISCLAIMER: this is totally unsupported by Sun, could mess up your system, etc. etc.
I strongly recommend creating a scratch BE to run this script out of, in case something goes wrong.
You can grab an updated copy here. Remember the DISCLAIMER above.. Back up your data first!
For folks inside of SWAN, here's a cheatsheet...
Write down your IP addr, netmask, gateway, NIS domain
Create & switch to a scratch BE
# lucreate -n scratch-be # luactivate scratch-be # init 6Install the new OpenSolaris BE (this is not an upgrade, it's a fresh install into a BE on the same rpool as your current BEs)
# pkgadd -d /net/girltalk2/export/mrj/pkg-gate/packages/i386/ \\ SUNWipkg SUNWpython-ply SUNWpython-pycurl # wget http://blogs.sun.com/mrj/resource/create-be # chmod a+x create-be # /root/create-be --build=129 --bename=osol129 --repo=http://ipkg.sfbay/dev --menu="osol129"If you want to install additional software, i.e. setup a build machine
# zfs set mountpoint="/mnt" rpool/ROOT/osol129 # zfs mount rpool/ROOT/osol129 # pkg -R /mnt set-publisher -O http://ipkg.sfbay/extra extra # pkg -R /mnt install firstname.lastname@example.org # zfs umount rpool/ROOT/osol129If you want to be able to build xvm-gate
# zfs set mountpoint="/mnt" rpool/ROOT/osol129 # zfs mount rpool/ROOT/osol129 # pkg -R /mnt install \\ SUNWgmake@3.81-0.129 \\ SUNWbcc@0.16.17-0.129 \\ SUNWgnuemail@example.com \\ SUNWxwinc@0.5.11-0.129 \\ SUNWgnomefirstname.lastname@example.org \\ SUNWlibtool@1.5.22-0.129 \\ SUNWgnuemail@example.com \\ SUNWaconf@2.63-0.129 \\ SUNWgit@184.108.40.206-0.129 \\ SUNWxvm@3.3.2-0.129 # zfs umount rpool/ROOT/osol129Reboot into your new be, configure the network, etc. migrate over other BE settings, e.g. sshd config.
# bootadm list-menu # bootadm set-menu default=....your-osol129-menu-number.... # reboot : run through sysconfig, reboot : login # beadm mount ....your-old-be.... /mnt # cp /mnt/etc/ssh/sshd_config /etc/ssh/ # cp /mnt/etc/ssh/\*key\* /etc/ssh/ # svcadm refresh ssh;svcadm restart ssh : migrate over other customizations you might have # beadm umount ....your-old-be....