source: chapter08/grub.xml@ a2434bd4

multilib
Last change on this file since a2434bd4 was 2fe0fd1, checked in by Xi Ruoyao <xry111@…>, 17 months ago

grub: HFS and HFS+ are file systems, not files

  • Property mode set to 100644
File size: 14.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-system-grub" role="wrap">
9 <?dbhtml filename="grub.html"?>
10
11 <sect1info condition="script">
12 <productname>grub</productname>
13 <productnumber>&grub-version;</productnumber>
14 <address>&grub-url;</address>
15 </sect1info>
16
17 <title>GRUB-&grub-version;</title>
18
19 <indexterm zone="ch-system-grub">
20 <primary sortas="a-Grub">GRUB</primary>
21 </indexterm>
22
23 <sect2 role="package">
24 <title/>
25
26 <para>The GRUB package contains the GRand Unified Bootloader.</para>
27
28 <segmentedlist>
29 <segtitle>&buildtime;</segtitle>
30 <segtitle>&diskspace;</segtitle>
31
32 <seglistitem>
33 <seg>&grub-fin-sbu;</seg>
34 <seg>&grub-fin-du;</seg>
35 </seglistitem>
36 </segmentedlist>
37
38 </sect2>
39
40 <sect2 role="installation">
41 <title>Installation of GRUB</title>
42
43 <note>
44 <para>
45 If your system has UEFI support and you wish to boot LFS with UEFI,
46 you can skip this package in LFS,
47 and install GRUB with UEFI support (and its dependencies) by following
48 the instructions on
49 <ulink url="&blfs-book;postlfs/grub-efi.html">the BLFS page</ulink>.
50 </para>
51 </note>
52
53 <warning>
54 <para>Unset any environment variables which may affect the build:</para>
55
56 <screen><userinput remap='pre'>unset {C,CPP,CXX,LD}FLAGS</userinput></screen>
57
58 <para>Don't try <quote>tuning</quote> this package with custom
59 compilation flags. This package is a bootloader. The low-level
60 operations in the source code may be broken by
61 aggressive optimization.</para>
62 </warning>
63
64 <para>Prepare GRUB for compilation:</para>
65
66<screen><userinput remap="configure">./configure --prefix=/usr \
67 --sysconfdir=/etc \
68 --disable-efiemu \
69 --disable-werror</userinput></screen>
70
71 <variablelist>
72 <title>The meaning of the new configure options:</title>
73
74 <varlistentry>
75 <term><parameter>--disable-werror</parameter></term>
76 <listitem>
77 <para>This allows the build to complete with warnings introduced
78 by more recent versions of Flex.</para>
79 </listitem>
80 </varlistentry>
81
82 <varlistentry>
83 <term><parameter>--disable-efiemu</parameter></term>
84 <listitem>
85 <para>This option minimizes what is built by disabling a feature and
86 eliminating some test programs not needed for LFS.</para>
87 </listitem>
88 </varlistentry>
89
90 </variablelist>
91
92 <para>Compile the package:</para>
93
94<screen><userinput remap="make">make</userinput></screen>
95
96 <para>The test suite for this packages is not recommended. Most of
97 the tests depend on packages that are not available in the limited
98 LFS environment. To run the tests anyway, run <command>make check</command>.</para>
99
100 <para>Install the package:</para>
101
102<screen><userinput remap="install">make install
103mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions</userinput></screen>
104
105 <para>Making your LFS system bootable with GRUB will be discussed in
106 <xref linkend="ch-bootable-grub"/>.</para>
107
108 </sect2>
109
110 <sect2 id="contents-gRUB" role="content">
111 <title>Contents of GRUB</title>
112
113 <segmentedlist>
114 <segtitle>Installed programs</segtitle>
115 <segtitle>Installed directories</segtitle>
116
117 <seglistitem>
118
119 <seg>grub-bios-setup, grub-editenv, grub-file, grub-fstest,
120 grub-glue-efi, grub-install, grub-kbdcomp, grub-macbless,
121 grub-menulst2cfg, grub-mkconfig,
122 grub-mkimage, grub-mklayout, grub-mknetdir,
123 grub-mkpasswd-pbkdf2, grub-mkrelpath, grub-mkrescue, grub-mkstandalone,
124 grub-ofpathname, grub-probe, grub-reboot, grub-render-label,
125 grub-script-check,
126 grub-set-default, grub-sparc64-setup, and grub-syslinux2cfg</seg>
127
128 <seg>/usr/lib/grub, /etc/grub.d, /usr/share/grub, and /boot/grub (when grub-install
129 is first run)</seg>
130 </seglistitem>
131 </segmentedlist>
132
133 <variablelist>
134 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
135 <?dbfo list-presentation="list"?>
136 <?dbhtml list-presentation="table"?>
137
138 <varlistentry id="grub-bios-setup">
139 <term><command>grub-bios-setup</command></term>
140 <listitem>
141 <para>Is a helper program for <command>grub-install</command></para>
142 <indexterm zone="ch-system-grub grub-bios-setup">
143 <primary sortas="b-grub-bios-setup">grub-bios-setup</primary>
144 </indexterm>
145 </listitem>
146 </varlistentry>
147
148 <varlistentry id="grub-editenv">
149 <term><command>grub-editenv</command></term>
150 <listitem>
151 <para>Is a tool to edit the environment block</para>
152 <indexterm zone="ch-system-grub grub-editenv">
153 <primary sortas="b-grub-editenv">grub-editenv</primary>
154 </indexterm>
155 </listitem>
156 </varlistentry>
157
158 <varlistentry id="grub-file">
159 <term><command>grub-file</command></term>
160 <listitem>
161 <para>Checks to see if the given file is of the specified type</para>
162 <indexterm zone="ch-system-grub grub-file">
163 <primary sortas="b-grub-file">grub-file</primary>
164 </indexterm>
165 </listitem>
166 </varlistentry>
167
168 <varlistentry id="grub-fstest">
169 <term><command>grub-fstest</command></term>
170 <listitem>
171 <para>Is a tool to debug the filesystem driver</para>
172 <indexterm zone="ch-system-grub grub-fstest">
173 <primary sortas="b-grub-fstest">grub-fstest</primary>
174 </indexterm>
175 </listitem>
176 </varlistentry>
177
178 <varlistentry id="grub-glue-efi">
179 <term><command>grub-glue-efi</command></term>
180 <listitem>
181 <para>Glues 32-bit and 64-bit binaries into a single file (for Apple machines)</para>
182 <indexterm zone="ch-system-grub grub-glue-efi">
183 <primary sortas="b-grub-glue-efi">grub-glue-efi</primary>
184 </indexterm>
185 </listitem>
186 </varlistentry>
187
188 <varlistentry id="grub-install">
189 <term><command>grub-install</command></term>
190 <listitem>
191 <para>Installs GRUB on your drive</para>
192 <indexterm zone="ch-system-grub grub-install">
193 <primary sortas="b-grub-install">grub-install</primary>
194 </indexterm>
195 </listitem>
196 </varlistentry>
197
198 <varlistentry id="grub-kbdcomp">
199 <term><command>grub-kbdcomp</command></term>
200 <listitem>
201 <para>Is a script that converts an xkb layout into one recognized by
202 GRUB</para>
203 <indexterm zone="ch-system-grub grub-kbdcomp">
204 <primary sortas="b-grub-kbdcomp">grub-kbdcomp</primary>
205 </indexterm>
206 </listitem>
207 </varlistentry>
208
209 <varlistentry id="grub-macbless">
210 <term><command>grub-macbless</command></term>
211 <listitem>
212 <para>Is the Mac-style bless for HFS or HFS+ file systems (<command>bless</command>
213 is peculiar to Apple machines; it makes a device bootable)</para>
214 <indexterm zone="ch-system-grub grub-macbless">
215 <primary sortas="b-grub-macbless">grub-macbless</primary>
216 </indexterm>
217 </listitem>
218 </varlistentry>
219
220 <varlistentry id="grub-menulst2cfg">
221 <term><command>grub-menulst2cfg</command></term>
222 <listitem>
223 <para>Converts a GRUB Legacy <filename>menu.lst</filename>
224 into a <filename>grub.cfg</filename> for use with GRUB 2</para>
225 <indexterm zone="ch-system-grub grub-menulst2cfg">
226 <primary sortas="b-grub-menulst2cfg">grub-menulst2cfg</primary>
227 </indexterm>
228 </listitem>
229 </varlistentry>
230
231 <varlistentry id="grub-mkconfig">
232 <term><command>grub-mkconfig</command></term>
233 <listitem>
234 <para>Generates a <filename>grub.cfg</filename> file</para>
235 <indexterm zone="ch-system-grub grub-mkconfig">
236 <primary sortas="b-grub-mkconfig">grub-mkconfig</primary>
237 </indexterm>
238 </listitem>
239 </varlistentry>
240
241 <varlistentry id="grub-mkimage">
242 <term><command>grub-mkimage</command></term>
243 <listitem>
244 <para>Makes a bootable image of GRUB</para>
245 <indexterm zone="ch-system-grub grub-mkimage">
246 <primary sortas="b-grub-mkimage">grub-mkimage</primary>
247 </indexterm>
248 </listitem>
249 </varlistentry>
250
251 <varlistentry id="grub-mklayout">
252 <term><command>grub-mklayout</command></term>
253 <listitem>
254 <para>Generates a GRUB keyboard layout file</para>
255 <indexterm zone="ch-system-grub grub-mklayout">
256 <primary sortas="b-grub-mklayout">grub-mklayout</primary>
257 </indexterm>
258 </listitem>
259 </varlistentry>
260
261 <varlistentry id="grub-mknetdir">
262 <term><command>grub-mknetdir</command></term>
263 <listitem>
264 <para>Prepares a GRUB netboot directory</para>
265 <indexterm zone="ch-system-grub grub-mknetdir">
266 <primary sortas="b-grub-mknetdir">grub-mknetdir</primary>
267 </indexterm>
268 </listitem>
269 </varlistentry>
270
271 <varlistentry id="grub-mkpasswd-pbkdf2">
272 <term><command>grub-mkpasswd-pbkdf2</command></term>
273 <listitem>
274 <para>Generates an encrypted PBKDF2 password for use in the boot
275 menu</para>
276 <indexterm zone="ch-system-grub grub-mkpasswd-pbkdf2">
277 <primary sortas="b-grub-mkpasswd-pbkdf2">grub-mkpasswd-pbkdf2</primary>
278 </indexterm>
279 </listitem>
280 </varlistentry>
281
282 <varlistentry id="grub-mkrelpath">
283 <term><command>grub-mkrelpath</command></term>
284 <listitem>
285 <para>Makes a system pathname relative to its root</para>
286 <indexterm zone="ch-system-grub grub-mkrelpath">
287 <primary sortas="b-grub-mkrelpath">grub-mkrelpath</primary>
288 </indexterm>
289 </listitem>
290 </varlistentry>
291
292 <varlistentry id="grub-mkrescue">
293 <term><command>grub-mkrescue</command></term>
294 <listitem>
295 <para>Makes a bootable image of GRUB suitable for a floppy disk,
296 CDROM/DVD, or a USB drive</para>
297 <indexterm zone="ch-system-grub grub-mkrescue">
298 <primary sortas="b-grub-mkrescue">grub-mkrescue</primary>
299 </indexterm>
300 </listitem>
301 </varlistentry>
302
303 <varlistentry id="grub-mkstandalone">
304 <term><command>grub-mkstandalone</command></term>
305 <listitem>
306 <para>Generates a standalone image</para>
307 <indexterm zone="ch-system-grub grub-mkstandalone">
308 <primary sortas="b-grub-mkstandalone">grub-mkstandalone</primary>
309 </indexterm>
310 </listitem>
311 </varlistentry>
312
313 <varlistentry id="grub-ofpathname">
314 <term><command>grub-ofpathname</command></term>
315 <listitem>
316 <para>Is a helper program that prints the path to a GRUB device</para>
317 <indexterm zone="ch-system-grub grub-ofpathname">
318 <primary sortas="b-grub-ofpathname">grub-ofpathname</primary>
319 </indexterm>
320 </listitem>
321 </varlistentry>
322
323 <varlistentry id="grub-probe">
324 <term><command>grub-probe</command></term>
325 <listitem>
326 <para>Probes device information for a given path or device</para>
327 <indexterm zone="ch-system-grub grub-probe">
328 <primary sortas="b-grub-probe">grub-probe</primary>
329 </indexterm>
330 </listitem>
331 </varlistentry>
332
333 <varlistentry id="grub-reboot">
334 <term><command>grub-reboot</command></term>
335 <listitem>
336 <para>Sets the default boot entry for GRUB for the next boot only</para>
337 <indexterm zone="ch-system-grub grub-reboot">
338 <primary sortas="b-grub-reboot">grub-reboot</primary>
339 </indexterm>
340 </listitem>
341 </varlistentry>
342
343 <varlistentry id="grub-render-label">
344 <term><command>grub-render-label</command></term>
345 <listitem>
346 <para>Renders Apple .disk_label for Apple Macs</para>
347 <indexterm zone="ch-system-grub grub-render-label">
348 <primary sortas="b-grub-render-label">grub-render-label</primary>
349 </indexterm>
350 </listitem>
351 </varlistentry>
352
353 <varlistentry id="grub-script-check">
354 <term><command>grub-script-check</command></term>
355 <listitem>
356 <para>Checks the GRUB configuration script for syntax errors</para>
357 <indexterm zone="ch-system-grub grub-script-check">
358 <primary sortas="b-grub-script-check">grub-script-check</primary>
359 </indexterm>
360 </listitem>
361 </varlistentry>
362
363 <varlistentry id="grub-set-default">
364 <term><command>grub-set-default</command></term>
365 <listitem>
366 <para>Sets the default boot entry for GRUB</para>
367 <indexterm zone="ch-system-grub grub-set-default">
368 <primary sortas="b-grub-set-default">grub-set-default</primary>
369 </indexterm>
370 </listitem>
371 </varlistentry>
372
373 <varlistentry id="grub-sparc64-setup">
374 <term><command>grub-sparc64-setup</command></term>
375 <listitem>
376 <para>Is a helper program for grub-setup</para>
377 <indexterm zone="ch-system-grub grub-sparc64-setup">
378 <primary sortas="b-grub-sparc64-setup">grub-setup</primary>
379 </indexterm>
380 </listitem>
381 </varlistentry>
382
383 <varlistentry id="grub-syslinux2cfg">
384 <term><command>grub-syslinux2cfg</command></term>
385 <listitem>
386 <para>Transforms a syslinux config file into grub.cfg format</para>
387 <indexterm zone="ch-system-grub grub-syslinux2cfg">
388 <primary sortas="b-grub-syslinux2cfg">grub-syslinux2cfg</primary>
389 </indexterm>
390 </listitem>
391 </varlistentry>
392
393 </variablelist>
394
395 </sect2>
396
397</sect1>
Note: See TracBrowser for help on using the repository browser.