Contents of /trunk/grubby/grubby.8
Parent Directory | Revision Log
Revision 3148 -
(show annotations)
(download)
Tue Jul 7 11:23:07 2020 UTC (3 years, 11 months ago) by niro
File size: 13734 byte(s)
Tue Jul 7 11:23:07 2020 UTC (3 years, 11 months ago) by niro
File size: 13734 byte(s)
Improve man page for --info option
1 | .TH GRUBBY 8 "Tue Jan 18 2005" |
2 | |
3 | .SH NAME |
4 | |
5 | grubby \- command line tool used to configure bootloader menu entries across |
6 | multiple architectures |
7 | |
8 | .SH SYNOPSIS |
9 | |
10 | \fBgrubby\fR [\fIOPTIONS\fR] |
11 | |
12 | .SH DESCRIPTION |
13 | |
14 | .SS General Information |
15 | |
16 | \fBgrubby\fR is a command line tool for updating and displaying information |
17 | about the configuration files for various architecture specific bootloaders. |
18 | It is primarily designed to be used from scripts which install new kernels |
19 | and need to find information about the current boot environment. |
20 | |
21 | .SS Architecture Support |
22 | |
23 | The \fBgrubby\fR executable has full support for the \fBgrub2\fR |
24 | bootloader on \fBx86_64\fR systems using legacy BIOS or modern |
25 | UEFI firmware and \fBppc64\fR and \fBppc64le\fR hardware using |
26 | OPAL or SLOF as firmware. |
27 | |
28 | Legacy \fBs390\fR and the current \fBs390x\fR architectures |
29 | and their \fBzipl\fR bootloader are fully supported. |
30 | |
31 | Support for \fByaboot\fR has been deprecated as all ppc architecture |
32 | hardware since the Power8 uses \fBgrub2\fR or petitboot |
33 | which both use the grub2 configuration file format. |
34 | |
35 | Legacy bootloaders \fBLILO\fR, \fBSILO\fR, and \fBELILO\fR |
36 | are deprecated and no longer receiving active support in favor of |
37 | previously mentioned bootloaders. |
38 | |
39 | .SS Default Behavior |
40 | |
41 | The default bootloader target is primarily determined by the architecture |
42 | for which grubby has been built. Each architecture has a preferred |
43 | bootloader, and each bootloader has its own configuration file. If no |
44 | bootloader is selected on the command line, grubby will use these default |
45 | settings to search for an existing configuration. If no bootloader |
46 | configuration file is found, grubby will use the default value for that |
47 | architecture. These defaults are listed in the table below. |
48 | |
49 | .TS |
50 | allbox; |
51 | lbw6 lbw10 lbw18 |
52 | l l l. |
53 | Arch Bootloader Configuration File |
54 | x86_64 [BIOS] grub2 /boot/grub2/grub.cfg |
55 | x86_64 [UEFI] grub2 /boot/efi/EFI/redhat/grub.cfg |
56 | i386 grub2 /boot/grub2/grub.cfg |
57 | ia64 elilo /boot/efi/EFI/redhat/elilo.conf |
58 | ppc [>=Power8] grub2 /boot/grub2/grub.cfg |
59 | ppc [<=Power7] yaboot /etc/yaboot.conf |
60 | s390 zipl /etc/zipl.conf |
61 | s390x zipl /etc/zipl.conf |
62 | .TE |
63 | |
64 | |
65 | .SS Special Arguments |
66 | |
67 | There are a number of ways to specify the kernel used for \fB-\-info\fR, |
68 | \fB-\-remove-kernel\fR, and \fB-\-update-kernel\fR. Specifying \fBDEFAULT\fR |
69 | or \fBALL\fR selects the default entry and all of the entries, respectively. |
70 | If a comma separated list of numbers is given, the boot entries indexed |
71 | by those numbers are selected. Finally, the title of a boot entry may |
72 | be specified by using \fBTITLE=\fItitle\fR as the argument; all entries |
73 | with that title are used. |
74 | |
75 | .SH OPTIONS |
76 | |
77 | .SS Basic Options |
78 | |
79 | .TP |
80 | \fB-\-add-kernel\fR=\fIkernel-path\fR |
81 | Add a new boot entry for the kernel located at \fIkernel-path\fR. A title for |
82 | the boot entry must be set using \fB-\-title\fR. Most invocations should also |
83 | include \fB-\-initrd\fR with memtest86 as a notable exception. |
84 | |
85 | The \fB-\-update-kernel\fR option may not be used in the same invocation. |
86 | |
87 | .TP |
88 | \fB-\-remove-kernel\fR=\fIkernel-path\fR |
89 | Remove all boot entries which match \fIkernel-path\fR. This may be used |
90 | along with \fB-\-add-kernel\fR, in which case the new entry being added will |
91 | not be removed. |
92 | |
93 | .TP |
94 | \fB-\-update-kernel\fR=\fIkernel-path\fR |
95 | Update the entries for kernels matching \fRkernel-path\fR. Currently |
96 | the only item that can be updated is the kernel argument list, which is |
97 | modified via the \fB-\-args\fR and \fB-\-remove-args\fR options. |
98 | |
99 | .TP |
100 | \fB-\-args\fR=\fIkernel-args\fR |
101 | When a new kernel is added, this specifies the command line arguments |
102 | which should be passed to the kernel by default (note they are merged |
103 | with the arguments from the template if \fB-\-copy-default\fR is used). |
104 | When \fB-\-update-kernel\fR is used, this specifies new arguments to add |
105 | to the argument list. Multiple, space separated arguments may be used. If |
106 | an argument already exists the new value replaces the old values. The |
107 | \fBroot=\fR kernel argument gets special handling if the configuration |
108 | file has special handling for specifying the root filesystem (like |
109 | lilo.conf does). |
110 | |
111 | .TP |
112 | \fB-\-remove-args\fR=\fIkernel-args\fR |
113 | The arguments specified by \fIkernel-args\fR are removed from the |
114 | kernels specified by \fB-\-update-kernel\fR. The \fBroot\fR argument |
115 | gets special handling for configuration files that support separate root |
116 | filesystem configuration. |
117 | |
118 | .TP |
119 | \fB-\-copy-default\fR |
120 | \fBgrubby\fR will copy as much information (such as kernel arguments and |
121 | root device) as possible from the current default kernel. The kernel path |
122 | and initrd path will never be copied. |
123 | |
124 | .TP |
125 | \fB-\-title\fR=\fIentry-title\fR |
126 | When a new kernel entry is added \fIentry-title\fR is used as the title |
127 | (\fBlilo\fR label) for the entry. If \fIentry-title\fR is longer then maximum |
128 | length allowed by the bootloader (15 for lilo, unlimited for grub and elilo) |
129 | the title is shortened to a (unique) entry. |
130 | |
131 | .TP |
132 | \fB-\-initrd\fR=\fIinitrd-path\fR |
133 | Use \fIinitrd-path\fR as the path to an initial ram disk for a new kernel |
134 | being added. |
135 | |
136 | .TP |
137 | \fB-\-efi\fR |
138 | Use appropriate bootloader commands for EFI on this architecture. |
139 | |
140 | .TP |
141 | \fB-\-set-default\fR=\fIkernel-path\fR |
142 | The first entry which boots the specified kernel is made the default |
143 | boot entry. This may not be invoked with \fB-\-set-default-index\fR. |
144 | |
145 | .TP |
146 | \fB-\-set-default-index\fR=\fIentry-index\fR |
147 | Makes the given entry number the default boot entry. This may not be invoked |
148 | with \fB-\-set-default\fR. The given value represents the index in the |
149 | post-modification boot entry list. |
150 | |
151 | .TP |
152 | \fB-\-make-default\fR |
153 | Make the new kernel entry being added the default entry. |
154 | |
155 | .TP |
156 | \fB-\-set-index\fR=\fIentry-index\fR |
157 | Set the position at which to add a new entry created with \fB-\-add-kernel\fR. |
158 | |
159 | .TP |
160 | \fB-\-debug\fR |
161 | Display extra debugging information for failures. |
162 | |
163 | .TP |
164 | \fB-i\fR, \fB-\-extra-initrd\fR=\fIinitrd-path\fR |
165 | Use \fIinitrd-path\fR as the path for an auxiliary initrd image. |
166 | |
167 | .SS Display Options |
168 | |
169 | Passing the display option to grubby will cause it to print out the |
170 | requested information about the current bootloader configuration and |
171 | then immediately exit. These options should not be used in any |
172 | script intended to update the bootloader configuration. |
173 | |
174 | .TP |
175 | \fB-\-default-kernel\fR |
176 | Display the full path to the current default kernel and exit. |
177 | |
178 | .TP |
179 | \fB-\-default-index\fR |
180 | Display the numeric index of the current default boot entry and exit. |
181 | |
182 | .TP |
183 | \fB-\-default-title\fR |
184 | Display the title of the current default boot entry and exit. |
185 | |
186 | .TP |
187 | \fB-\-info\fR=\fIkernel-path\fR |
188 | Display information on all boot entries which match \fIkernel-path\fR. If |
189 | \fIkernel-path\fR is \fBDEFAULT\fR, then information on the default kernel |
190 | is displayed. If \fIkernel-path\fR is \fBALL\fR, then information on all boot |
191 | entries are displayed. |
192 | |
193 | .TP |
194 | \fB-\-bootloader-probe\fR |
195 | Attempt to probe for installed bootloaders. If this option is specified, |
196 | \fBgrubby\fR tries to determine if \fBgrub\fR or \fBlilo\fR is currently |
197 | installed. When one of those bootloaders is found the name of that |
198 | bootloader is displayed on stdout. Both could be installed (on different |
199 | devices), and grubby will print out the names of both bootloaders, one per |
200 | line. The probe for \fBgrub\fR requires a commented out boot directive |
201 | \fBgrub.conf\fR identical to the standard directive in the lilo |
202 | configuration file. If this is not present \fBgrubby\fR will assume grub is |
203 | not installed (note that \fBanaconda\fR places this directive in |
204 | \fBgrub.conf\fR files it creates). |
205 | |
206 | \fIThis option is only available on x86 BIOS platforms.\fR |
207 | |
208 | .TP |
209 | \fB-v\fR, \fB-\-version\fR |
210 | Display the version of \fBgrubby\fR being run and then exit immediately. |
211 | |
212 | .SS Output Format Options |
213 | |
214 | Sane default options for the current platform are compiled into grubby on |
215 | a per platform basis. These defaults determine the format and layout of |
216 | the generated bootloader configuration file. A different configuration file |
217 | format may be specified on the command line if the system uses a supported |
218 | alternative bootloader. |
219 | |
220 | .TP |
221 | \fB-\-elilo\fR |
222 | Use an \fBelilo\fR style configuration file. This is the default on ia64 |
223 | platforms. This format is deprecated. |
224 | |
225 | .TP |
226 | \fB-\-extlinux\fR |
227 | Use an \fBextlinux\fR style configuration file. This format is deprecated. |
228 | |
229 | .TP |
230 | \fB-\-grub\fR |
231 | Use a \fBgrub\fR style configuration file. This is the default on the i386 |
232 | architecture. |
233 | |
234 | .TP |
235 | \fB-\-grub2\fR |
236 | Use a \fBgrub2\fR style configuration file. This is the default on |
237 | \fBx86_64\fR architecture as well as the \fBppc64\fR and \fBppc64le\fR |
238 | architectures running on Power8 or later hardware. |
239 | |
240 | .TP |
241 | \fB-\-lilo\fR |
242 | Use a \fBlilo\fR style configuration file. |
243 | |
244 | .TP |
245 | \fB-\-silo\fR |
246 | Use a \fBsilo\fR style configuration file. This is the default on SPARC |
247 | systems. This format is legacy, deprecated, and unsupported. |
248 | |
249 | .TP |
250 | \fB-\-yaboot\fR |
251 | Use a \fByaboot\fR style configuration file. This is the default for |
252 | the \fBppc\fR architecture on on Power7 and earlier hardware. |
253 | |
254 | .TP |
255 | \fB-\-zipl\fR |
256 | Use a \fBzipl\fR style configuration file. This is the default on the |
257 | legacy s390 and current s390x architectures. |
258 | |
259 | .SS Override Options |
260 | |
261 | .TP |
262 | \fB-\-bad-image-okay\fR |
263 | When \fBgrubby\fR is looking for a entry to use for something (such |
264 | as a template or a default boot entry) it uses sanity checks, such as |
265 | ensuring that the kernel exists in the filesystem, to make sure |
266 | entries that obviously won't work aren't selected. This option overrides |
267 | that behavior, and is designed primarily for testing. |
268 | |
269 | .TP |
270 | \fB-\-boot-filesystem\fR=\fIbootfs\fR |
271 | The \fBgrub\fR boot loader expects file paths listed in its configuration |
272 | path to be relative to the top of the filesystem they are on, rather then |
273 | relative to the current root filesystem. By default \fBgrubby\fR searches |
274 | the list of currently mounted filesystems to determine this. If this option |
275 | is given \fBgrubby\fR acts as if the specified filesystem was the filesystem |
276 | containing the kernel (this option is designed primarily for testing). |
277 | |
278 | .TP |
279 | \fB-\-env\fR=\fIpath\fR |
280 | Path for the file where grub environment data is stored. |
281 | |
282 | .TP |
283 | \fB-c\fR, \fB-\-config-file\fR=\fIpath\fR |
284 | Use \fIpath\fR as the configuration file rather then the default. |
285 | |
286 | .TP |
287 | \fB-o\fR, \fB-\-output-file\fR=\fIfile_path\fR |
288 | The destination path for the updated configuration file. Use "-" to |
289 | send it to stdout. |
290 | |
291 | .TP |
292 | \fB-\-devtree\fR=\fIfile_path\fR |
293 | Use \fIpath\fR for device tree path in place of the path of any devicetree |
294 | directive found in the template stanza. |
295 | |
296 | .TP |
297 | \fB-\-devtreedir\fR=\fIfile_path\fR |
298 | Use the specified \fIfile path\fR to load the devicetree definition. This is |
299 | for platforms where a flat file is used instead of firmware to instruct the |
300 | kernel how to communicate with devices. |
301 | |
302 | .SS Multiboot Options |
303 | |
304 | The Multiboot Specification provides a generic interface for boot |
305 | loaders and operating systems. It is supported by the GRUB bootloader. |
306 | |
307 | .TP |
308 | \fB-\-add-multiboot\fR=\fImultiboot-path\fR |
309 | Add a new boot entry for the multiboot kernel located at |
310 | \fImultiboot-path\fR. Note that this is generally accompanied with a |
311 | \fB--add-kernel\fR option. |
312 | |
313 | .TP |
314 | \fB-\-remove-multiboot\fR=\fImultiboot-path\fR |
315 | Removes all boot entries which match \fImultiboot-path\fR. |
316 | |
317 | .TP |
318 | \fB-\-mbargs\fR=\fImultiboot-args\fR |
319 | When a new multiboot kernel is added, this specifies the command line |
320 | arguments which should be passed to that kernel by default |
321 | When \fB-\-update-kernel\fR is used, this specifies new arguments to add |
322 | to the argument list. Multiple, space separated arguments may be used. If |
323 | an argument already exists the new value replaces the old values. |
324 | |
325 | .TP |
326 | \fB-\-remove-mbargs\fR=\fImultiboot-args\fR |
327 | The arguments specified by \fImultiboot-args\fR are removed from the |
328 | kernels specified by \fB-\-update-kernel\fR. |
329 | |
330 | .SH "BUGS" |
331 | |
332 | The command line syntax is more than a little baroque. This probably |
333 | won't be fixed as \fBgrubby\fR is only intended to be called from shell |
334 | scripts which can get it right. |
335 | |
336 | .SH EXAMPLE |
337 | |
338 | The following examples assume the following: |
339 | |
340 | .TS |
341 | allbox; |
342 | rbw15 l. |
343 | cfg_file Full path to bootloader config file |
344 | new_kernel Full path to kernel image to be installed |
345 | old_kernel Full path to old kernel image to be removed |
346 | current_kernel Full path to a currently installed kernel |
347 | entry_title Title that appears on bootloader menu |
348 | new_initrd Full path to initrd for a new kernel |
349 | kernel_args Set of arguments for the kernel |
350 | menu_index Index number of a menu entry |
351 | .TE |
352 | |
353 | The examples below quote strings that may have spaces or other whitespace in |
354 | them. It is also perfectly valid to backslash escape these strings if that |
355 | is more convenient. |
356 | |
357 | .PP |
358 | Add a new kernel entry and copy all options from the current default kernel. |
359 | This is the behavior that most users will want. |
360 | .IP |
361 | \fBgrubby\fR --add-kernel=\fInew_kernel\fR --title="\fIentry_title\fR" --initrd="\fInew_initrd\fR" --copy-default |
362 | .PP |
363 | Add a new kernel entry with custom arguments |
364 | .IP |
365 | \fBgrubby\fR --add-kernel=\fInew_kernel\fR --title="\fIentry_title\fR" --initrd="\fInew_initrd\fR" --args=\fIkernel_args\fR |
366 | .PP |
367 | Remove \fBall menu entries\fR for a specified kernel. |
368 | .IP |
369 | \fBgrubby\fR --remove-kernel=\fIold_kernel\fR |
370 | .PP |
371 | Target a single menu entry to remove without targetting other entries with |
372 | the same kernel. |
373 | .IP |
374 | \fBgrubby\fR --info=\fIold_kernel\fR |
375 | |
376 | \fBgrubby\fR --remove-kernel=\fImenu_index\fR |
377 | .PP |
378 | Update the arguments for all entries of a specific kernel. New arguments get |
379 | added while existing arguments get updated values. |
380 | .IP |
381 | \fBgrubby\fR --update-kernel=\fIcurrent_kernel\fR --args="\fIkernel_args\fR" |
382 | .PP |
383 | Remove the arguments for a single entry of a specific kernel. |
384 | .IP |
385 | \fBgrubby\fR --info=\fIcurrent_kernel\fR |
386 | |
387 | \fBgrubby\fR --remove-args=\fImenu_index\fR --args="\fIkernel_args\fR" |
388 | |
389 | .SH "SEE ALSO" |
390 | |
391 | .BR grub (8), |
392 | .BR lilo (8), |
393 | .BR yaboot (8), |
394 | .BR zipl (8), |
395 | .BR dracut (8), |
396 | .BR mkinitrd (8) |
397 | |
398 | .SH AUTHORS |
399 | |
400 | .nf |
401 | Erik Troan |
402 | Jeremy Katz |
403 | Peter Jones |
404 | Robert Marshall |
405 | .fi |