Fix bugs in config pertaining loading invaders, memtest and netboot.xyz
This commit is contained in:
parent
8f9ccbfa39
commit
2ac9f558dd
6 changed files with 49 additions and 42 deletions
459
boot/grub/persistent/docs/15_environment_variables
Normal file
459
boot/grub/persistent/docs/15_environment_variables
Normal file
|
@ -0,0 +1,459 @@
|
|||
15 GRUB environment variables
|
||||
*****************************
|
||||
|
||||
GRUB supports environment variables which are rather like those offered
|
||||
by all Unix-like systems. Environment variables have a name, which is
|
||||
unique and is usually a short identifier, and a value, which is an
|
||||
arbitrary string of characters. They may be set (*note set::), unset
|
||||
(*note unset::), or looked up (*note Shell-like scripting::) by name.
|
||||
|
||||
A number of environment variables have special meanings to various
|
||||
parts of GRUB. Others may be used freely in GRUB configuration files.
|
||||
|
||||
15.1 Special environment variables
|
||||
==================================
|
||||
|
||||
These variables have special meaning to GRUB.
|
||||
|
||||
15.1.1 biosnum
|
||||
--------------
|
||||
|
||||
When chain-loading another boot loader (*note Chain-loading::), GRUB may
|
||||
need to know what BIOS drive number corresponds to the root device
|
||||
(*note root::) so that it can set up registers properly. If the BIOSNUM
|
||||
variable is set, it overrides GRUB's own means of guessing this.
|
||||
|
||||
For an alternative approach which also changes BIOS drive mappings
|
||||
for the chain-loaded system, *note drivemap::.
|
||||
|
||||
15.1.2 check_signatures
|
||||
-----------------------
|
||||
|
||||
This variable controls whether GRUB enforces digital signature
|
||||
validation on loaded files. *Note Using digital signatures::.
|
||||
|
||||
15.1.3 chosen
|
||||
-------------
|
||||
|
||||
When executing a menu entry, GRUB sets the CHOSEN variable to the title
|
||||
of the entry being executed.
|
||||
|
||||
If the menu entry is in one or more submenus, then CHOSEN is set to
|
||||
the titles of each of the submenus starting from the top level followed
|
||||
by the title of the menu entry itself, separated by '>'.
|
||||
|
||||
15.1.4 cmdpath
|
||||
--------------
|
||||
|
||||
The location from which 'core.img' was loaded as an absolute directory
|
||||
name (*note File name syntax::). This is set by GRUB at startup based
|
||||
on information returned by platform firmware. Not every platform
|
||||
provides this information and some may return only device without path
|
||||
name.
|
||||
|
||||
15.1.5 color_highlight
|
||||
----------------------
|
||||
|
||||
This variable contains the "highlight" foreground and background
|
||||
terminal colors, separated by a slash ('/'). Setting this variable
|
||||
changes those colors. For the available color names, *note
|
||||
color_normal::.
|
||||
|
||||
The default is 'black/light-gray'.
|
||||
|
||||
15.1.6 color_normal
|
||||
-------------------
|
||||
|
||||
This variable contains the "normal" foreground and background terminal
|
||||
colors, separated by a slash ('/'). Setting this variable changes those
|
||||
colors. Each color must be a name from the following list:
|
||||
|
||||
* black
|
||||
* blue
|
||||
* green
|
||||
* cyan
|
||||
* red
|
||||
* magenta
|
||||
* brown
|
||||
* light-gray
|
||||
* dark-gray
|
||||
* light-blue
|
||||
* light-green
|
||||
* light-cyan
|
||||
* light-red
|
||||
* light-magenta
|
||||
* yellow
|
||||
* white
|
||||
|
||||
The default is 'light-gray/black'.
|
||||
|
||||
The color support support varies from terminal to terminal.
|
||||
|
||||
'morse' has no color support at all.
|
||||
|
||||
'mda_text' color support is limited to highlighting by black/white
|
||||
reversal.
|
||||
|
||||
'console' on ARC, EMU and IEEE1275, 'serial_*' and 'spkmodem' are
|
||||
governed by terminfo and support only 8 colors if in modes 'vt100-color'
|
||||
(default for console on emu), 'arc' (default for console on ARC),
|
||||
'ieee1275' (default for console on IEEE1275). When in mode 'vt100' then
|
||||
the color support is limited to highlighting by black/white reversal.
|
||||
When in mode 'dumb' there is no color support.
|
||||
|
||||
When console supports no colors this setting is ignored. When
|
||||
console supports 8 colors, then the colors from the second half of the
|
||||
previous list are mapped to the matching colors of first half.
|
||||
|
||||
'console' on EFI and BIOS and 'vga_text' support all 16 colors.
|
||||
|
||||
'gfxterm' supports all 16 colors and would be theoretically
|
||||
extendable to support whole rgb24 palette but currently there is no
|
||||
compelling reason to go beyond the current 16 colors.
|
||||
|
||||
15.1.7 config_directory
|
||||
-----------------------
|
||||
|
||||
This variable is automatically set by GRUB to the directory part of
|
||||
current configuration file name (*note config_file::).
|
||||
|
||||
15.1.8 config_file
|
||||
------------------
|
||||
|
||||
This variable is automatically set by GRUB to the name of configuration
|
||||
file that is being processed by commands 'configfile' (*note
|
||||
configfile::) or 'normal' (*note normal::). It is restored to the
|
||||
previous value when command completes.
|
||||
|
||||
15.1.9 debug
|
||||
------------
|
||||
|
||||
This variable may be set to enable debugging output from various
|
||||
components of GRUB. The value is a list of debug facility names
|
||||
separated by whitespace or ',', or 'all' to enable all available
|
||||
debugging output. The facility names are the first argument to
|
||||
grub_dprintf. Consult source for more details.
|
||||
|
||||
15.1.10 default
|
||||
---------------
|
||||
|
||||
If this variable is set, it identifies a menu entry that should be
|
||||
selected by default, possibly after a timeout (*note timeout::). The
|
||||
entry may be identified by number (starting from 0 at each level of the
|
||||
hierarchy), by title, or by id.
|
||||
|
||||
For example, if you have:
|
||||
|
||||
menuentry 'Example GNU/Linux distribution' --class gnu-linux --id example-gnu-linux {
|
||||
...
|
||||
}
|
||||
|
||||
then you can make this the default using:
|
||||
|
||||
default=example-gnu-linux
|
||||
|
||||
If the entry is in a submenu, then it must be identified using the
|
||||
number, title, or id of each of the submenus starting from the top
|
||||
level, followed by the number, title, or id of the menu entry itself,
|
||||
with each element separated by '>'. For example, take the following
|
||||
menu structure:
|
||||
|
||||
GNU/Hurd --id gnu-hurd
|
||||
Standard Boot --id=gnu-hurd-std
|
||||
Rescue shell --id=gnu-hurd-rescue
|
||||
Other platforms --id=other
|
||||
Minix --id=minix
|
||||
Version 3.4.0 --id=minix-3.4.0
|
||||
Version 3.3.0 --id=minix-3.3.0
|
||||
GRUB Invaders --id=grub-invaders
|
||||
|
||||
The more recent release of Minix would then be identified as 'Other
|
||||
platforms>Minix>Version 3.4.0', or as '1>0>0', or as
|
||||
'other>minix>minix-3.4.0'.
|
||||
|
||||
This variable is often set by 'GRUB_DEFAULT' (*note Simple
|
||||
configuration::), 'grub-set-default', or 'grub-reboot'.
|
||||
|
||||
15.1.11 fallback
|
||||
----------------
|
||||
|
||||
If this variable is set, it identifies a menu entry that should be
|
||||
selected if the default menu entry fails to boot. Entries are
|
||||
identified in the same way as for 'default' (*note default::).
|
||||
|
||||
15.1.12 gfxmode
|
||||
---------------
|
||||
|
||||
If this variable is set, it sets the resolution used on the 'gfxterm'
|
||||
graphical terminal. Note that you can only use modes which your
|
||||
graphics card supports via VESA BIOS Extensions (VBE), so for example
|
||||
native LCD panel resolutions may not be available. The default is
|
||||
'auto', which selects a platform-specific default that should look
|
||||
reasonable. Supported modes can be listed by 'videoinfo' command in
|
||||
GRUB.
|
||||
|
||||
The resolution may be specified as a sequence of one or more modes,
|
||||
separated by commas (',') or semicolons (';'); each will be tried in
|
||||
turn until one is found. Each mode should be either 'auto',
|
||||
'WIDTHxHEIGHT', or 'WIDTHxHEIGHTxDEPTH'.
|
||||
|
||||
15.1.13 gfxpayload
|
||||
------------------
|
||||
|
||||
If this variable is set, it controls the video mode in which the Linux
|
||||
kernel starts up, replacing the 'vga=' boot option (*note linux::). It
|
||||
may be set to 'text' to force the Linux kernel to boot in normal text
|
||||
mode, 'keep' to preserve the graphics mode set using 'gfxmode', or any
|
||||
of the permitted values for 'gfxmode' to set a particular graphics mode
|
||||
(*note gfxmode::).
|
||||
|
||||
Depending on your kernel, your distribution, your graphics card, and
|
||||
the phase of the moon, note that using this option may cause GNU/Linux
|
||||
to suffer from various display problems, particularly during the early
|
||||
part of the boot sequence. If you have problems, set this variable to
|
||||
'text' and GRUB will tell Linux to boot in normal text mode.
|
||||
|
||||
The default is platform-specific. On platforms with a native text
|
||||
mode (such as PC BIOS platforms), the default is 'text'. Otherwise the
|
||||
default may be 'auto' or a specific video mode.
|
||||
|
||||
This variable is often set by 'GRUB_GFXPAYLOAD_LINUX' (*note Simple
|
||||
configuration::).
|
||||
|
||||
15.1.14 gfxterm_font
|
||||
--------------------
|
||||
|
||||
If this variable is set, it names a font to use for text on the
|
||||
'gfxterm' graphical terminal. Otherwise, 'gfxterm' may use any
|
||||
available font.
|
||||
|
||||
15.1.15 grub_cpu
|
||||
----------------
|
||||
|
||||
In normal mode (*note normal::), GRUB sets the 'grub_cpu' variable to
|
||||
the CPU type for which GRUB was built (e.g. 'i386' or 'powerpc').
|
||||
|
||||
15.1.16 grub_platform
|
||||
---------------------
|
||||
|
||||
In normal mode (*note normal::), GRUB sets the 'grub_platform' variable
|
||||
to the platform for which GRUB was built (e.g. 'pc' or 'efi').
|
||||
|
||||
15.1.17 icondir
|
||||
---------------
|
||||
|
||||
If this variable is set, it names a directory in which the GRUB
|
||||
graphical menu should look for icons after looking in the theme's
|
||||
'icons' directory. *Note Theme file format::.
|
||||
|
||||
15.1.18 lang
|
||||
------------
|
||||
|
||||
If this variable is set, it names the language code that the 'gettext'
|
||||
command (*note gettext::) uses to translate strings. For example,
|
||||
French would be named as 'fr', and Simplified Chinese as 'zh_CN'.
|
||||
|
||||
'grub-mkconfig' (*note Simple configuration::) will try to set a
|
||||
reasonable default for this variable based on the system locale.
|
||||
|
||||
15.1.19 locale_dir
|
||||
------------------
|
||||
|
||||
If this variable is set, it names the directory where translation files
|
||||
may be found (*note gettext::), usually '/boot/grub/locale'. Otherwise,
|
||||
internationalization is disabled.
|
||||
|
||||
'grub-mkconfig' (*note Simple configuration::) will set a reasonable
|
||||
default for this variable if internationalization is needed and any
|
||||
translation files are available.
|
||||
|
||||
15.1.20 menu_color_highlight
|
||||
----------------------------
|
||||
|
||||
This variable contains the foreground and background colors to be used
|
||||
for the highlighted menu entry, separated by a slash ('/'). Setting
|
||||
this variable changes those colors. For the available color names,
|
||||
*note color_normal::.
|
||||
|
||||
The default is the value of 'color_highlight' (*note
|
||||
color_highlight::).
|
||||
|
||||
15.1.21 menu_color_normal
|
||||
-------------------------
|
||||
|
||||
This variable contains the foreground and background colors to be used
|
||||
for non-highlighted menu entries, separated by a slash ('/'). Setting
|
||||
this variable changes those colors. For the available color names,
|
||||
*note color_normal::.
|
||||
|
||||
The default is the value of 'color_normal' (*note color_normal::).
|
||||
|
||||
15.1.22 net_<INTERFACE>_boot_file
|
||||
---------------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.23 net_<INTERFACE>_dhcp_server_name
|
||||
----------------------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.24 net_<INTERFACE>_domain
|
||||
------------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.25 net_<INTERFACE>_extensionspath
|
||||
--------------------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.26 net_<INTERFACE>_hostname
|
||||
--------------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.27 net_<INTERFACE>_ip
|
||||
--------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.28 net_<INTERFACE>_mac
|
||||
---------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.29 net_<INTERFACE>_next_server
|
||||
-----------------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.30 net_<INTERFACE>_rootpath
|
||||
--------------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.31 net_default_interface
|
||||
-----------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.32 net_default_ip
|
||||
----------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.33 net_default_mac
|
||||
-----------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.34 net_default_server
|
||||
--------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.35 pager
|
||||
-------------
|
||||
|
||||
If set to '1', pause output after each screenful and wait for keyboard
|
||||
input. The default is not to pause output.
|
||||
|
||||
15.1.36 prefix
|
||||
--------------
|
||||
|
||||
The location of the '/boot/grub' directory as an absolute file name
|
||||
(*note File name syntax::). This is normally set by GRUB at startup
|
||||
based on information provided by 'grub-install'. GRUB modules are
|
||||
dynamically loaded from this directory, so it must be set correctly in
|
||||
order for many parts of GRUB to work.
|
||||
|
||||
15.1.37 pxe_blksize
|
||||
-------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.38 pxe_default_gateway
|
||||
---------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.39 pxe_default_server
|
||||
--------------------------
|
||||
|
||||
*Note Network::.
|
||||
|
||||
15.1.40 root
|
||||
------------
|
||||
|
||||
The root device name (*note Device syntax::). Any file names that do
|
||||
not specify an explicit device name are read from this device. The
|
||||
default is normally set by GRUB at startup based on the value of
|
||||
'prefix' (*note prefix::).
|
||||
|
||||
For example, if GRUB was installed to the first partition of the
|
||||
first hard disk, then 'prefix' might be set to '(hd0,msdos1)/boot/grub'
|
||||
and 'root' to 'hd0,msdos1'.
|
||||
|
||||
15.1.41 superusers
|
||||
------------------
|
||||
|
||||
This variable may be set to a list of superuser names to enable
|
||||
authentication support. *Note Security::.
|
||||
|
||||
15.1.42 theme
|
||||
-------------
|
||||
|
||||
This variable may be set to a directory containing a GRUB graphical menu
|
||||
theme. *Note Theme file format::.
|
||||
|
||||
This variable is often set by 'GRUB_THEME' (*note Simple
|
||||
configuration::).
|
||||
|
||||
15.1.43 timeout
|
||||
---------------
|
||||
|
||||
If this variable is set, it specifies the time in seconds to wait for
|
||||
keyboard input before booting the default menu entry. A timeout of '0'
|
||||
means to boot the default entry immediately without displaying the menu;
|
||||
a timeout of '-1' (or unset) means to wait indefinitely.
|
||||
|
||||
If 'timeout_style' (*note timeout_style::) is set to 'countdown' or
|
||||
'hidden', the timeout is instead counted before the menu is displayed.
|
||||
|
||||
This variable is often set by 'GRUB_TIMEOUT' (*note Simple
|
||||
configuration::).
|
||||
|
||||
15.1.44 timeout_style
|
||||
---------------------
|
||||
|
||||
This variable may be set to 'menu', 'countdown', or 'hidden' to control
|
||||
the way in which the timeout (*note timeout::) interacts with displaying
|
||||
the menu. See the documentation of 'GRUB_TIMEOUT_STYLE' (*note Simple
|
||||
configuration::) for details.
|
||||
|
||||
15.2 The GRUB environment block
|
||||
===============================
|
||||
|
||||
It is often useful to be able to remember a small amount of information
|
||||
from one boot to the next. For example, you might want to set the
|
||||
default menu entry based on what was selected the last time. GRUB
|
||||
deliberately does not implement support for writing files in order to
|
||||
minimise the possibility of the boot loader being responsible for file
|
||||
system corruption, so a GRUB configuration file cannot just create a
|
||||
file in the ordinary way. However, GRUB provides an "environment block"
|
||||
which can be used to save a small amount of state.
|
||||
|
||||
The environment block is a preallocated 1024-byte file, which
|
||||
normally lives in '/boot/grub/grubenv' (although you should not assume
|
||||
this). At boot time, the 'load_env' command (*note load_env::) loads
|
||||
environment variables from it, and the 'save_env' (*note save_env::)
|
||||
command saves environment variables to it. From a running system, the
|
||||
'grub-editenv' utility can be used to edit the environment block.
|
||||
|
||||
For safety reasons, this storage is only available when installed on
|
||||
a plain disk (no LVM or RAID), using a non-checksumming filesystem (no
|
||||
ZFS), and using BIOS or EFI functions (no ATA, USB or IEEE1275).
|
||||
|
||||
'grub-mkconfig' uses this facility to implement 'GRUB_SAVEDEFAULT'
|
||||
(*note Simple configuration::).
|
Loading…
Add table
Add a link
Reference in a new issue