Paravirtualized OpenSolaris 2008.11 domU Using Debian Lenny

This guide will help you to create an OpenSolaris paravirtualized Xen guest under Debian Lenny.



Download the OpenSolaris 2008.11 Live CD:

cd /xen/opensolaris ; wget
mount -o loop osol-0811.iso /mnt/loop
cp /mnt/loop/platform/i86xpv/kernel/amd64/unix /xen/opensolaris
cp /mnt/loop/boot/x86.microroot /xen/opensolaris

This creates a 10GB image for use as the root:

dd if=/dev/zero of=/xen/opensolaris/disk.img bs=1024k count=1 seek=10000
vi /xen/opensolaris/opensolaris.cfg
name = "opensolaris"
vcpus = 1
memory = 1024
kernel = "/xen/opensolaris/unix"
ramdisk = "/xen/opensolaris/x86.microroot"
extra = "/platform/i86xpv/kernel/amd64/unix -B console=ttya,livemode=text"
disk = ['file:/xen/opensolaris/osol-0811.iso,6:cdrom,r','file:/xen/opensolaris/disk.img,0,w']
#disk = ['file:/xen/opensolaris/osol-0811.iso,6:cdrom,r','phy:/dev/sdc1,0,w']
vif = ['']
on_shutdown = "destroy"
on_reboot = "destroy"
on_crash = "destroy"

Start the install procedure starting the domU with a console:

xm create -c opensolaris.cfg
Using config file "./opensolaris.cfg".
Started domain opensolaris
                          v3.2-1 chgset 'unavailable'
SunOS Release 5.11 Version snv_101b 64-bit
Copyright 1983-2008 Sun Microsystems, Inc.  All rights reserved.
Use is subject to license terms.
Hostname: opensolaris
Remounting root read/write
Probing for device nodes ...
WARNING: g.e. still in use!
Preparing live image for use
Done mounting Live image
USB keyboard
 1. Albanian                      22. Latvian                       
 2. Belarusian                    23. Macedonian                    
 3. Belgian                       24. Malta_UK                      
 4. Bulgarian                     25. Malta_US                      
 5. Croatian                      26. Norwegian                     
 6. Czech                         27. Polish                        
 7. Danish                        28. Portuguese                    
 8. Dutch                         29. Russian                       
 9. Finnish                       30. Serbia-And-Montenegro         
10. French                        31. Slovenian                     
11. French-Canadian               32. Slovakian                     
12. Hungarian                     33. Spanish                       
13. German                        34. Swedish                       
14. Greek                         35. Swiss-French                  
15. Icelandic                     36. Swiss-German                  
16. Italian                       37. Traditional-Chinese           
17. Japanese-type6                38. TurkishQ                      
18. Japanese                      39. TurkishF                      
19. Korean                        40. UK-English                    
20. Latin-American                41. US-English                    
21. Lithuanian                    
To select the keyboard layout, enter a number [default 41]:

Here you can just press enter to continue if you are using a US keyboard.

 1. Chinese - Simplified          
 2. Chinese - Traditional         
 3. English                       
 4. French                        
 5. German                        
 6. Italian                       
 7. Japanese                      
 8. Korean                        
 9. Portuguese - Brazil           
10. Russian                       
11. Spanish                       
To select desktop language, enter a number [default is 3]: 

Here you can press enter again for English.

User selected: English
Configuring devices.
Mounting cdroms
Reading ZFS config: done.
opensolaris console login: 

Log in with the credentials jack/jack (username/password):

opensolaris console login: jack
Sun Microsystems Inc.   SunOS 5.11      snv_101b        November 2008

Run the VNC server and set up a VNC password:

mkdir .vnc
cp .Xclients .vnc/xstartup
ifconfig -a

Now you can VNC from any client to IPADDRESS:1.

Go through the install steps and wait until you get to the screen that it asks for a reboot. Before rebooting you will need to find the ZFS ID for the bootfs in rpool. Open the terminal in the VNC session (along the top bar) and type:

pfexec zdb -vvv rpool | grep bootfs

You will see a line that appears below that will say:

bootfs = NUMBER

Note: that after the bootfs line comes up you can press Ctrl+C to cancel or you will wait for quite a while.

Now you can restart the guest, when you click restart the opensolaris domain should shut down.

Now that the OpenSolaris system is installed on the disk image, we can use that to boot from. As of OpenSolaris 2008.11, the root volume is ZFS.

vi /xen/opensolaris/opensolaris.cfg
name = "opensolaris"
vcpus = 1
memory = 1024
kernel = "/xen/opensolaris/unix"
ramdisk = "/xen/opensolaris/x86.microroot"
extra = '/platform/i86xpv/kernel/amd64/unix -B console=ttya,zfs-bootfs=rpool/56,bootpath="/xpvd/xdf@0:a"'
#disk = ['phy:/dev/sdc1,0,w']
disk = ['file:/xen/opensolaris/disk.img,0,w']
vif = ['']
on_shutdown = "destroy"
on_reboot = "destroy"
on_crash = "destroy"

Now this is where the rpool ZFS ID comes in handy. In the extra line you will see that there is an entry that says "bootfs=rpool/56", this is what my ID is so just replace 56 with whatever your ID was.

Share this page:

0 Comment(s)