With the release of OpenSolaris 2009.06, SPARC is now an officially supported platform.
Unfortunately, older SPARCs with an OBP revision less than 4.17 are not currently supported due to lack of wanboot in the firmware. It is still possible to use wanboot on these machines, however it requires SXCE install media.
To add insult to injury, the AI client miniroot (understandably) makes a number of assumptions about the environment, particularly with respect to network interface configuration (specifically netbootinfo and dhcpagent). For the curious, these issues have been documented in Bugzilla under Bug 9549.
What follows is a workaround to install OpenSolaris on older SPARC hardware using wanboot from the SXCE install media. This process assumes that you have correctly configured the AI server and client as documented in the OpenSolaris Automated Installer Guide.
To get started, you will need to download and burn the SXCE install media (snv_111 or higher is required due to a number of recent fixes to wanboot). Place the install media into your DVD drive, drop into the PROM, and issue:
{0} ok boot cdrom -F wanboot -o dhcpAt this point, the system will boot wanboot from the install media and pick up its configuration from DHCP.
Eventually, the boot process will fail with an error:
Rebooting with command: boot cdrom -F wanboot -o dhcp Boot device: /pci@8,700000/scsi@6/disk@6,0:f File and args: -F wanboot -o dhcp <time unavailable> wanboot info: WAN boot messages->console <time unavailable> wanboot info: configuring /pci@8,600000/pci@1/network@0 1000 Mbps FDX Link up <time unavailable> wanboot info: Starting DHCP configuration <time unavailable> wanboot info: DHCP configuration succeeded <time unavailable> wanboot info: Default net-config-strategy: dhcp <time unavailable> wanboot progress: wanbootfs: Read 366 of 366 kB (100%) <time unavailable> wanboot info: wanbootfs: Download complete Sat Jul 11 01:40:14 wanboot progress: miniroot: Read 175868 of 175868 kB (100%) Sat Jul 11 01:40:14 wanboot info: miniroot: Download complete SunOS Release 5.11 Version snv_111b 64-bit Copyright 1983-2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. strplumb: open /devices/pseudo/clone@0:sd failed: 19 Hostname: opensolaris Remounting root read/write Probing for device nodes ... Preparing automated install image for use The AI image will be retrieved from /export/aiserver/osol-0906-ai-sparc/ directory Downloading solaris.zlib archive --18:41:16-- http://10.8.0.8:5555/export/aiserver/osol-0906-ai-sparc//solaris.zlib => `/tmp/solaris.zlib' Connecting to 10.8.0.8:5555... failed: Network is unreachable. FAILED Requesting System Maintenance Mode (See /lib/svc/share/README for more information.) Console login service(s) cannot run Enter user name for system maintenance (control-d to bypass):At this point you will need to login as root (the password will be empty) and configure your network interfaces manually:
# ifconfig -a plumb # ifconfig <interface> dhcpYou will also need to enable DNS; this is required for
pkg(1)
to locate and install packages. It should be noted that the wanboot miniroot is very minimal; you do not have access to some of the more common commands such as cp
and rmdir
. Also, the miniroot is using dcfs(7FS)
which means some additional steps need to be taken to modify the filesystem contents:# cat > /etc/resolv.conf nameserver <address> ^D # rm /etc/nsswitch.conf # cat /etc/nsswitch.dns > /etc/nsswitch.confAt this point, the network has been configured correctly, however we will need to clean up state to allow the
svc:/system/filesystem/root:live-media
service to continue booting:# umount /etc/netboot # rm -rf /etc/netboot # umount /tmpBefore clearing the
svc:/system/filesystem/root:live-media
service, I had to disable a couple of services for a clean boot. The svc:/platform/sun4u/dscp:default
and svc:/platform/sun4u/sckmd:default
services were not necessary for my hardware and if left enabled, caused the install process to fail. These services are safe to disable unless you have the hardware referenced in the services:# svcadm disable dscp # svcadm disable sckmdYou are now free to clear the
svc:/system/filesystem/root:live-media
service:# svcadm clear root:live-media Remounting root read/write Probing for device nodes ... Preparing automated install image for useBefore logging out, you will also want to clear the
svc:/network/dns/multicast:default
service to ensure service discovery works correctly:# svcadm clear dns/multicastOnce you logout from the maintenance shell the AI process will continue:
# logout The AI image will be retrieved from /export/aiserver/osol-0906-ai-sparc/ directory Downloading solaris.zlib archive --18:43:25-- http://10.8.0.8:5555/export/aiserver/osol-0906-ai-sparc//solaris.zlib => `/tmp/solaris.zlib' Connecting to 10.8.0.8:5555... connected. HTTP request sent, awaiting response... 200 OK Length: 83,334,656 (79M) [text/plain] 100%[====================================>] 83,334,656 50.36M/s 18:43:26 (50.28 MB/s) - `/tmp/solaris.zlib' saved [83334656/83334656] Downloading solarismisc.zlib archive --18:43:26-- http://10.8.0.8:5555/export/aiserver/osol-0906-ai-sparc//solarismisc.zlib => `/tmp/solarismisc.zlib' Connecting to 10.8.0.8:5555... connected. HTTP request sent, awaiting response... 200 OK Length: 3,857,408 (3.7M) [text/plain] 100%[====================================>] 3,857,408 --.--K/s 18:43:26 (47.53 MB/s) - `/tmp/solarismisc.zlib' saved [3857408/3857408] --18:43:26-- http://10.8.0.8:5555/export/aiserver/osol-0906-ai-sparc//install.conf => `/tmp/install.conf' Connecting to 10.8.0.8:5555... connected. HTTP request sent, awaiting response... 200 OK Length: 61 [text/plain] 100%[====================================>] 61 --.--K/s 18:43:26 (2.44 MB/s) - `/tmp/install.conf' saved [61/61] Done mounting automated install image Configuring devices. Reading ZFS config: done. opensolaris console login: Service discovery phase initiated Service name to look up: 0906sparc Service discovery finished successfully Process of obtaining configuration manifest initiated Configuration manifest obtained Automated Installation started The progress of the Automated Installation can be followed by viewing the logfile at /tmp/install_logAt this point you should be good to go - Enjoy!