UltraSparc install

OpenSolaris (2009.06) still does not have Sparc/UltraSparc installation media. To install OpenSolaris on Sparc one must first install it on x86 and use that installation to net boot and install on Sparc. But what if we do not have an x86 to spare for this purpose?

Here are some guides taken from the web summarizing the tasks required to get an OpenSolaris installation on Sparc/UltraSparc

Install the latest Nevada

  1. First of all get the latest Nevada (Solaris Express Community Edition) from OpenSolaris.org and install it.
  2. Then we will need a compiler, Sun Studio, from www.sun.com
  3. From http://dlc.sun.com/osol/install/downloads/current/ download and install SUNWzoneint that will be necessary to compile pkg

Compile and install pkg

Now we need to download and install pkg (gate), which is OpenSolaris' package manager

# setup misc environment variables
WS=/tmp/pkg
PATH=$WS/gate/proto/root_`uname -p`/usr/bin:$PATH
PYTHONPATH=$WS/gate/proto/root_`uname -p`/usr/lib/python2.4/vendor-packages
export WS PATH PYTHONPATH
  1. download and build the ips source in /tmp/pkg
mkdir $WS cd $WS hg clone ssh://anon@hg.opensolaris.org/hg/pkg/gate cd gate/src make install

Now that the system is ready and we have pkg, follow the script below:

# we're going to do our install in /a
PKG_IMAGE=/a; export PKG_IMAGE
  1. mount our zpool on /a
mkdir -p $PKG_IMAGE mount -F zfs rpool/ROOT/opensolaris $PKG_IMAGE mkdir -p $PKG_IMAGE/opt mount -F zfs rpool/ROOT/opensolaris/opt $PKG_IMAGE/opt
  1. create the basic opensolaris install image.
#pkg image-create -F -a opensolaris.org=http://pkg.opensolaris.org $PKG_IMAGE pkg image-create -f -F -a opensolaris.org=http://pkg.opensolaris.org/dev $PKG_IMAGE # Sparc requires the dev repos #pkg refresh pkg -R $PKG_IMAGE refresh --full # We're not clobbering our original or changing it so the next few are mine too pkg -R $PKG_IMAGE install entire pkg -R $PKG_IMAGE install SUNWcsd SUNWcs pkg -R $PKG_IMAGE install babel_install
  1. seed the initial smf repository
cp $PKG_IMAGE/lib/svc/seed/global.db $PKG_IMAGE/etc/svc/repository.db chmod 0600 $PKG_IMAGE/etc/svc/repository.db chown root:sys $PKG_IMAGE/etc/svc/repository.db
  1. setup smf profiles
ln -s ns_files.xml $PKG_IMAGE/var/svc/profile/name_service.xml ln -s generic_limited_net.xml $PKG_IMAGE/var/svc/profile/generic.xml ln -s inetd_generic.xml $PKG_IMAGE/var/svc/profile/inetd_services.xml ln -s platform_none.xml $PKG_IMAGE/var/svc/profile/platform.xml