/[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.10 - (hide annotations) (download) (as text)
Tue Apr 1 08:53:46 2008 UTC (6 years, 8 months ago) by nightmorph
Branch: MAIN
Changes since 1.9: +20 -33 lines
File MIME type: application/xml
release time. note that since this is beta1, the release dir and stage/media names have been adjusted accordingly. also, the handbooks are marked with a disclaimer=draft, so once the final is out, that will be removed and the release names adjusted. in the mean time, these are live. the beta is officially released. no, it's not april fools, but it is april 1st. :)

1 neysx 1.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 nightmorph 1.10 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/draft/hb-install-x86+amd64-bootloader.xml,v 1.12 2008/03/31 21:48:59 nightmorph Exp $ -->
8 neysx 1.1
9     <sections>
10    
11 nightmorph 1.10 <version>6.0</version>
12     <date>2008-04-01</date>
13 neysx 1.1
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 neysx 1.2 program is called a <e>bootloader</e>.
25     </p>
26    
27 neysx 1.9 </body>
28     <body test="contains('AMD64 x86', func:keyval('arch'))">
29     <p>
30     For <keyval id="arch"/>, Gentoo Linux provides <uri
31 neysx 1.2 link="#grub">GRUB</uri> and <uri link="#lilo">LILO</uri>.
32     </p>
33    
34 neysx 1.9 <warn test="func:keyval('arch')='AMD64'">
35     Using LILO on the AMD64 architecture is not recommended.
36     </warn>
37    
38     </body>
39     <body>
40 neysx 1.2 <p>
41     But before we install the bootloader, we inform you how to configure
42     framebuffer (assuming you want it of course). With framebuffer you can run the
43     Linux command line with (limited) graphical features (such as using the nice
44     bootsplash image Gentoo provides).
45 neysx 1.1 </p>
46    
47     </body>
48     </subsection>
49     <subsection>
50     <title>Optional: Framebuffer</title>
51     <body>
52    
53     <p>
54     <e>If</e> you have configured your kernel with framebuffer support (or you used
55 neysx 1.2 <c>genkernel</c> default kernel configuration), you can activate it by adding a
56     <c>vga</c> and/or a <c>video</c> statement to your bootloader configuration
57 neysx 1.1 file.
58     </p>
59    
60 nightmorph 1.10 <p>
61 neysx 1.2 First of all, you need to know what type of framebuffer device you're using. If
62 neysx 1.1 you use a Gentoo patched kernel tree (such as <c>gentoo-sources</c>) you will
63 nightmorph 1.10 have had the possibility of selecting <c>uvesafb</c> as the <e>VESA driver</e>.
64     If this is the case, you are using <c>uvesafb</c> and <e>do not need</e> to set
65     a <c>vga</c> statement. Otherwise you are using the <c>vesafb</c> driver and
66     <e>need</e> to set the <c>vga</c> statement.
67 neysx 1.1 </p>
68    
69     <p>
70     The <c>vga</c> statement controls the resolution and color depth of your
71     framebuffer screen for <c>vesafb</c>. As stated in
72     <path>/usr/src/linux/Documentation/fb/vesafb.txt</path> (which gets installed
73 neysx 1.2 when you install a kernel source package), you need to pass the VESA number
74 neysx 1.1 corresponding to the requested resolution and color depth to it.
75     </p>
76    
77     <p>
78 neysx 1.2 The following table lists the available resolutions and color depths and
79     matches those against the value that you need to pass on to the <c>vga</c>
80     statement.
81 neysx 1.1 </p>
82    
83     <table>
84     <tr>
85     <ti></ti>
86     <th>640x480</th>
87     <th>800x600</th>
88     <th>1024x768</th>
89     <th>1280x1024</th>
90     </tr>
91     <tr>
92     <th>256</th>
93     <ti>0x301</ti>
94     <ti>0x303</ti>
95     <ti>0x305</ti>
96     <ti>0x307</ti>
97     </tr>
98     <tr>
99     <th>32k</th>
100     <ti>0x310</ti>
101     <ti>0x313</ti>
102     <ti>0x316</ti>
103     <ti>0x319</ti>
104     </tr>
105     <tr>
106     <th>64k</th>
107     <ti>0x311</ti>
108     <ti>0x314</ti>
109     <ti>0x317</ti>
110     <ti>0x31A</ti>
111     </tr>
112     <tr>
113     <th>16M</th>
114     <ti>0x312</ti>
115     <ti>0x315</ti>
116     <ti>0x318</ti>
117     <ti>0x31B</ti>
118     </tr>
119     </table>
120    
121     <p>
122     The <c>video</c> statement controls framebuffer display options. It needs to be
123 nightmorph 1.10 given the framebuffer driver followed by the control statements you wish to
124     enable. All variables are listed in
125 neysx 1.2 <path>/usr/src/linux/Documentation/fb/vesafb.txt</path>. The most-used options
126     are:
127 neysx 1.1 </p>
128    
129     <table>
130     <tr>
131     <th>Control</th>
132     <th>Description</th>
133     </tr>
134     <tr>
135     <ti>ywrap</ti>
136     <ti>
137     Assume that the graphical card can wrap around its memory (i.e. continue at
138     the beginning when it has approached the end)
139     </ti>
140     </tr>
141     <tr>
142 nightmorph 1.10 <ti>mtrr:<c>n</c></ti>
143 neysx 1.1 <ti>
144 neysx 1.2 Setup MTRR registers. <c>n</c> can be:<br/>
145     0 - disabled<br/>
146     1 - uncachable<br/>
147     2 - write-back<br/>
148     3 - write-combining<br/>
149 neysx 1.1 4 - write-through
150     </ti>
151     </tr>
152 nightmorph 1.10 <tr>
153 neysx 1.1 <ti><c>mode</c></ti>
154     <ti>
155 nightmorph 1.10 (<c>uvesafb</c> only)<br/>
156 neysx 1.1 Set up the resolution, color depth and refresh rate. For instance,
157     <c>1024x768-32@85</c> for a resolution of 1024x768, 32 bit color depth and a
158     refresh rate of 85 Hz.
159     </ti>
160     </tr>
161     </table>
162    
163 nightmorph 1.10 <p>
164 neysx 1.9 The result of those two statements could be something like <c>vga=0x318
165     video=vesafb:mtrr:3,ywrap</c> or
166 nightmorph 1.10 <c>video=uvesafb:mtrr:3,ywrap,1024x768-32@85</c>. Write this setting down; you
167 neysx 1.9 will need it shortly.
168 neysx 1.2 </p>
169    
170 nightmorph 1.8 <p test="func:keyval('arch')='IA64'">
171     Now, you should install the <uri link="#elilo">elilo bootloader</uri>.
172     </p>
173    
174 neysx 1.9 <p test="not(func:keyval('arch')='IA64')">
175 neysx 1.1 Now continue by installing <uri link="#grub">GRUB</uri> <e>or</e> <uri
176     link="#lilo">LILO</uri>.
177     </p>
178    
179     </body>
180     </subsection>
181     </section>
182 nightmorph 1.8 <section id="grub" test="contains('AMD64 x86',func:keyval('arch'))">
183 neysx 1.1 <title>Default: Using GRUB</title>
184     <subsection>
185     <title>Understanding GRUB's terminology</title>
186     <body>
187    
188     <p>
189     The most critical part of understanding GRUB is getting comfortable with how
190     GRUB refers to hard drives and partitions. Your Linux partition
191     <path>/dev/hda1</path> (for IDE drives) or <path>/dev/sda1</path> (for
192     SATA/SCSI drives) will most likely be called <path>(hd0,0)</path> under GRUB.
193 neysx 1.2 Notice the parentheses around the <path>hd0,0</path> - they are required.
194 neysx 1.1 </p>
195    
196     <p>
197 neysx 1.2 Hard drives count from zero rather than "a" and partitions start at zero
198     rather than one. Be aware too that with the hd devices, only hard drives are
199     counted, not atapi-ide devices such as cdrom players and burners. Also, the
200     same construct is used with SCSI drives. (Normally they get higher numbers
201 neysx 1.1 than IDE drives except when the BIOS is configured to boot from SCSI devices.)
202     When you ask the BIOS to boot from a different hard disk (for instance your
203     primary slave), <e>that</e> harddisk is seen as <path>hd0</path>.
204     </p>
205    
206     <p>
207 neysx 1.2 Assuming you have a hard drive on <path>/dev/hda</path>, a cdrom player on
208     <path>/dev/hdb</path>, a burner on <path>/dev/hdc</path>, a second hard drive
209     on <path>/dev/hdd</path> and no SCSI hard drive, <path>/dev/hdd7</path> gets
210     translated to <path>(hd1,6)</path>. It might sound tricky and tricky it is
211 neysx 1.1 indeed, but as we will see, GRUB offers a tab completion mechanism
212     that comes handy for those of you having a lot of hard drives and
213     partitions and who are a little lost in the GRUB numbering scheme.
214     </p>
215    
216     <p>
217     Having gotten the feel for that, it is time to install GRUB.
218     </p>
219    
220     </body>
221     </subsection>
222     <subsection>
223     <title>Installing GRUB</title>
224     <body>
225    
226     <p>
227     To install GRUB, let's first emerge it:
228     </p>
229    
230 nightmorph 1.6 <impo test="func:keyval('arch')='AMD64'">
231     If you are using a non-multilib <uri
232     link="?part=1&amp;chap=6#doc_chap2">profile</uri>, you should <b>not</b> emerge
233     grub, but instead you should emerge <c>grub-static</c>.
234     </impo>
235    
236 neysx 1.1 <pre caption="Installing GRUB">
237     # <i>emerge grub</i>
238     </pre>
239    
240     <p>
241     Although GRUB is now installed, we still need to write up a
242 neysx 1.2 configuration file for it and place GRUB in our MBR so that GRUB automatically
243 neysx 1.1 boots your newly created kernel. Create <path>/boot/grub/grub.conf</path> with
244     <c>nano</c> (or, if applicable, another editor):
245     </p>
246    
247     <pre caption="Creating /boot/grub/grub.conf">
248     # <i>nano -w /boot/grub/grub.conf</i>
249     </pre>
250    
251     <p>
252 neysx 1.2 Now we are going to write up a <path>grub.conf</path>. Below you'll find two
253     possible <path>grub.conf</path> for the partitioning example we use in this
254     guide. We've only extensively commented the first <path>grub.conf</path>. Make
255     sure you use <e>your</e> kernel image filename and, if appropriate, <e>your</e>
256     initrd image filename.
257 neysx 1.1 </p>
258    
259     <ul>
260     <li>
261 neysx 1.2 The first <path>grub.conf</path> is for people who have not used
262 neysx 1.1 <c>genkernel</c> to build their kernel
263     </li>
264     <li>
265     The second <path>grub.conf</path> is for people who have used
266     <c>genkernel</c> to build their kernel
267     </li>
268     </ul>
269    
270     <note>
271     If your root filesystem is JFS, you <e>must</e> add " ro" to the <c>kernel</c>
272     line since JFS needs to replay its log before it allows read-write mounting.
273     </note>
274    
275     <pre caption="grub.conf for non-genkernel users">
276     <comment># Which listing to boot as default. 0 is the first, 1 the second etc.</comment>
277     default 0
278     <comment># How many seconds to wait before the default listing is booted.</comment>
279     timeout 30
280     <comment># Nice, fat splash-image to spice things up :)
281     # Comment out if you don't have a graphics card installed</comment>
282     splashimage=(hd0,0)/boot/grub/splash.xpm.gz
283    
284 nightmorph 1.10 title Gentoo Linux <keyval id="kernel-version"/>
285 neysx 1.1 <comment># Partition where the kernel image (or operating system) is located</comment>
286     root (hd0,0)
287 neysx 1.2 kernel /boot/<keyval id="kernel-name"/> root=/dev/hda3
288 neysx 1.1
289 nightmorph 1.10 title Gentoo Linux <keyval id="kernel-version"/> (rescue)
290 vapier 1.4 <comment># Partition where the kernel image (or operating system) is located</comment>
291     root (hd0,0)
292     kernel /boot/<keyval id="kernel-name"/> root=/dev/hda3 init=/bin/bb
293    
294 neysx 1.1 <comment># The next four lines are only if you dualboot with a Windows system.</comment>
295     <comment># In this case, Windows is hosted on /dev/hda6.</comment>
296 nightmorph 1.10 title Windows XP
297 neysx 1.1 rootnoverify (hd0,5)
298     makeactive
299     chainloader +1
300     </pre>
301    
302     <pre caption="grub.conf for genkernel users">
303     default 0
304     timeout 30
305     splashimage=(hd0,0)/boot/grub/splash.xpm.gz
306    
307 nightmorph 1.10 title Gentoo Linux <keyval id="kernel-version"/>
308 neysx 1.1 root (hd0,0)
309 neysx 1.2 kernel /boot/<keyval id="genkernel-name"/> root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3 udev
310     initrd /boot/<keyval id="genkernel-initrd"/>
311 neysx 1.1
312     <comment># Only in case you want to dual-boot</comment>
313 nightmorph 1.10 title Windows XP
314 neysx 1.1 rootnoverify (hd0,5)
315     makeactive
316     chainloader +1
317     </pre>
318    
319     <note>
320     The <c>udev</c> mentioned at the end of the kernel line is needed to work around
321     a bug in some genkernel versions <e>if</e> you use udev in the first place
322     (which is the default behaviour).
323     </note>
324    
325     <p>
326     If you used a different partitioning scheme and/or kernel image, adjust
327     accordingly. However, make sure that anything that follows a GRUB-device (such
328     as <path>(hd0,0)</path>) is relative to the mountpoint, not the root. In other
329     words, <path>(hd0,0)/grub/splash.xpm.gz</path> is in reality
330     <path>/boot/grub/splash.xpm.gz</path> since <path>(hd0,0)</path> is
331     <path>/boot</path>.
332     </p>
333    
334     <p>
335     Besides, if you chose to use a different partitioning scheme and did not put
336     <path>/boot</path> in a separate partition, the <path>/boot</path> prefix used
337     in the above code samples is really <e>required</e>. If you followed our
338     suggested partitioning plan, the <path>/boot</path> prefix it not required, but
339     a <path>boot</path> symlink makes it work. In short, the above examples should
340     work whether you defined a separate <path>/boot</path> partition or not.
341     </p>
342    
343     <p>
344     If you need to pass any additional options to the kernel, simply add
345     them to the end of the kernel command. We're already passing one option
346 neysx 1.2 (<c>root=/dev/hda3</c> or <c>real_root=/dev/hda3</c>), but you can pass others
347     as well, such as the <c>video</c> and/or <c>vga</c> statements for framebuffer
348 neysx 1.1 as we discussed previously.
349     </p>
350    
351     <p>
352     If you're using a 2.6.7 or higher kernel and you jumpered your harddrive
353     because the BIOS can't handle large harddrives you'll need to append
354     <c>hdx=stroke</c>.
355     </p>
356    
357     <p>
358     <c>genkernel</c> users should know that their kernels use the same boot options
359     as is used for the Installation CD. For instance, if you have SCSI devices, you
360     should add <c>doscsi</c> as kernel option.
361     </p>
362    
363     <p>
364 neysx 1.2 Now save the <path>grub.conf</path> file and exit. You still need to install
365 neysx 1.1 GRUB in the MBR (Master Boot Record) so that GRUB is automatically executed when
366     you boot your system.
367     </p>
368    
369     <p>
370     The GRUB developers recommend the use of <c>grub-install</c>. However, if for
371     some reason <c>grub-install</c> fails to work correctly you still have the
372     option to manually install GRUB.
373     </p>
374    
375     <p>
376     Continue with <uri link="#grub-install-auto">Default: Setting up GRUB using
377     grub-install</uri> or <uri link="#grub-install-manual">Alternative: Setting up
378     GRUB using manual instructions</uri>.
379     </p>
380    
381     </body>
382     </subsection>
383     <subsection id="grub-install-auto">
384     <title>Default: Setting up GRUB using grub-install</title>
385     <body>
386    
387     <p>
388     To install GRUB you will need to issue the <c>grub-install</c> command.
389     However, <c>grub-install</c> won't work off-the-shelf since we are inside a
390     chrooted environment. We need to create <path>/etc/mtab</path> which lists all
391     mounted filesystems. Fortunately, there is an easy way to accomplish this -
392     just copy over <path>/proc/mounts</path> to <path>/etc/mtab</path>, excluding
393     the <c>rootfs</c> line if you haven't created a separate boot partition. The
394     following command will work in both cases:
395     </p>
396    
397     <pre caption="Creating /etc/mtab">
398     # <i>grep -v rootfs /proc/mounts &gt; /etc/mtab</i>
399     </pre>
400    
401     <p>
402     Now we can install GRUB using <c>grub-install</c>:
403     </p>
404    
405     <pre caption="Running grub-install">
406 neysx 1.7 # <i>grub-install --no-floppy /dev/hda</i>
407 neysx 1.1 </pre>
408    
409     <p>
410     If you have more questions regarding GRUB, please consult the <uri
411 neysx 1.2 link="http://www.gnu.org/software/grub/grub-faq.html">GRUB FAQ</uri> or the
412     <uri link="http://www.gnu.org/software/grub/manual/">GRUB Manual</uri>.
413 neysx 1.1 </p>
414    
415     <p>
416     Continue with <uri link="#reboot">Rebooting the System</uri>.
417     </p>
418    
419     </body>
420     </subsection>
421     <subsection id="grub-install-manual">
422     <title>Alternative: Setting up GRUB using manual instructions</title>
423     <body>
424    
425     <p>
426     To start configuring GRUB, you type in <c>grub</c>. You'll be presented
427 neysx 1.2 with the <path>grub&gt;</path> grub command-line prompt. Now, you need to type
428 neysx 1.1 in the right commands to install the GRUB boot record onto your hard drive.
429     </p>
430    
431     <pre caption="Starting the GRUB shell">
432 neysx 1.7 # <i>grub --no-floppy</i>
433 neysx 1.1 </pre>
434    
435     <note>
436     If your system does not have any floppy drives, add the <c>--no-floppy</c>
437 neysx 1.2 option to the above command to prevent grub from probing the (non-existing)
438 neysx 1.1 floppy drives.
439     </note>
440    
441     <p>
442 neysx 1.2 In the example configuration we want to install GRUB so that it reads its
443     information from the boot partition <path><keyval id="/boot"/></path>, and
444     installs the GRUB boot record on the hard drive's MBR (master boot record) so
445     that the first thing we see when we turn on the computer is the GRUB prompt. Of
446     course, if you haven't followed the example configuration during the
447     installation, change the commands accordingly.
448 neysx 1.1 </p>
449    
450     <p>
451     The tab completion mechanism of GRUB can be used from within GRUB.
452     For instance, if you type in "<c>root (</c>" followed by a TAB, you will
453     be presented with a list of devices (such as <path>hd0</path>). If you
454     type in "<c>root (hd0,</c>" followed by a TAB, you will receive a list
455     of available partitions to choose from (such as <path>hd0,0</path>).
456     </p>
457    
458     <p>
459     By using the tab completion, setting up GRUB should be not that hard.
460     Now go on, configure GRUB, shall we? :-)
461     </p>
462    
463     <pre caption="Installing GRUB in the MBR">
464 neysx 1.2 grub&gt; <i>root (hd0,0)</i> <comment>(Specify where your /boot partition resides)</comment>
465     grub&gt; <i>setup (hd0)</i> <comment>(Install GRUB in the MBR)</comment>
466     grub&gt; <i>quit</i> <comment>(Exit the GRUB shell)</comment>
467 neysx 1.1 </pre>
468    
469     <note>
470     If you want to install GRUB in a certain partition instead of the MBR,
471     you have to alter the <c>setup</c> command so it points to the right
472     partition. For instance, if you want GRUB installed in
473     <path>/dev/hda3</path>, then the command becomes <c>setup (hd0,2)</c>.
474     Few users however want to do this.
475     </note>
476    
477     <p>
478     If you have more questions regarding GRUB, please consult the <uri
479     link="http://www.gnu.org/software/grub/grub-faq.html">GRUB FAQ</uri> or the <uri
480     link="http://www.gnu.org/software/grub/manual/">GRUB Manual</uri>.
481     </p>
482    
483     <p>
484     Continue with <uri link="#reboot">Rebooting the System</uri>.
485     </p>
486    
487     </body>
488     </subsection>
489     </section>
490 neysx 1.9 <section id="lilo" test="contains('AMD64 x86', func:keyval('arch'))">
491 neysx 1.1 <title>Alternative: Using LILO</title>
492     <subsection>
493     <title>Installing LILO</title>
494     <body>
495    
496 neysx 1.9 <warn test="func:keyval('arch')='AMD64'">
497     Using LILO on the AMD64 architecture is not recommended.
498     </warn>
499    
500 neysx 1.1 <p>
501     LILO, the LInuxLOader, is the tried and true workhorse of Linux
502     bootloaders. However, it lacks some features that GRUB has (which is
503     also the reason why GRUB is currently gaining popularity). The reason
504     why LILO is still used is that, on some systems, GRUB doesn't work and
505     LILO does. Of course, it is also used because some people know LILO and
506     want to stick with it. Either way, Gentoo supports both, and apparently
507     you have chosen to use LILO.
508     </p>
509    
510     <p>
511     Installing LILO is a breeze; just use <c>emerge</c>.
512     </p>
513    
514 neysx 1.2 <pre caption="Installing LILO">
515 neysx 1.1 # <i>emerge lilo</i>
516     </pre>
517    
518     </body>
519     </subsection>
520     <subsection>
521     <title>Configuring LILO</title>
522     <body>
523    
524     <p>
525     To configure LILO, you must create <path>/etc/lilo.conf</path>. Fire up
526     your favorite editor (in this handbook we use <c>nano</c> for
527     consistency) and create the file.
528     </p>
529    
530 neysx 1.2 <pre caption="Creating /etc/lilo.conf">
531 neysx 1.1 # <i>nano -w /etc/lilo.conf</i>
532     </pre>
533    
534     <p>
535     Some sections ago we have asked you to remember the kernel-image name
536     you have created. In the next example <path>lilo.conf</path> we use the
537 neysx 1.2 example partitioning scheme. There are two separate parts:
538 neysx 1.1 </p>
539    
540     <ul>
541     <li>
542     One for those who have not used <c>genkernel</c> to build their kernel
543     </li>
544     <li>
545     One for those who have used <c>genkernel</c> to build their kernel
546     </li>
547     </ul>
548    
549     <p>
550     Make sure you use <e>your</e> kernel image filename and, if appropriate,
551     <e>your</e> initrd image filename.
552     </p>
553    
554     <note>
555     If your root filesystem is JFS, you <e>must</e> add a <c>append="ro"</c>
556 neysx 1.2 line after each boot item since JFS needs to replay its log before it allows
557 neysx 1.1 read-write mounting.
558     </note>
559    
560 neysx 1.2 <pre caption="Example /etc/lilo.conf">
561 neysx 1.1 boot=/dev/hda <comment># Install LILO in the MBR</comment>
562     prompt <comment># Give the user the chance to select another section</comment>
563     timeout=50 <comment># Wait 5 (five) seconds before booting the default section</comment>
564     default=gentoo <comment># When the timeout has passed, boot the "gentoo" section</comment>
565    
566     <comment># For non-genkernel users</comment>
567 neysx 1.2 image=/boot/<keyval id="kernel-name"/>
568 neysx 1.1 label=gentoo <comment># Name we give to this section</comment>
569     read-only <comment># Start with a read-only root. Do not alter!</comment>
570     root=/dev/hda3 <comment># Location of the root filesystem</comment>
571    
572 vapier 1.5 image=/boot/<keyval id="kernel-name"/>
573     label=gentoo.rescue <comment># Name we give to this section</comment>
574     read-only <comment># Start with a read-only root. Do not alter!</comment>
575     root=/dev/hda3 <comment># Location of the root filesystem</comment>
576     append="init=/bin/bb" <comment># Launch the Gentoo static rescue shell</comment>
577    
578 neysx 1.1 <comment># For genkernel users</comment>
579 neysx 1.2 image=/boot/<keyval id="genkernel-name"/>
580 neysx 1.1 label=gentoo
581     read-only
582     root=/dev/ram0
583     append="init=/linuxrc ramdisk=8192 real_root=/dev/hda3 udev"
584 neysx 1.2 initrd=/boot/<keyval id="genkernel-initrd"/>
585 neysx 1.1
586     <comment># The next two lines are only if you dualboot with a Windows system.</comment>
587     <comment># In this case, Windows is hosted on /dev/hda6.</comment>
588     other=/dev/hda6
589     label=windows
590     </pre>
591    
592     <note>
593     The <c>udev</c> mentioned at the end of the append line is needed to work around
594     a bug in some genkernel versions <e>if</e> you use udev in the first place
595     (which is the default behaviour).
596     </note>
597    
598     <note>
599     If you use a different partitioning scheme and/or kernel image, adjust
600     accordingly.
601     </note>
602    
603     <p>
604     If you need to pass any additional options to the kernel, add an
605     <c>append</c> statement to the section. As an example, we add the
606     <c>video</c> statement to enable framebuffer:
607     </p>
608    
609 neysx 1.2 <pre caption="Using append to add kernel options">
610     image=/boot/<keyval id="kernel-name"/>
611 neysx 1.1 label=gentoo
612     read-only
613     root=/dev/hda3
614     <i>append="video=vesafb:mtrr,ywrap,1024x768-32@85"</i>
615     </pre>
616    
617     <p>
618     If you're using a 2.6.7 or higher kernel and you jumpered your harddrive
619     because the BIOS can't handle large harddrives you'll need to append
620     <c>hdx=stroke</c>.
621     </p>
622    
623     <p>
624     <c>genkernel</c> users should know that their kernels use the same boot options
625     as is used for the Installation CD. For instance, if you have SCSI devices, you
626     should add <c>doscsi</c> as kernel option.
627     </p>
628    
629     <p>
630     Now save the file and exit. To finish up, you have to run <c>/sbin/lilo</c> so
631     LILO can apply the <path>/etc/lilo.conf</path> to your system (i.e. install
632 neysx 1.2 itself on the disk). Keep in mind that you'll also have to run
633 neysx 1.1 <c>/sbin/lilo</c> every time you install a new kernel or make any changes to
634     the menu.
635     </p>
636    
637 neysx 1.2 <pre caption="Finishing the LILO installation">
638 neysx 1.1 # <i>/sbin/lilo</i>
639     </pre>
640    
641 neysx 1.2 <p>
642     If you have more questions regarding LILO, please consult its <uri
643     link="http://en.wikipedia.org/wiki/LILO_(boot_loader)">wikipedia page</uri>.
644     </p>
645 neysx 1.1
646     <p>
647     You can now continue with <uri link="#reboot">Rebooting the System</uri>.
648     </p>
649    
650     </body>
651     </subsection>
652     </section>
653 nightmorph 1.8 <section id="elilo" test="func:keyval('arch')='IA64'">
654     <title>Default: Installing elilo</title>
655     <body>
656    
657     <p>
658     On the IA64 platform, the boot loader is called elilo. You may need to emerge
659     it on your machine first.
660     </p>
661    
662     <pre caption="Installing elilo">
663     # <i>emerge elilo</i>
664     </pre>
665    
666     <p>
667     You can find the configuration file at <path>/etc/elilo.conf</path> and a
668     sample file in the typical docs dir
669     <path>/usr/share/doc/elilo-&lt;ver&gt;/</path>. Here is another sample
670     configuration:
671     </p>
672    
673     <pre caption="/etc/elilo.conf example">
674     boot=/dev/sda1
675     delay=30
676     timeout=50
677     default=Gentoo
678     append="console=ttyS0,9600"
679     prompt
680    
681     image=/vmlinuz
682     label=Gentoo
683     root=/dev/sda2
684     read-only
685    
686     image=/vmlinuz.old
687     label=Gentoo.old
688     root=/dev/sda2
689     read-only
690     </pre>
691    
692     <p>
693     The <c>boot</c> line tells elilo the location of the boot partition (in this
694     case, <path>/dev/sda1</path>). The <c>delay</c> line sets the number of
695     10<sup>th</sup> of seconds before automatically booting the default when in
696     non-interactive mode. The <c>timeout</c> line is just like the delay line but
697     for interactive mode. The <c>default</c> line sets the default kernel entry
698     (which is defined below). The <c>append</c> line adds extra options to the
699     kernel command line. The <c>prompt</c> sets the default elilo behavior to
700     interactive.
701     </p>
702    
703     <p>
704     The sections that start with <c>image</c> define different bootable images.
705     Each image has a nice <c>label</c>, a <c>root</c> filesystem, and will only
706     mount the root filesystem <c>read-only</c>.
707     </p>
708    
709     <p>
710     When configuration is done, just run <c>elilo --efiboot</c>. The
711     <c>--efiboot</c> option adds a menu entry for Gentoo Linux to the EFI Boot
712     Manager.
713     </p>
714    
715     <pre caption="Applying the elilo configuration">
716     # <i>elilo --efiboot</i>
717     </pre>
718    
719     <p>
720     Now continue with <uri link="#reboot">Rebooting the System</uri>.
721     </p>
722    
723     </body>
724     </section>
725    
726 neysx 1.1 <section id="reboot">
727     <title>Rebooting the System</title>
728     <subsection>
729     <body>
730    
731     <p>
732 neysx 1.2 Exit the chrooted environment and unmount all mounted partitions. Then type in
733 neysx 1.1 that one magical command you have been waiting for: <c>reboot</c>.
734     </p>
735    
736 nightmorph 1.8 <pre caption="Unmounting all partitions and rebooting" test="func:keyval('arch')='IA64'">
737     # <i>exit</i>
738     cdimage ~# <i>cd</i>
739     cdimage ~# <i>umount /mnt/gentoo/boot /mnt/gentoo/sys /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo</i>
740     cdimage ~# <i>reboot</i>
741     </pre>
742    
743     <pre caption="Unmounting all partitions and rebooting" test="not(func:keyval('arch')='IA64')">
744 neysx 1.1 # <i>exit</i>
745     cdimage ~# <i>cd</i>
746     cdimage ~# <i>umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo</i>
747     cdimage ~# <i>reboot</i>
748     </pre>
749    
750     <p>
751     Of course, don't forget to remove the bootable CD, otherwise the CD will be
752     booted again instead of your new Gentoo system.
753     </p>
754    
755 nightmorph 1.8 <p test="func:keyval('arch')='IA64'">
756     When you reboot you should see a new Gentoo Linux menu option in the EFI Boot
757     Manager which will boot Gentoo.
758     </p>
759    
760 neysx 1.1 <p>
761     Once rebooted in your Gentoo installation, finish up with <uri
762     link="?part=1&amp;chap=11">Finalizing your Gentoo Installation</uri>.
763     </p>
764    
765     </body>
766     </subsection>
767     </section>
768     </sections>

  ViewVC Help
Powered by ViewVC 1.1.20