summaryrefslogtreecommitdiffstats
path: root/slackbook/html/booting.html
blob: ca3b7871f80e56ba0425b7365c6b639de78d9c53 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="generator" content="HTML Tidy, see www.w3.org" />
<title>Booting</title>
<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.7" />
<link rel="HOME" title="Slackware Linux Essentials" href="index.html" />
<link rel="PREVIOUS" title="xdm" href="x-window-system-xdm.html" />
<link rel="NEXT" title="LOADLIN" href="booting-loadlin.html" />
<link rel="STYLESHEET" type="text/css" href="docbook.css" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body class="CHAPTER" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#840084"
alink="#0000FF">
<div class="NAVHEADER">
<table summary="Header navigation table" width="100%" border="0" cellpadding="0"
cellspacing="0">
<tr>
<th colspan="3" align="center">Slackware Linux Essentials</th>
</tr>

<tr>
<td width="10%" align="left" valign="bottom"><a href="x-window-system-xdm.html"
accesskey="P">Prev</a></td>
<td width="80%" align="center" valign="bottom"></td>
<td width="10%" align="right" valign="bottom"><a href="booting-loadlin.html"
accesskey="N">Next</a></td>
</tr>
</table>

<hr align="LEFT" width="100%" />
</div>

<div class="CHAPTER">
<h1><a id="BOOTING" name="BOOTING"></a>Chapter 7 Booting</h1>

<div class="TOC">
<dl>
<dt><b>Table of Contents</b></dt>

<dt>7.1 <a href="booting.html#BOOTING-LILO">LILO</a></dt>

<dt>7.2 <a href="booting-loadlin.html">LOADLIN</a></dt>

<dt>7.3 <a href="booting-dual.html">Dual Booting</a></dt>
</dl>
</div>

<p>The process of booting your Linux system can sometimes be easy and sometimes be
difficult. Many users install Slackware on their computer and that's it. They just turn
it on and it's ready to use. Othertimes, simply booting the machine can be a chore. For
most users, LILO works best. Slackware includes LILO and Loadlin for booting Slackware
Linux. LILO will work from a hard drive partition, a hard drive's master boot record, or
a floppy disk, making it a very versatile tool. Loadlin works from a DOS command line,
killing DOS and invoking Linux.</p>

<p>Another popular utility for booting Linux is GRUB. GRUB is not included or officially
supported by Slackware. Slackware holds to the &#8220;tried and true&#8221; standard for
what gets included inside the distribution. While GRUB works well and includes some
features that LILO does not, LILO handles all the essential tasks of a boot loader
reliably with a proven track record. Being younger, GRUB hasn't quite lived up to that
legacy yet. As it is not included with Slackware, we do not discuss it here. If you wish
to use GRUB (perhaps it came with another Linux OS and you want to use it to dual-boot)
consult GRUB's documentation.</p>

<p>This section covers using LILO and Loadlin, the two booters included with Slackware.
It also explains some typical dual booting scenarios and how you could go about setting
it up.</p>

<div class="SECT1">
<h1 class="SECT1"><a id="BOOTING-LILO" name="BOOTING-LILO">7.1 LILO</a></h1>

<p>The Linux Loader, or LILO, is the most popular booter in use on Linux systems. It is
quite configurable and can easily be used to boot other operating systems.</p>

<p>Slackware Linux comes with a menu-driven configuration utility called <tt
class="COMMAND">liloconfig</tt>. This program is first run during the setup process, but
you can invoke it later by typing <tt class="COMMAND">liloconfig</tt> at the prompt.</p>

<p>LILO reads its settings from the <tt class="COMMAND">/etc/lilo.conf</tt>(5) file. It
is not read each time you boot up, but instead is read each time you install LILO. LILO
must be reinstalled to the boot sector each time you make a configuration change. Many
LILO errors come from making changes to the <tt class="FILENAME">lilo.conf</tt> file, but
failing to re-run lilo to install these changes. <tt class="COMMAND">liloconfig</tt> will
help you build the configuration file so that you can install LILO for your system. If
you prefer to edit <tt class="FILENAME">/etc/lilo.conf</tt> by hand, then reinstalling
LILO just involves typing <tt class="COMMAND">/sbin/lilo</tt> (as <tt
class="USERNAME">root</tt>) at the prompt.</p>

<p>When you first invoke <tt class="COMMAND">liloconfig</tt>, it will look like this:</p>

<div class="FIGURE"><a id="BOOTING-SETUP-LILO" name="BOOTING-SETUP-LILO"></a>
<p><b>Figure 7-1. <tt class="COMMAND">liloconfig</tt></b></p>

<p><img src="booting/setup-lilo-w.png" /></p>
</div>

<p>If this is your first time setting up LILO, you should pick simple. Otherwise, you
might find expert to be faster if you are familiar with LILO and Linux. Selecting simple
will begin the LILO configuration.</p>

<p>If kernel frame buffer support is compiled into your kernel, <tt
class="COMMAND">liloconfig</tt> will ask which video resolution you would like to use.
This is the resolution that is also used by the XFree86 frame buffer server. If you do
not want the console to run in a special video mode, selecting normal will keep the
standard 80x25 text mode in use.</p>

<p>The next part of the LILO configuration is selecting where you want it installed. This
is probably the most important step. The list below explains the installation places:</p>

<div class="VARIABLELIST">
<dl>
<dt><var class="OPTION">Root</var></dt>

<dd>
<p>This option installs LILO to the beginning of your Linux root partition. This is the
safest option if you have other operating systems on your computer. It ensures that any
other booters are not overwritten. The disadvantage is that LILO will only load from here
if your Linux drive is the first drive on your system. This is why many people chose to
create a very small <tt class="FILENAME">/boot</tt> partition as the first drive on their
system. This allows the kernel and LILO to be installed at the beginning of the drive
where LILO can find them. Previous versions of LILO contained an infamous flaw known as
the &#8220;1024 cylinder limit&#8221;. LILO was unable to boot kernels on partitions past
the 1024th cylinder. Recent editions of LILO have eliminated this problem.</p>
</dd>

<dt><var class="OPTION">Floppy</var></dt>

<dd>
<p>This method is even safer than the previous one. It creates a boot floppy that you can
use to boot your Linux system. This keeps the booter off the hard disk entirely, so you
only boot this floppy when you want to use Slackware. The flaws with this method are
obvious. Floppies are notoriously fickle, prone to failures. Secondly, the boot loader is
no longer self-contained within the computer. If you loose your floppy disk, you'll have
to make another to boot your system.</p>
</dd>

<dt><var class="OPTION">MBR</var></dt>

<dd>
<p>You will want to use this method if Slackware is the only operating system on your
computer, or if you will be using LILO to choose between multiple operating systems on
your computer. This is the most preferred method for installing LILO and will work with
almost any computer system.</p>

<div class="WARNING">
<table class="WARNING" width="90%" border="0">
<tr>
<td width="25" align="CENTER" valign="TOP"><img src="./imagelib/admon/warning.png"
hspace="5" alt="Warning" /></td>
<td align="LEFT" valign="TOP">
<p>This option will overwrite any other booter you have in the MBR.</p>
</td>
</tr>
</table>
</div>
</dd>
</dl>
</div>

<p>After selecting the installation location, <tt class="COMMAND">liloconfig</tt> will
write the configuration file and install LILO. That's it. If you select the expert mode
you will receive a special menu. This menu allows you to tweak the <tt
class="FILENAME">/etc/lilo.conf</tt> file, add other operating systems to your boot menu,
and set LILO to pass special kernel parameters at boot time. The expert menu looks like
this:</p>

<div class="FIGURE"><a id="BOOTING-LILO-EXPERT" name="BOOTING-LILO-EXPERT"></a>
<p><b>Figure 7-2. <tt class="COMMAND">liloconfig</tt> Expert Menu</b></p>

<p><img src="booting/setup-lilo-expert-w.png" /></p>
</div>

<p>Whatever your system configuration is, setting up a working boot loader is easy. <tt
class="COMMAND">liloconfig</tt> makes setting it up a cinch.</p>
</div>
</div>

<div class="NAVFOOTER">
<hr align="LEFT" width="100%" />
<table summary="Footer navigation table" width="100%" border="0" cellpadding="0"
cellspacing="0">
<tr>
<td width="33%" align="left" valign="top"><a href="x-window-system-xdm.html"
accesskey="P">Prev</a></td>
<td width="34%" align="center" valign="top"><a href="index.html"
accesskey="H">Home</a></td>
<td width="33%" align="right" valign="top"><a href="booting-loadlin.html"
accesskey="N">Next</a></td>
</tr>

<tr>
<td width="33%" align="left" valign="top"><tt class="COMMAND">xdm</tt></td>
<td width="34%" align="center" valign="top">&nbsp;</td>
<td width="33%" align="right" valign="top">LOADLIN</td>
</tr>
</table>
</div>
</body>
</html>