/[gentoo]/xml/htdocs/doc/en/handbook/hb-install-x86+amd64-bootloader.xml
Gentoo

Contents of /xml/htdocs/doc/en/handbook/hb-install-x86+amd64-bootloader.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.41 - (show annotations) (download) (as text)
Sun Aug 17 16:38:13 2014 UTC (6 weeks, 3 days ago) by swift
Branch: MAIN
CVS Tags: HEAD
Changes since 1.40: +4 -4 lines
File MIME type: application/xml
Fix bugs #519554 and #519488 - Update umount instructions

1 <?xml version='1.0' encoding='UTF-8'?>
2 <!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
4 <!-- The content of this document is licensed under the CC-BY-SA license -->
5 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6
7 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-x86+amd64-bootloader.xml,v 1.40 2014/08/17 16:18:31 swift Exp $ -->
8
9 <sections>
10
11 <version>25</version>
12 <date>2014-08-17</date>
13
14 <section>
15 <title>Making your Choice</title>
16 <subsection>
17 <title>Introduction</title>
18 <body>
19
20 <p>
21 Now that your kernel is configured and compiled and the necessary system
22 configuration files are filled in correctly, it is time to install a
23 program that will fire up your kernel when you start the system. Such a
24 program is called a <e>bootloader</e>.
25 </p>
26
27 </body>
28 <body test="contains('AMD64 x86', func:keyval('arch'))">
29
30 <p>
31 For <keyval id="arch"/>, Gentoo Linux provides <uri
32 link="#grub2">GRUB2</uri>, <uri link="#lilo">LILO</uri> and
33 <uri link="#grub">GRUB Legacy</uri>.
34 </p>
35
36 </body>
37 <body test="contains('IA64', func:keyval('arch'))">
38
39 <p>
40 Now, you should install the <uri link="#elilo">elilo bootloader</uri>.
41 </p>
42
43 </body>
44 </subsection>
45 </section>
46 <section id="grub2" test="contains('AMD64 x86', func:keyval('arch'))">
47 <title>Default: Using GRUB2</title>
48 <subsection>
49 <title>Installing GRUB2</title>
50 <body>
51
52 <p>
53 GRUB2 is provided through the <c>sys-boot/grub</c> package.
54 </p>
55
56 <pre caption="Installing GRUB2">
57 # <i>emerge sys-boot/grub</i>
58 </pre>
59
60 <p>
61 The GRUB2 software is now installed on the system, but not activated yet.
62 </p>
63
64 </body>
65 </subsection>
66 <subsection>
67 <title>Configuring GRUB2</title>
68 <body>
69
70 <p>
71 First, let us install the necessary GRUB2 files in <path>/boot/grub</path>.
72 Assuming the first disk (the one where the system boots from) is
73 <path>/dev/sda</path>, the following command will do this for us:
74 </p>
75
76 <pre caption="Installing the GRUB2 files in /boot/grub">
77 # <i>grub2-install /dev/sda</i>
78 </pre>
79
80 <p>
81 Next, we can generate the GRUB2 configuration based on the user configuration
82 specified in the <path>/etc/default/grub</path> file and
83 <path>/etc/grub.d</path> scripts. In most cases, no configuration is needed
84 by users as GRUB2 will automatically detect which kernel to boot (the highest
85 one available in <path>/boot</path>) and what the root file system is.
86 </p>
87
88 <p>
89 To generate the final GRUB2 configuration, run the <c>grub2-mkconfig</c>
90 command:
91 </p>
92
93 <pre caption="Generating GRUB2 configuration">
94 # <i>grub2-mkconfig -o /boot/grub/grub.cfg</i>
95 Generating grub.cfg ...
96 Found linux image: /boot/<keyval id="kernel-name" />
97 Found initrd image: /boot/<keyval id="genkernel-initrd" />
98 done
99 </pre>
100
101 <p>
102 The output of the command <e>must</e> mention that at least one Linux image is
103 found, as those are needed to boot the system. If you use initramfs or used
104 <c>genkernel</c> to build the kernel, the correct initrd image should be
105 detected as well. If this is not the case, go to <path>/boot</path> and check
106 the contents using the <c>ls</c> command. If the files are indeed missing, go
107 back to the kernel configuration and installation instructions.
108 </p>
109
110 </body>
111 </subsection>
112 </section>
113 <section id="lilo" test="contains('AMD64 x86', func:keyval('arch'))">
114 <title>Alternative: Using LILO</title>
115 <subsection>
116 <title>Installing LILO</title>
117 <body>
118
119 <p>
120 LILO, the LInuxLOader, is the tried and true workhorse of Linux
121 bootloaders. However, it lacks some features that GRUB has (which is
122 also the reason why GRUB is currently gaining popularity). The reason
123 why LILO is still used is that, on some systems, GRUB doesn't work and
124 LILO does. Of course, it is also used because some people know LILO and
125 want to stick with it. Either way, Gentoo supports both, and apparently
126 you have chosen to use LILO.
127 </p>
128
129 <p>
130 Installing LILO is a breeze; just use <c>emerge</c>.
131 </p>
132
133 <pre caption="Installing LILO">
134 # <i>emerge lilo</i>
135 </pre>
136
137 </body>
138 </subsection>
139 <subsection>
140 <title>Configuring LILO</title>
141 <body>
142
143 <p>
144 To configure LILO, you must create <path>/etc/lilo.conf</path>. Fire up
145 your favorite editor (in this handbook we use <c>nano</c> for
146 consistency) and create the file.
147 </p>
148
149 <pre caption="Creating /etc/lilo.conf">
150 # <i>nano -w /etc/lilo.conf</i>
151 </pre>
152
153 <p>
154 Some sections ago we have asked you to remember the kernel-image name
155 you have created. In the next example <path>lilo.conf</path> we use the
156 example partitioning scheme.
157 </p>
158
159 <p>
160 Make sure you use <e>your</e> kernel image filename and, if appropriate,
161 <e>your</e> initrd image filename.
162 </p>
163
164 <note>
165 If your root filesystem is JFS, you <e>must</e> add a <c>append="ro"</c>
166 line after each boot item since JFS needs to replay its log before it allows
167 read-write mounting.
168 </note>
169
170 <pre caption="Example /etc/lilo.conf">
171 boot=/dev/sda <comment># Install LILO in the MBR</comment>
172 prompt <comment># Give the user the chance to select another section</comment>
173 timeout=50 <comment># Wait 5 (five) seconds before booting the default section</comment>
174 default=gentoo <comment># When the timeout has passed, boot the "gentoo" section</comment>
175
176 image=/boot/<keyval id="kernel-name"/>
177 label=gentoo <comment># Name we give to this section</comment>
178 read-only <comment># Start with a read-only root. Do not alter!</comment>
179 root=/dev/sda4 <comment># Location of the root filesystem</comment>
180
181 image=/boot/<keyval id="kernel-name"/>
182 label=gentoo.rescue <comment># Name we give to this section</comment>
183 read-only <comment># Start with a read-only root. Do not alter!</comment>
184 root=/dev/sda4 <comment># Location of the root filesystem</comment>
185 append="init=/bin/bb" <comment># Launch the Gentoo static rescue shell</comment>
186
187 <comment># The next two lines are only if you dualboot with a Windows system.</comment>
188 <comment># In this example, Windows is hosted on /dev/sda6.</comment>
189 other=/dev/sda6
190 label=windows
191 </pre>
192
193 <note>
194 If you use a different partitioning scheme and/or kernel image, adjust
195 accordingly.
196 </note>
197
198 <p>
199 If, while building the Linux kernel, you opted to include an initramfs to boot
200 from, then you will need to change the configuration by referring to this
201 initramfs file and telling the initramfs where your real root device is at:
202 </p>
203
204 <pre caption="LILO snippet for initramfs-enabled kernel builds">
205 image=/boot/<keyval id="kernel-name"/>
206 label=gentoo
207 read-only
208 <i>append="real_root=/dev/sda4"</i>
209 <i>initrd=/boot/<keyval id="genkernel-initrd" /></i>
210 </pre>
211
212 <p>
213 If you need to pass any additional options to the kernel, add an
214 <c>append</c> statement to the section. As an example, we add the
215 <c>video</c> statement to enable framebuffer:
216 </p>
217
218 <pre caption="Using append to add kernel options">
219 image=/boot/<keyval id="kernel-name"/>
220 label=gentoo
221 read-only
222 root=/dev/sda4
223 <i>append="video=uvesafb:mtrr,ywrap,1024x768-32@85"</i>
224 </pre>
225
226 <p>
227 If you're using a 2.6.7 or higher kernel and you jumpered your harddrive
228 because the BIOS can't handle large harddrives you'll need to append
229 <c>sda=stroke</c>. Replace sda with the device that requires this option.
230 </p>
231
232 <p>
233 <c>genkernel</c> users should know that their kernels use the same boot options
234 as is used for the Installation CD. For instance, if you have SCSI devices, you
235 should add <c>doscsi</c> as kernel option.
236 </p>
237
238 <p>
239 Now save the file and exit. To finish up, you have to run <c>/sbin/lilo</c> so
240 LILO can apply the <path>/etc/lilo.conf</path> to your system (i.e. install
241 itself on the disk). Keep in mind that you'll also have to run
242 <c>/sbin/lilo</c> every time you install a new kernel or make any changes to
243 the menu.
244 </p>
245
246 <pre caption="Finishing the LILO installation">
247 # <i>/sbin/lilo</i>
248 </pre>
249
250 <p>
251 If you have more questions regarding LILO, please consult its <uri
252 link="http://en.wikipedia.org/wiki/LILO_(boot_loader)">wikipedia page</uri>.
253 </p>
254
255 <p>
256 You can now continue with <uri link="#reboot">Rebooting the System</uri>.
257 </p>
258
259 </body>
260 </subsection>
261 </section>
262 <section id="grub" test="contains('AMD64 x86',func:keyval('arch'))">
263 <title>Alternative: Using GRUB Legacy</title>
264 <subsection>
265 <title>What is Legacy?</title>
266 <body>
267
268 <p>
269 GRUB has been reworked and a new release dubbed GRUB2 is made available. The new
270 GRUB2 codebase is quite different from the current GRUB, which is why this GRUB
271 version is now dubbed as "GRUB Legacy".
272 </p>
273
274 </body>
275 </subsection>
276 <subsection>
277 <title>Understanding GRUB's terminology</title>
278 <body>
279
280 <p>
281 The most critical part of understanding GRUB is getting comfortable with how
282 GRUB refers to hard drives and partitions. Your Linux partition
283 <path>/dev/sda2</path> will most likely be called <path>(hd0,1)</path> under
284 GRUB. Notice the parentheses around the <path>hd0,1</path> - they are
285 required.
286 </p>
287
288 <p>
289 Hard drives count from zero rather than "a" and partitions start at zero
290 rather than one. Be aware too that with the hd devices, only hard drives are
291 counted, not atapi-ide devices such as cdrom players and burners. Also, the
292 same construct is used with SCSI drives. (Normally they get higher numbers
293 than IDE drives except when the BIOS is configured to boot from SCSI devices.)
294 When you ask the BIOS to boot from a different hard disk (for instance your
295 primary slave), <e>that</e> harddisk is seen as <path>hd0</path>.
296 </p>
297
298 <p>
299 Assuming you have a hard drive on <path>/dev/sda</path> and two more on
300 <path>/dev/sdb</path> and <path>/dev/sdc</path>, <path>/dev/sdb7</path> gets
301 translated to <path>(hd1,6)</path>. It might sound tricky and tricky it is
302 indeed, but as we will see, GRUB offers a tab completion mechanism that comes
303 handy for those of you having a lot of hard drives and partitions and who are a
304 little lost in the GRUB numbering scheme.
305 </p>
306
307 <p>
308 Having gotten the feel for that, it is time to install GRUB.
309 </p>
310
311 </body>
312 </subsection>
313 <subsection>
314 <title>Installing GRUB</title>
315 <body>
316
317 <p>
318 To install GRUB Legacy, let's first emerge it:
319 </p>
320
321 <impo test="func:keyval('arch')='AMD64'">
322 If you are using a non-multilib <uri
323 link="?part=1&amp;chap=6#doc_chap2">profile</uri> and still intend to use the
324 GRUB Legacy (instead of GRUB2), you should <b>not</b> emerge
325 <c>grub:0</c>, but instead you should emerge <c>grub-static</c> (only possible
326 if you have enabled IA-32 emulation).
327 </impo>
328
329 <pre caption="Installing GRUB">
330 # <i>emerge sys-boot/grub:0</i>
331 </pre>
332
333 <p>
334 Although GRUB is now installed, we still need to write up a
335 configuration file for it and place GRUB in our MBR so that GRUB automatically
336 boots your newly created kernel. Create <path>/boot/grub/grub.conf</path> with
337 <c>nano</c> (or, if applicable, another editor):
338 </p>
339
340 <pre caption="Creating /boot/grub/grub.conf">
341 # <i>nano -w /boot/grub/grub.conf</i>
342 </pre>
343
344 <p>
345 Now we are going to write up a <path>grub.conf</path>. Make
346 sure you use <e>your</e> kernel image filename and, if appropriate, <e>your</e>
347 initrd image filename.
348 </p>
349
350 <note>
351 Grub assigns device designations from the BIOS. If you change your BIOS
352 settings, your device letters and numbers may change, too. For example, if you
353 change your device boot order, you may need to change your grub configuration.
354 </note>
355
356 <note>
357 If your root filesystem is JFS, you <e>must</e> add " ro" to the <c>kernel</c>
358 line since JFS needs to replay its log before it allows read-write mounting.
359 </note>
360
361 <note>
362 If dualboot with Windows is used, the partitioning example used in this
363 book will not be sufficient (our example uses all four primary partitions
364 for Linux, whereas at least one would need to be extended if Windows is
365 installed on a logical partition). Please proceed with caution and consider
366 the listing to be an example that needs to be modified to suit your own needs.
367 </note>
368
369 <pre caption="Example grub.conf">
370 <comment># Which listing to boot as default. 0 is the first, 1 the second etc.</comment>
371 default 0
372 <comment># How many seconds to wait before the default listing is booted.</comment>
373 timeout 30
374 <comment># Nice, fat splash-image to spice things up :)
375 # Comment out if you don't have a graphics card installed</comment>
376 splashimage=(hd0,1)/boot/grub/splash.xpm.gz
377
378 title Gentoo Linux <keyval id="kernel-version"/>
379 <comment># Partition where the kernel image (or operating system) is located</comment>
380 root (hd0,1)
381 kernel /boot/<keyval id="kernel-name"/> root=/dev/sda4
382
383 title Gentoo Linux <keyval id="kernel-version"/> (rescue)
384 <comment># Partition where the kernel image (or operating system) is located</comment>
385 root (hd0,1)
386 kernel /boot/<keyval id="kernel-name"/> root=/dev/sda4 init=/bin/bb
387
388 <comment># The next four lines are only if you dualboot with a Windows system.</comment>
389 <comment># In this case, Windows is hosted on /dev/sda6.</comment>
390 title Windows XP
391 rootnoverify (hd0,5)
392 makeactive
393 chainloader +1
394 </pre>
395
396 <p>
397 If, while building the Linux kernel, you opted to include an initramfs to boot
398 from, then you will need to change the configuration by referring to this
399 initramfs file and telling the initramfs where your real root device is at:
400 </p>
401
402 <pre caption="GRUB snippet for initramfs-enabled kernel builds">
403 title Gentoo Linux <keyval id="kernel-version"/>
404 root (hd0,1)
405 kernel /boot/<keyval id="kernel-version"/> <i>real_</i>root=/dev/sda4
406 <i>initrd /boot/<keyval id="genkernel-initrd"/></i>
407 </pre>
408
409 <p>
410 If you used a different partitioning scheme and/or kernel image, adjust
411 accordingly. However, make sure that anything that follows a GRUB-device (such
412 as <path>(hd0,1)</path>) is relative to the mountpoint, not the root. In other
413 words, <path>(hd0,1)/grub/splash.xpm.gz</path> is in reality
414 <path>/boot/grub/splash.xpm.gz</path> since <path>(hd0,1)</path> is
415 <path>/boot</path>.
416 </p>
417
418 <p>
419 Besides, if you chose to use a different partitioning scheme and did not put
420 <path>/boot</path> in a separate partition, the <path>/boot</path> prefix used
421 in the above code samples is really <e>required</e>. If you followed our
422 suggested partitioning plan, the <path>/boot</path> prefix it not required, but
423 a <path>boot</path> symlink makes it work. In short, the above examples should
424 work whether you defined a separate <path>/boot</path> partition or not.
425 </p>
426
427 <p>
428 If you need to pass any additional options to the kernel, simply add them to the
429 end of the kernel command. We're already passing one option
430 (<c>root=/dev/sda4</c> or <c>real_root=/dev/sda4</c>), but you can pass others
431 as well, such as the <c>video</c> statement for framebuffer as we discussed
432 previously.
433 </p>
434
435 <p>
436 If your bootloader configuration file contains the real_root parameter, use the
437 real_rootflags parameter to set root filesystem mount options.
438 </p>
439
440 <p>
441 If you're using a 2.6.7 or higher kernel and you jumpered your harddrive
442 because the BIOS can't handle large harddrives you'll need to append
443 <c>sda=stroke</c>. Replace sda with the device that requires this option.
444 </p>
445
446 <p>
447 <c>genkernel</c> users should know that their kernels use the same boot options
448 as is used for the Installation CD. For instance, if you have SCSI devices, you
449 should add <c>doscsi</c> as kernel option.
450 </p>
451
452 <p>
453 Now save the <path>grub.conf</path> file and exit. You still need to install
454 GRUB in the MBR (Master Boot Record) so that GRUB is automatically executed when
455 you boot your system.
456 </p>
457
458 <p>
459 The GRUB developers recommend the use of <c>grub-install</c>. However, if for
460 some reason <c>grub-install</c> fails to work correctly you still have the
461 option to manually install GRUB.
462 </p>
463
464 <p>
465 Continue with <uri link="#grub-install-auto">Default: Setting up GRUB using
466 grub-install</uri> or <uri link="#grub-install-manual">Alternative: Setting up
467 GRUB using manual instructions</uri>.
468 </p>
469
470 </body>
471 </subsection>
472 <subsection id="grub-install-auto">
473 <title>Default: Setting up GRUB using grub-install</title>
474 <body>
475
476 <p>
477 To install GRUB you will need to issue the <c>grub-install</c> command.
478 However, <c>grub-install</c> won't work off-the-shelf since we are inside a
479 chrooted environment. We need to create <path>/etc/mtab</path> which lists all
480 mounted filesystems. Fortunately, there is an easy way to accomplish this -
481 just copy over <path>/proc/mounts</path> to <path>/etc/mtab</path>, excluding
482 the <c>rootfs</c> line if you haven't created a separate boot partition. The
483 following command will work in both cases:
484 </p>
485
486 <pre caption="Creating /etc/mtab">
487 # <i>grep -v rootfs /proc/mounts &gt; /etc/mtab</i>
488 </pre>
489
490 <p>
491 When using Linux virtio disks, we need to tell grub where to find the disks as
492 the <c>grub-install</c> command will otherwise fail. This is done by adding the
493 device definition to the <path>device.map</path> file:
494 </p>
495
496 <pre caption="Adding the virtio disk to the device map table">
497 # <i>echo "(hd0) /dev/vda" >> /boot/grub/device.map</i>
498 </pre>
499
500 <p>
501 Now we can install GRUB using <c>grub-install</c>:
502 </p>
503
504 <pre caption="Running grub-install">
505 # <i>grub-install --no-floppy /dev/sda</i>
506 </pre>
507
508 <p>
509 If you have more questions regarding GRUB, please consult the <uri
510 link="http://www.gnu.org/software/grub/grub-faq.html">GRUB FAQ</uri>, the <uri
511 link="http://grub.enbug.org/GrubLegacy">GRUB Wiki</uri>, or read <c>info
512 grub</c> in your terminal.
513 </p>
514
515 <p>
516 Continue with <uri link="#reboot">Rebooting the System</uri>.
517 </p>
518
519 </body>
520 </subsection>
521 <subsection id="grub-install-manual">
522 <title>Alternative: Setting up GRUB using manual instructions</title>
523 <body>
524
525 <p>
526 To start configuring GRUB, you type in <c>grub</c>. You'll be presented
527 with the <path>grub&gt;</path> grub command-line prompt. Now, you need to type
528 in the right commands to install the GRUB boot record onto your hard drive.
529 </p>
530
531 <pre caption="Starting the GRUB shell">
532 # <i>grub --no-floppy</i>
533 </pre>
534
535 <note>
536 If your system does not have any floppy drives, add the <c>--no-floppy</c>
537 option to the above command to prevent grub from probing the (non-existing)
538 floppy drives.
539 </note>
540
541 <p>
542 In the example configuration we want to install GRUB so that it reads its
543 information from the boot partition <path><keyval id="/boot"/></path>, and
544 installs the GRUB boot record on the hard drive's MBR (master boot record) so
545 that the first thing we see when we turn on the computer is the GRUB prompt. Of
546 course, if you haven't followed the example configuration during the
547 installation, change the commands accordingly.
548 </p>
549
550 <p>
551 The tab completion mechanism of GRUB can be used from within GRUB.
552 For instance, if you type in "<c>root (</c>" followed by a TAB, you will
553 be presented with a list of devices (such as <path>hd0</path>). If you
554 type in "<c>root (hd0,</c>" followed by a TAB, you will receive a list
555 of available partitions to choose from (such as <path>hd0,1</path>).
556 </p>
557
558 <p>
559 By using the tab completion, setting up GRUB should be not that hard.
560 Now go on, configure GRUB, shall we? :-)
561 </p>
562
563 <pre caption="Installing GRUB in the MBR">
564 grub&gt; <i>root (hd0,1)</i> <comment>(Specify where your /boot partition resides)</comment>
565 grub&gt; <i>setup (hd0)</i> <comment>(Install GRUB in the MBR)</comment>
566 grub&gt; <i>quit</i> <comment>(Exit the GRUB shell)</comment>
567 </pre>
568
569 <note>
570 If you want to install GRUB in a certain partition instead of the MBR,
571 you have to alter the <c>setup</c> command so it points to the right
572 partition. For instance, if you want GRUB installed in
573 <path>/dev/sda4</path>, then the command becomes <c>setup (hd0,3)</c>.
574 Few users however want to do this.
575 </note>
576
577 <p>
578 If you have more questions regarding GRUB, please consult the <uri
579 link="http://www.gnu.org/software/grub/grub-faq.html">GRUB FAQ</uri>, the <uri
580 link="http://grub.enbug.org/GrubLegacy">GRUB Wiki</uri>, or read <c>info
581 grub</c> in your terminal.
582 </p>
583
584 <p>
585 Continue with <uri link="#reboot">Rebooting the System</uri>.
586 </p>
587
588 </body>
589 </subsection>
590 </section>
591
592 <section id="elilo" test="func:keyval('arch')='IA64'">
593 <title>Default: Installing elilo</title>
594 <body>
595
596 <p>
597 On the IA64 platform, the boot loader is called <c>elilo</c>. You may need to
598 emerge it on your machine first.
599 </p>
600
601 <pre caption="Installing elilo">
602 # <i>emerge elilo</i>
603 </pre>
604
605 <p>
606 You can find the configuration file at <path>/etc/elilo.conf</path> and a
607 sample file in the typical docs dir
608 <path>/usr/share/doc/elilo-&lt;ver&gt;/</path>. Here is another sample
609 configuration:
610 </p>
611
612 <pre caption="/etc/elilo.conf example">
613 boot=/dev/sda1
614 delay=30
615 timeout=50
616 default=Gentoo
617 append="console=ttyS0,9600"
618 prompt
619
620 image=/vmlinuz
621 label=Gentoo
622 root=/dev/sda2
623 read-only
624
625 image=/vmlinuz.old
626 label=Gentoo.old
627 root=/dev/sda2
628 read-only
629 </pre>
630
631 <p>
632 The <c>boot</c> line tells elilo the location of the boot partition (in this
633 case, <path>/dev/sda1</path>). The <c>delay</c> line sets the number of
634 10<sup>th</sup> of seconds before automatically booting the default when in
635 non-interactive mode. The <c>timeout</c> line is just like the delay line but
636 for interactive mode. The <c>default</c> line sets the default kernel entry
637 (which is defined below). The <c>append</c> line adds extra options to the
638 kernel command line. The <c>prompt</c> sets the default elilo behavior to
639 interactive.
640 </p>
641
642 <p>
643 The sections that start with <c>image</c> define different bootable images.
644 Each image has a nice <c>label</c>, a <c>root</c> filesystem, and will only
645 mount the root filesystem <c>read-only</c>.
646 </p>
647
648 <p>
649 If, while building the Linux kernel, you opted to include an initramfs to boot
650 from, then you will need to change the configuration by referring to this
651 initramfs file and telling the initramfs where your real root device is at:
652 </p>
653
654 <pre caption="ELILO snippet for initramfs-enabled kernel-builds">
655 image=/vmlinuz
656 label=Gentoo
657 <i>initrd=/<keyval id="genkernel-initrd"/></i>
658 <i>append = "initrd=<keyval id="genkernel-initrd"/> real_root=/dev/sda2 console=ttyS0,9600"</i>
659 read-only
660 </pre>
661
662 <p>
663 When configuration is done, just run <c>elilo --efiboot</c>. The
664 <c>--efiboot</c> option adds a menu entry for Gentoo Linux to the EFI Boot
665 Manager.
666 </p>
667
668 <pre caption="Applying the elilo configuration">
669 # <i>elilo --efiboot</i>
670 </pre>
671
672 <p>
673 Now continue with <uri link="#reboot">Rebooting the System</uri>.
674 </p>
675
676 </body>
677 </section>
678 <section id="reboot">
679 <title>Rebooting the System</title>
680 <subsection>
681 <body>
682
683 <p>
684 Exit the chrooted environment and unmount all mounted partitions. Then type in
685 that one magical command you have been waiting for: <c>reboot</c>.
686 </p>
687
688 <pre caption="Unmounting all partitions and rebooting" test="func:keyval('arch')='IA64'">
689 # <i>exit</i>
690 cdimage ~# <i>cd</i>
691 cdimage ~# <i>umount -l /mnt/gentoo/dev{/pts,/shm,}</i>
692 cdimage ~# <i>umount /mnt/gentoo{/boot,/sys,/proc,}</i>
693 cdimage ~# <i>reboot</i>
694 </pre>
695
696 <pre caption="Unmounting all partitions and rebooting" test="not(func:keyval('arch')='IA64')">
697 # <i>exit</i>
698 cdimage ~# <i>cd</i>
699 cdimage ~# <i>umount -l /mnt/gentoo/dev{/shm,/pts,}</i>
700 cdimage ~# <i>umount /mnt/gentoo{/boot,/sys,/proc,}</i>
701 cdimage ~# <i>reboot</i>
702 </pre>
703
704 <p>
705 Of course, don't forget to remove the bootable CD, otherwise the CD will be
706 booted again instead of your new Gentoo system.
707 </p>
708
709 <p test="func:keyval('arch')='IA64'">
710 When you reboot you should see a new Gentoo Linux menu option in the EFI Boot
711 Manager which will boot Gentoo.
712 </p>
713
714 <p>
715 Once rebooted in your Gentoo installation, finish up with <uri
716 link="?part=1&amp;chap=11">Finalizing your Gentoo Installation</uri>.
717 </p>
718
719 </body>
720 </subsection>
721 </section>
722 </sections>

  ViewVC Help
Powered by ViewVC 1.1.20