Some of the work I’ve done recently involved some changes to virt-install(1) to teach it how to install xVM guests from OpenSolaris AI servers – work that you’ll see going back soon as a patch to virt-install as part of our xVM 3.3 changes.

This ended up shaking a few bugs out of AI and OpenSolaris, two of which became stoppers for the 2009.06 release (which made for a rather exciting weekend) one was fixed, the other was documented in the release notes.

Along the way though, and the point of this blog post, I got to learn a bit more about OpenSolaris and the boot process when we’re using AI and what to do when things go wrong.

For x86 (the only thing I really cared about in my case, sparc differs slightly) AI works by downloading the kernel and a very small boot archive via pxe and tftp. The client then boots with this image and the svc:/system/filesystem/root:live-media SMF service arranges to download solaris.zlib and solarismisc.zlib files, and mounts them on the client.

However, should that service fail for some reason – we’re left with a pretty unfriendly OpenSolaris environment. There’s a tradeoff between fast/low memory installs and easy-to-debug environments so it’s a tough one to call.

However, if you do need to debug stuff early in boot with an AI image, I added a comment to Defect 6851 that explains how you do it. This came from an email I was writing to a colleague today who was running into the same problem – I figured posting those comments to the bug report and writing this short blog post would be a good thing to do. Hope this helps someone out there?