Updating menu.lst for Solaris on Xen

If you were sent here by bfu or upgrade, then bootadm could not automatically process your $ROOT/boot/grub/menu.lst file. You must manually change your menu.lst file, or the machine may be unable to boot.

Background

The port of Solaris to Xen virtualization changes the boot architecture of Solaris on x86 platforms. Formerly, Solaris used grub to boot multiboot, which was then responsible for loading unix. Now, unix can be directly loaded by grub.

menu.lst Changes if you want to run i86pc Solaris (i.e. non-Xen)

grub uses the file /boot/grub/menu.lst to tell what to boot. The default entries formerly looked like:

#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title Solaris Nevada snv_40 X86
kernel /platform/i86pc/multiboot [\*]
module /platform/i86pc/boot_archive
#---------------------END BOOTADM--------------------
#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title Solaris failsafe
kernel /boot/multiboot kernel/unix [-B \*] -s [\*]
module /boot/x86.miniroot-safe
#---------------------END BOOTADM--------------------

The first is the default kernel, the second is failsafe. Additional flags may be present, which are represented above by [\*] and [-B \*]. These flags should be preserved during the change.

The kernel line must be changed for the default entry. In order to boot 32-bit Solaris, change the non-failsafe entry should be:

#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title Solaris Nevada snv_40 X86
kernel /platform/i86pc/kernel/unix [\*]
module /platform/i86pc/boot_archive
#---------------------END BOOTADM--------------------

By default, bfu does not update the failsafe miniroot, so in most cases the failsafe entry should not be changed. However, if you manually update your failsafe archive, or were sent here by upgrade, you should make the change as shown here:

#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title Solaris failsafe
kernel /platform/i86pc/kernel/unix [-B \*] -s [\*]
module /boot/x86.miniroot-safe
#---------------------END BOOTADM--------------------

Again, do not make this change if you are upgrading by bfu. Also, the "[-B \*]" and "[\*]" are not literal, but is representative of additional flags that may be present, and should be preserved if present.

In order to boot 64-bit Solaris, change the non-failsafe entry to:

#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title Solaris Nevada snv_40 X86
kernel /platform/i86pc/kernel/amd64/unix [\*]
module /platform/i86pc/boot_archive
#---------------------END BOOTADM--------------------

Note the insertion of amd64 before unix. If necessary, make a similar change to the failsafe entry:

#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title Solaris failsafe
kernel /platform/i86pc/kernel/amd64/unix -s [\*]
module /boot/x86.miniroot-safe
#---------------------END BOOTADM--------------------

Also, if you have added any entries beyond the default, you will need to manually make the above changes.

menu.lst Changes if you want to run Xen on Solaris

bootadm assumes you will be running Solaris on hardware, not on Xen, and acts appropriately. If you do want to run Xen, you'll need to add an entry similar to the following for 64-bit:

title Solaris on Xen 64-bit
kernel /boot/amd64/xen.gz dom0_mem=524288 com1=9600,8n1 console=com1
module /platform/i86xen/kernel/amd64/unix /platform/i86xen/kernel/amd64/unix -k
module /platform/i86pc/boot_archive

or this for 32-bit:

title Solaris on Xen 32-bit
kernel /boot/xen.gz dom0_mem=524288 com1=9600,8n1 console=com1
module /platform/i86xen/kernel/unix /platform/i86xen/kernel/unix -k
module /platform/i86pc/boot_archive

Any questions?

If so, please direct them to the Xen OpenSolaris Discuss list.

Update (January 8, 2007)

The i86pc portion of this entry has been cleaned up and posted at http://www.sun.com/msg/SUNOS-8000-CF.

Comments:

GOOD

Posted by guest on November 01, 2007 at 02:59 AM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed
About

rscott

Search

Categories
Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today