ZIPL.CONF(5) | File Formats Manual | ZIPL.CONF(5) |
zipl.conf - zipl configuration file
The zipl.conf file contains configuration information for the IBM S/390 and zSeries boot loader tool zipl (see zipl(8)).
By default zipl checks for zipl.conf at /run/zipl/zipl.conf, /etc/zipl.conf, /lib/s390-tools/zipl.conf in that order - whichever is found first will be used. Users can specifically choose a location using the '--config' option of zipl or by setting the ZIPLCONF shell environment variable.
Using the zipl.conf configuration file, one can specify several different boot configurations. Each configuration represents one of the following tasks which are performed at boot time:
To be able to specify more than one boot configuration, the zipl.conf file is divided into sections. There are two types of sections: configuration sections and menu sections. Configuration sections specify a single task while menu sections represent a list of tasks which are grouped together as a 'menu'.
Each section begins with a heading. In the case of configuration sections, the heading is a single line containing the section name in square brackets ([]). Such names may be made up of any printable character except for space and have to be unique among the configuration file.
Menu headings are made up of a leading colon (':'), followed by a menu name which may consist of alphabetic characters and numbers.
The heading is followed by a number of lines, called the section body. Inside this body, options are specified, one per line, using the form
where 'key' may be any of the options described below or a number in case of a menu section. The 'value' field may be enclosed in quotes (" or ') to preserve leading and trailing spaces. Lines beginning with a hash sign (#) are treated as comments and will be ignored.
Note that it is not allowed to specify key=value pairs outside of a section (i.e. before the first section heading).
As a special section name, 'defaultboot' is reserved for specifying a default boot configuration (see options 'default', 'defaultmenu' and 'defaultauto'" below).
Example configuration:
[defaultboot]
defaultmenu = menu1
[linux]
target = /boot
image = /boot/image
parameters = "root=/dev/dasda1 console=ttyS0"
[test]
target = /boot
image = /boot/image-test
parmfile = /boot/parmfile-test
:menu1
target = /boot
1 = linux
2 = test
default = 1
prompt = 1
timeout = 0
secure = auto
BootLoaderSpec configuration files
Another way to specify IPL sections is to use BLS config files. These are configuration files located by default at /boot/loader/entries, but another location can be specified using the '--blsdir' option of zipl.
version 4.15.9
linux /vmlinuz-4.15.9
initrd /initramfs-4.15.9
options root=/dev/dasda1 console=ttyS0
The location of the linux and initrd has to be specified relative to the boot partition. The BLS config files are only used to specify the IPL sections, a zipl.conf configuration file is still needed for global parameters. For this purpose, a minimal zipl.conf configuration file is shipped at /lib/s390-tools/zipl.conf which would help when used with BLS config files, by not requiring users to create the traditional configuration file at /etc/zipl.conf.
Boot menu
The zipl tool provides a boot menu function which enables users to choose a boot configuration and to modify the kernel command line parameters at IPL time (only available for DASD disk devices).
There are two alternatives for specifying a boot menu:
When defining a menu section, included configurations are subsequently identified by their assigned number.
If the 'prompt' setting of the menu section is set to 1, a menu text will be displayed during IPL and the boot program will wait for user input:
0. default (linux)
1. linux
2. test
Please choose:
The menu prompt expects the configuration number as input. Typing '0' will start the default configuration. Additional kernel parameters can be specified by supplying them after the configuration number, separated by a blank character. These kernel parameters will be converted to lower-case. Example input:
This will start configuration 2 and append the string "mem=128m maxcpus=1" to the existing kernel command line. To replace the existing command line, prefix the the string with "=":
This will start configuration 2 and use "dasd=0190 root=/dev/dasda1" as the kernel command line. Note that these menu-specified parameters are only temporary and won't be saved for the next IPL process. Note also that the selected configuration number will be available to the init process through the environment variable named BOOT_IMAGE.
If the 'timeout' option has been used, the boot menu will automatically start the default configuration after the specified number of seconds has passed without user input.
VM users need to prefix all input with the VM VINPUT command, e.g. type '#cp vinput vmsg 0' to boot the default configuration.
Another way of selecting a configuration without the interactive menu is by specifying its number using the IPL 'loadparm' function, e.g.:
In case the specified number does not correspond to a valid configuration, the boot process will abort with a disabled wait state (address code 0x300).
The loadparm function is available even if the menu has been deactivated by setting 'prompt' to zero or by installing only a single configuration. The menu can then be temporarily activated by passing the string 'prompt' via the loadparm function:
number = section name (menu only)
Only disk IPL sections (see option image) and file system dump sections (option dumpto) may be included in menus.
Note that position number 0 is reserved and will automatically be assigned to the default menu entry (see default).
default = default-configuration (configuration and menu)
When specified alone, it indicates that zipl should install a single boot configuration. In that case, default-configuration indicates the configuration name.
When specified together with 'defaultauto' or 'target' , it indicates that zipl should install a boot menu including all IPL boot configurations found in the configuration file. In that case, default-configuration specifies the name of the boot configuration to be used as default by the menu.
Menu section:
This option specifies the position number of the menu entry to use as
default, i.e. when no user selection is available at boot time. If no
default entry is specified, the first entry to appear in the menu
section will be used as default.
The default entry will also be available as position number 0.
defaultauto (configuration only)
When specified, it indicates that zipl should install a boot menu including all IPL boot configurations found in the configuration file.
When this option is specified, a 'target' option must also be present and other menu-specific options such as 'default', 'timeout' or 'prompt' may also be present in the same section.
Note that IPL configurations included in the menu are numbered in the order in which they are found in the configuration file.
defaultmenu = default-menu (configuration only)
When specified, it indicates that zipl should install a boot menu. In that case, default-menu indicates the menu name.
dumpto = dump-device[,size] (configuration only)
An optional decimal SIZE parameter may be specified to determine the maximum dump size in bytes. SIZE can be suffixed by either of the letters K, M or G to signify that the decimal number be interpreted as kilobytes, megabytes or gigabytes respectively. SIZE will be rounded up to the next megabyte boundary. Note that when you specify a SIZE lower than the actual memory size used by linux (see kernel parameter mem=), the resulting dump will be incomplete. Also note that for SCSI dump the SIZE parameter is not supported.
dumptofs
mvdump = dumplist[,size] (configuration only)
An optional decimal SIZE parameter may be specified to determine the maximum dump size in bytes. SIZE can be suffixed by either of the letters K, M or G to signify that the decimal number be interpreted as kilobytes, megabytes or gigabytes respectively. SIZE will be rounded up to the next megabyte boundary. Note that when you specify a SIZE lower than the actual memory size used by linux (see kernel parameter mem=), the resulting dump will be incomplete.
This option is useful if the actual memory size used by linux is larger than any single ECKD DASD partition could hold.
image = image-file[,address] (configuration only)
An initial ramdisk may be provided using 'ramdisk'. To change the kernel parameters, use 'parmfile' or 'parameters'.
This option cannot be used together with either 'dump', or 'segment'.
optional = 0/1 (configuration only)
The default value for 'optional' is 0.
parameters = kernel-parameters (configuration only)
parmfile = kernel-parmfile[,address] (configuration only)
kdump = auto (configuration only)
prompt = 0/1 (configuration and menu)
Setting this option to 1 activates the interactive boot menu which can be used to select a configuration at boot time (DASD disks only). See previous section for a detailed description of the boot menu.
The default value for 'prompt' is 0.
Menu section:
Setting this option to 1 activates the interactive boot menu which can be
used to select a configuration at boot time (DASD disks only). See
previous section for a detailed description of the boot menu.
The default value for 'prompt' is 0.
ramdisk = ramdisk-file[,address] (configuration only)
secure = auto/1/0 (configuration and menu)
The default value for 'secure' is auto.
segment = segment-file,address (configuration only)
tape = tape-device (configuration only)
This option cannot be used together with 'target', 'dump', or 'segment'.
target = target-directory (configuration and menu)
targetbase = base-device (configuration and menu)
This parameter is required when working with logical devices (see zipl(8)).
targettype = type (configuration and menu)
targetgeometry = cylinders,heads,sectors (configuration and menu)
This parameter is required when working with logical devices (see zipl(8)).
targetblocksize = size (configuration and menu)
This parameter is required when working with logical devices (see zipl(8)).
targetoffset = offset (configuration and menu)
This parameter is required when working with logical devices (see zipl(8)).
timeout = menu-timeout (configuration and menu)
Specify a timeout interval in seconds after which the interactive boot menu will automatically select the default boot configuration. Setting this value to 0 or providing any user input at boot time will deactivate the timeout mechanism.
The default value for 'timeout' is 0.
Menu section:
Specify a timeout interval in seconds after which the interactive boot
menu will automatically select the default boot configuration. Setting
this value to 0 or providing any user input at boot time will deactivate
the timeout mechanism.
The default value for 'timeout' is 0.
While it is not recommended for reasons of recovery and redundancy, FCP. attached SCSI disks can also be accessed directly without multipathing,. for example via the "/dev/disk/by-path/" device nodes.
Nov 2009 | s390-tools |