During a recent Solaris 11 Hands on Workshop, a couple of attendees mentioned troubles installing Solaris 10 as a VirtualBox guest. In truth, it had been quite a while since I last installed Solaris 10, so I was unable to help at that particular moment, other than to recommend verifying the md5 checksum of the downloaded ISO image - a very common installation problem.
Thinking a bit more about this, the last time I installed Solaris 10 as a guest was 10/08 (u6) and it would have been on version 3.something of VirtualBox. Thanks to Live Upgrade and VirtualBox's cloning and snapshot capabilities, I really haven't had a reason to install anything newer. Until now.
Trying to duplicate my customer's problems, I grabbed a copy of the Solaris 10 8/11 ISO image from the Oracle Technology Network and verified the MD5 checksum. I then configured a guest VM with the following settings:
- CPU: 1
- Video Memory: 32MB
- Base Memory: 1024MB
In other words, a pretty basic 1GB guest machine. More important, it is exactly the same configuration as the half dozen or so other guests that are running 8/11 just fine, courtesy of Live Upgrade.
After starting the guest machine with the Solaris 10 8/11 ISO image in the CDROM device, you quickly get a kernel oops that looks something like this.
Click image to enlarge
That's not quite what I expected, but it does look like what the workshop attendees were describing. Trying Solaris 10 10/09 (u8) produces
slightly different results (the guest quietly stalls), but ultimately ends up in the same place - a failed installation. This led me down a path of changing the chipset to ICH9 and enabling IO APIC which helped with u8, but the u10 install was still punting.
Then I remembered reading something in the release notes about the minimum memory requirements bumping up. Sure enough, when I look up the System Requirements in theSolaris 10 8/11 Installation Guide, I see that the minimum memory size for x86 is now 1.5GB. After adjusting the base memory to 1500MB in the guest, the installation completes as expected.
The moral to this story is that minimum system requirements are documented for a reason and they really should be followed.