Installing Solaris Indiana as Xen domU (guest) on Ubuntu

| | Comments ()


If you have any sense, you've already virtualized your DC. And if you have a lack of cents, you've standardized on Xen based on a commodity Linux like Debian, Ubuntu, Centos/Red Hat or openSUSE/SLES. Solaris/ZFS still fits well in that environment as an iscsi or nfs server.

Plus, it's cool.


I'm assuming you already have a working Xen 3 install on Linux, and that you have some familiarity with creating and running Xen guests. I'm using Ubuntu 7.10 and the xen-hypervisor-3.1 package. Here's details on the hardware.

Getting down to business

  1. Download the iso from
  2. Mount the iso in your dom0: mount -o loop os200805.iso /mnt
  3. Copy the install kernel and ramdisk into your dom0 file system:
    cp /mnt/platform/i86xpv/kernel/amd64/unix /home/xen/kernels/sol-indiana/unix
    cp /mnt/boot/x86.microroot /home/xen/kernels/sol-indiana/x86.microroot
  4. Create a xen conf file for the installation. It should look something like this, and dear god please change /dev/changeme to a meaningful block device on your system. Bonus points for using a different mac address.
    name = 'solaris-indiana'
    memory = '1024'
    disk = [ 'file:/dev/changeme,0,w', 'file:/home/xen/iso/os200805.iso,6:cdrom,r' ]
    kernel = '/home/xen/kernels/sol-indiana/unix'
    ramdisk = '/home/xen/kernels/sol-indiana/x86.microroot'
    extra = '/platform/i86xpv/kernel/amd64/unix - nowin -B install_media=cdrom'
    vif = [ 'mac=00:16:3e:0c:61:50,bridge=xenbr0' ]
  5. Start the domain:
    xm create -c sol-indiana-install.cfg
  6. Select keyboard layout, then your language
  7. Login as jack/jack
  8. Type ifconfig -a to find your ip address assigned by dhcp
  9. Login remotely with ssh -X jack@[ip address]
  10. Start the install process: su root -c gui-install (when prompted the root password is 'opensolaris')
  11. Go through the install process, and at the end choose quit rather than reboot
  12. Use scp to copy boot_archive to dom0 disk:
    scp /a/platform/i86pc/amd64/boot_archive root@[dom u ip address]:/home/xen/kern els/sol-indiana/boot_archive
  13. Shutdown the solaris instance: su root -c 'halt'
  14. Create a new config file (sol-indiana.cfg):
    name = 'solaris-indiana'
    memory = '1024'
    disk = [ 'file:/dev/changme,0,w' ]
    kernel = '/home/xen/kernels/sol-indiana/unix'
    ramdisk = '/home/xen/kernels/sol-indiana/boot_archive'
    extra = '/platform/i86xpv/kernel/amd64/unix -B zfs-bootfs=rpool/27'
    vif = [ 'mac=00:16:3e:0c:61:50,bridge=xenbr0' ]
  15. Start it back up: xm create -c sol-indiana.cfg


Recent Activity

  • Sam tweeted, "is email down on the internets today? having lots of email problems."
  • Sam tweeted, "Last year on V day we were flying for a week in Kuai on #novell 's dime, while our son stayed home. This year, dinner at Cactus with a baby."
  • Sam tweeted, "amazing that we're selling out our childrens' future for this banking system"
  • Sam tweeted, " "The next four bonus recipients received a combined million""
  • Sam tweeted, " "The top four bonus recipients received a combined million""
  • Sam tweeted, " "Merrill Lynch secretly moved up the planned date to allocate bonuses and then richly rewarded their failed executives""
  • Sam tweeted, "@mmaunder"
  • Sam tweeted, "@tonyn858 ha! sorry - was thinking of someone else. you have your own special brand of corporate incompetence that I would never criticize."