The Boot Loader

This documentation is for yast2-bootloader and applies to SLE11 and openSUSE 11.0+. For older versions, use the documentation that comes with your distribution in /usr/share/doc/packages/autoyast2/

General scope of AutoYaST profile only bootloader part.

<bootloader>
   <device_map config:type="list">
    - info about order of devices in device.map
   </device_map>
   <global>
   - info about configuration of installation (installation settings for GRUB and generic boot code)
   </global>
   <initrd_modules config:type="list">
   - list of initrd modules
   </initrd_modules>
   <loader_type>grub</loader_type> - type of bootloader
   <sections config:type="list">
   - bootloader sections in menu.lst
   </sections>
 </bootloader>

Device map

You can define devices and their order in device.map, but it is not necessary. yast2-bootloader checks the devices during installation and proposes a device.map. It can happen that the order of the devices is wrong or you have defined a different order than the one set in the BIOS. Take care when you make changes there. The system might not boot afterwards.

<device_map config:type="list">
     <device_map_entry>
       <firmware>hd0</firmware> <!-- order of devices in target map  -->
       <linux>/dev/disk/by-id/ata-ST3500418AS_6VM23FX0</linux> <!-- name of device (disk)  -->
     </device_map_entry>
</device_map>

Globals

This is an important if optional part. Define here where to install GRUB and how the boot process will work. Again, yast2-bootloader proposes a configuration if you don't define one. Usually the AutoYaST profile includes only this part and all other parts are added automatically during installation by yast2-bootloader. Unless you have some special requirements, don't specify the bootloader config in the XML file.

<global>
     <activate>true</activate>
     <default>openSUSE 11.2 - 2.6.31.5-0.1</default>
     <gfxmenu>(hd0,1)/boot/message</gfxmenu>
     <lines_cache_id>4</lines_cache_id>
     <timeout config:type="integer">10</timeout>
 </global>

Attribute

Values

Description

activate

Set the boot flag on the boot partition. The boot partition can be "/" if there is no separate /boot partition. If the boot partition is on a logical partition, the boot flag is set to the extended partition.

<activate>true</activate>

default

Name (title) of the default boot section from menu.lst.

<default>openSUSE 11.2 - 2.6.31.5-0.1</default>

gfxmenu

Path to the graphical boot menu (/boot/message). Set to 'none' if you do not want to use a graphical boot menu.

<gfxmenu>(hd0,1)/boot/message</gfxmenu>

timeout

The timeout in seconds for automatically booting the default boot section from menu.lst.

<timeout config:type="integer">10</timeout>

generic_mbr

Write generic boot code to MBR, will be ignored if boot_mbr is set to "true".

<generic_mbr>false</generic_mbr>

boot_mbr

Write GRUB to MBR of the first disk in the order (device.map includes order of disks).

<boot_mbr>false</boot_mbr>

boot_boot

Write GRUB to separate /boot partition. If no separate /boot partition exists, GRUB will be written to "/".

<boot_boot>false</boot_boot>

boot_root

Write GRUB to "/" partition.

<boot_root>false</boot_root>

boot_extended

Write GRUB to the extended partition (important if you want to use a generic boot code and the "boot" partition is logical). NOTE: if the boot partition is logical, it should use boot_mbr (write GRUB to MBR) instead of generic_mbr.

<boot_extended>false</boot_extended>

boot_custom

Write GRUB to custom device.

<boot_custom>/dev/sda3</boot_custom>

trusted_grub

Use trusted GRUB instead of the classical GRUB (gfxmenu is deleted automatically if this option is true). Do not use trusted GRUB if your hardware does not support it.

<trusted_grub>false</trusted_grub>

lines_cache_id

Internal option specifying the cache id for perl-Bootloader. Do not use or change it in a cloned XML file.

Initrd modules

A list of initrd modules. Do not create your own list if you do not fully understand the impact. AutoYaST will take care of it for you.

Loader Type

Define which boot loader to use: grub, lilo, ppc or elilo.

<loader_type>grub</loader_type>

Sections

The configuration of the boot sections in the menu.lst is added automatically here by yast2-bootloader during installation. yast2-bootloader deletes boot sections with no valid kernel and initrd path.

<sections config:type="list">
     <section>
       <append>resume=/dev/disk/by-id/raid-sil_ajacccbhejai-part2 splash=silent quiet showotps</append>
       <image>(hd0,0)/vmlinuz-2.6.31-10-default</image>
       <initial>1</initial>
       <initrd>(hd0,0)/initrd-2.6.31-10-default</initrd>
       <lines_cache_id>0</lines_cache_id>
       <name>openSUSE 11.2 Milestone 8 - 2.6.31-10 (default)</name>
       <original_name>linux</original_name>
       <root>/dev/mapper/sil_ajacccbhejai_part3</root>
       <type>image</type>
       <vgamode>0x31a</vgamode>
     </section>
     <section>
       <append>resume=/dev/disk/by-id/raid-sil_ajacccbhejai-part2 splash=silent quiet showopts</append>
       <image>(hd0,0)/vmlinuz-2.6.31-10-xen</image>
       <initrd>(hd0,0)/initrd-2.6.31-10-xen</initrd>
       <lines_cache_id>2</lines_cache_id>
       <name>Xen -- openSUSE 11.2 Milestone 8 - 2.6.31-10</name>
       <nounzip>0</nounzip>
       <original_name>xen</original_name>
       <root>/dev/mapper/sil_ajacccbhejai_part3</root>
       <type>xen</type>
       <vgamode>0x31a</vgamode>
       <xen>(hd0,0)/xen.gz</xen>
       <xen_append></xen_append>
     </section>
     <section>
       <blockoffset>1</blockoffset>
       <chainloader>/dev/fd0</chainloader>
       <lines_cache_id>3</lines_cache_id>
       <name>Floppy</name>
       <noverifyroot>true</noverifyroot>
       <original_name>floppy</original_name>
       <type>other</type>
     </section>
   </sections>

Options

Available options depend on the type.

Options for Section Type: image and xen

Attribute

Values

Description

append

List of kernel args but without(!) vga= and root=.

<append>splash=silent quiet showopts</append>

image

Path to the kernel.

<image>(hd0,0)/vmlinuz-2.6.31-10</image>

initrd

Path to the initrd.

<initrd>(hd0,0)/my-initrd</initrd>

lines_cache_id

Internal option specifying the cache id for perl-Bootloader. Do not use or change it in a cloned XML file.


                  

name

Name of section.

<name>Productive System</name>

original_name

Internal name of section parsed by YaST from a comment in the configuration file. There are some rules for names, and original_name helps to determine if the boot section is "linux" or "failsafe". For chainloader it helps to determine if it is "windows" or other (linux, floppy, etc). Use a simple original_name: linux, xen, windows, floppy, etc.

<original_name>linux</original_name>

root

Location of the root partition ("/").

<root>/dev/mapper/sil_ajacccbhejai_part3</root>

type

Type of section (image/xen/other/menu).

<type>xen</type>

vgamode

Kernel arg for vga (vga=).

<vgamode>0x31a</vgamode>

xen

Path to xen.gz.

<xen>(hd0,0)/xen.gz</xen>

xen_append

Kernel args for XEN.

<xen_append></xen_append>

Options for Section Type: other (chainloader)

Attribute

Values

Description

lines_cache_id

Internal option specifying the cache id for perl-Bootloader. Do not use or change it in a cloned XML file.


                  

name

Name or title of the section.

<name>Floppy</name>

original_name

Internal name of the section parsed by YaST from a comment in the configuration file. There are some rules for names and original_name helps to determine if the boot section is "linux" or "failsafe". For the chainloader it helps to determine if it is "windows" or other (linux, floppy, etc). Use a simple original_name: linux, xen, windows, floppy etc.

<original_name>linux</original_name>

type

Type of section (image/xen/other/menu).

<type>other</type>

blockoffset

Offset in chainloader (used only in grub).

<blockoffset>1</blockoffset>

chainloader

Partition part for chainloader (so chainloader+blockoffset get final chainloader item in grub).

<chainloader>/dev/fd0</chainloader>

noverifyroot

With or without checking root.

<noverifyroot>true</noverifyroot>

remap

Windows-specific option for remapping hard disks, for example switch the first and second disk: map (hd0) (hd1) map (hd1) (hd0)

<remap>false</remap>

makeactive

Add the makeactive argument for the chainloader section.

<makeactive>false</makeactive>

Options for section type: menu (configfile)

Attribute

Values

Description

lines_cache_id

Internal option specifying the cache id for perl-Bootloader. Do not use or change it in a cloned XML file.


                  

name

Name or title of section.

<name>Floppy</name>

original_name

Internal name of section parsed by YaST from a comment in the configuration file. There are some rules for names and original_name helps to determine if the boot section is "linux" or "failsafe". For the chainloader it helps to determine if it is "windows" or other (linux, floppy etc). Use a simple original_name: linux, xen, windows, floppy etc.

<original_name>linux</original_name>

type

Type of section (image/xen/other/menu).

<type>other</type>

configfile

Path to menu.lst config file.

<configfile>1</configfile>

root

Device name for loading menu.lst from another installation of Linux.

<root>/dev/sda1</root>