Move everything from /var/adm to /var/log
[unleashed.git] / share / man / man4 / loader.conf.4
blob74b95ec09a51e1e3009e63964c13cd7d86cc7185
1 .\" Copyright (c) 1999 Daniel C. Sobral
2 .\" All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\"
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 .\" SUCH DAMAGE.
24 .\"
25 .Dd Nov 26, 2017
26 .Dt LOADER.CONF 4
27 .Os
28 .Sh NAME
29 .Nm loader.conf
30 .Nd "system bootstrap configuration information"
31 .Sh SYNOPSIS
32 .Nm /boot/loader.conf
33 .Sh DESCRIPTION
34 The file
35 .Nm
36 contains descriptive information on bootstrapping the system.
37 Through
38 it you can specify the kernel to be booted, parameters to be passed to
39 it, and additional modules to be loaded; and generally set all variables
40 described in
41 .Xr loader 5 .
42 .Pp
43 Loader implements set of builtin commands and functions and script
44 interpreter as standalone binary program.
45 When starting, the loader will read the file
46 .Pa /boot/loader.rc
47 as initialization and startup script, to include other support files
48 and to read the configuration, describing current boot environment.
49 All loader scripts and configuration files are located in the
50 .Pa /boot
51 directory tree.
52 .Pp
53 The file
54 .Pa /boot/loader.rc
55 must contain the following two lines for
56 .Nm
57 to be automatically processed:
58 .Pp
59 .Dl include /boot/forth/loader.4th
60 .Dl start
61 .Pp
62 The default
63 .Pa /boot/loader.rc
64 is provided by the operating system and may be replaced on operating
65 system update.
66 The local updates are advised to be added into the
67 .Pa /boot/loader.rc.local
68 .Pp
69 The configuration variables are read from the following files:
70 .Bl -tag -width Ar
71 .It Ar /boot/solaris/bootenv.rc
72 Managed by the
73 .Xr eeprom 8
74 command.
75 .It Ar /boot/defaults/loader.conf
76 Loader defaults provided by the operating system.
77 .It Ar /boot/loader.conf
78 System specific loader configuration.
79 May be provided by the operating system.
80 .It Ar /boot/loader.conf.local
81 User editable loader configuration.
82 .It Ar /boot/conf.d/*
83 User editable loader configuration snippets.
84 The files are processed in lexicographical order.
85 The configuration snippets mechanism is not available in case of TFTP boot as
86 TFTP does not provide the directory list.
87 .It Ar /boot/transient.conf
88 Configuration file for transient boot.
89 This file is created by the
90 .Xr reboot 8
91 command and is automatically removed when system is reaching the multi-user
92 run level.
93 .El
94 .Pp
95 The configuration is processed in the order listed above.
96 .Ss SYNTAX
97 The general parsing rules are:
98 .Bl -bullet
99 .It
100 Spaces and empty lines are ignored.
102 A # sign will mark the remainder of the line as a comment.
104 Only one setting can be present on each line.
107 All settings have the following format:
109 .Dl variable="value"
111 Unless it belongs to one of the classes of settings that receive special
112 treatment, a setting will set the value of a
113 .Xr loader 5
114 environment variable.
115 The settings that receive special
116 treatment are listed below.
117 Settings beginning with
118 .Qq *
119 below define the modules to be loaded and
120 may have any prefix; the prefix identifies a module.
121 All such settings sharing a common
122 prefix refer to the same module.
123 .Bl -tag -width Ar
124 .It Ar exec
125 Immediately executes a
126 .Xr loader 5
127 command.
128 This type of setting cannot be processed by programs other
129 than
130 .Xr loader 5 ,
131 so its use should be avoided.
132 Multiple instances of it will be processed
133 independently.
134 .It Ar loader_conf_files
135 Defines additional configuration files to be processed right after the
136 present file.
137 .It Ar kernel
138 Name of the kernel to be loaded.
139 If no kernel name is set, no additional
140 modules will be loaded.
141 .It Ar boot-args
142 Flags to be passed to the kernel.
143 .It Ar password
144 Protect boot menu with a password without interrupting
145 .Ic autoboot
146 process.
147 The password should be in clear text format.
148 If a password is set, boot menu will not appear until any key is pressed during
149 countdown period specified by
150 .Va autoboot_delay
151 variable or
152 .Ic autoboot
153 process fails.
154 In both cases user should provide specified password to be able to access boot
155 menu.
156 .It Ar bootlock_password
157 Provides a password to be required by check-password before execution is
158 allowed to continue.
159 The password should be in clear text format.
160 If a password is set, the user must provide specified password to boot.
161 .It Ar verbose_loading
162 If set to
163 .Dq YES ,
164 module names will be displayed as they are loaded.
165 .It Ar *_load
166 If set to
167 .Dq YES ,
168 that module will be loaded.
169 If no name is defined (see below), the
170 module's name is taken to be the same as the prefix.
171 .It Ar *_name
172 Defines the name of the module.
173 .It Ar *_type
174 Defines the module's type.
175 If none is given, it defaults to a kld module.
176 .It Ar *_flags
177 Flags and parameters to be passed to the module.
178 .It Ar *_before
179 Commands to be executed before the module is loaded.
180 Use of this setting
181 should be avoided.
182 .It Ar *_after
183 Commands to be executed after the module is loaded.
184 Use of this setting
185 should be avoided.
186 .It Ar *_error
187 Commands to be executed if the loading of a module fails.
188 Except for the
189 special value
190 .Dq abort ,
191 which aborts the bootstrap process, use of this setting should be avoided.
193 .Ss DEFAULT SETTINGS
194 Most of
195 .Nm Ns 's
196 default settings can be ignored.
197 The few of them which are important
198 or useful are:
199 .Bl -tag -width bootfile -offset indent
200 .It Va console
201 .Pq Dq text
202 .Dq ttya
204 .Dq ttyd
205 selects serial console,
206 .Dq text
207 selects the video console,
208 .Dq nullconsole
209 selects a mute console
210 (useful for systems with neither a video console nor a serial port), and
211 .Dq spinconsole
212 selects the video console which prevents any input and hides all output
213 replacing it with
214 .Dq spinning
215 character (useful for embedded products and such).
216 .It Va kernel
217 .Pq Dq i86pc/kernel/${ISADIR}
218 .Ar /platform
219 sub-directory containing kernel
220 .It Va loader_conf_files
221 .Pq Dq Pa /boot/loader.conf /boot/loader.conf.local
222 .It Va beastie_disable
223 If set to
224 .Dq YES ,
225 the beastie boot menu will be skipped.
226 The beastie boot menu is always skipped if running non-x86 hardware.
227 .It Va loader_logo Pq Dq Li illumos
228 Selects a desired logo in the beastie boot menu.
229 Possible values depend on distribution;
230 .Dq Li none
231 will disable the logo.
232 .It Va loader_color
233 If set to
234 .Dq NO ,
235 the beastie boot menu will be displayed without ANSI coloring.
237 .Sh SEE ALSO
238 .Xr boot 8 ,
239 .Xr eeprom 8 ,
240 .Xr loader 5 ,
241 .Xr loader.4th 5
242 .Sh NOTES
244 .Xr loader 5
245 stops reading
247 when it encounters a syntax error, so any options which are vital for
248 booting a particular system should precede any experimental additions to
249 .Nm .