~mwhudson/help.ubuntu.com/no-install-20.04-i386

« back to all changes in this revision

Viewing changes to 20.04/installation-guide/i386/ch04s05.html

  • Committer: Michael Hudson-Doyle
  • Date: 2020-06-03 04:01:08 UTC
  • Revision ID: michael.hudson@canonical.com-20200603040108-iau4cdaw6g1ezdcq
remove the 20.04 i386 installation guide

it cannot be installed.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<html>
2
 
<head>
3
 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4
 
<title>4.5. Preparing Files for TFTP Net Booting</title>
5
 
<link rel="stylesheet" type="text/css" href="install.css">
6
 
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7
 
<link rel="home" href="index.html" title="Ubuntu Installation Guide">
8
 
<link rel="up" href="ch04.html" title="Chapter 4. Obtaining System Installation Media">
9
 
<link rel="prev" href="ch04s04.html" title="4.4. Preparing Files for Hard Disk Booting">
10
 
<link rel="next" href="ch04s06.html" title="4.6. Automatic Installation">
11
 
</head>
12
 
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13
 
<div class="navheader">
14
 
<table width="100%" summary="Navigation header">
15
 
<tr><th colspan="3" align="center">4.5. Preparing Files for TFTP Net Booting</th></tr>
16
 
<tr>
17
 
<td width="20%" align="left">
18
 
<a accesskey="p" href="ch04s04.html"><img src="images/prev.png" alt="Prev"></a> </td>
19
 
<th width="60%" align="center">Chapter 4. Obtaining System Installation Media</th>
20
 
<td width="20%" align="right"> <a accesskey="n" href="ch04s06.html"><img src="images/next.png" alt="Next"></a>
21
 
</td>
22
 
</tr>
23
 
</table>
24
 
<hr>
25
 
</div>
26
 
<div class="sect1">
27
 
<div class="titlepage"><div><div><h2 class="title">
28
 
<a name="install-tftp"></a>4.5. Preparing Files for TFTP Net Booting</h2></div></div></div>
29
 
<p>
30
 
 
31
 
If your machine is connected to a local area network, you may be able
32
 
to boot it over the network from another machine, using TFTP. If you
33
 
intend to boot the installation system from another machine, the
34
 
boot files will need to be placed in specific locations on that machine,
35
 
and the machine configured to support booting of your specific machine.
36
 
 
37
 
</p>
38
 
<p>
39
 
 
40
 
You need to set up a TFTP server, and for many machines a DHCP 
41
 
server<span class="phrase">, or BOOTP
42
 
server</span>.
43
 
 
44
 
</p>
45
 
<p>
46
 
 
47
 
 
48
 
 
49
 
<span class="phrase">BOOTP is an IP protocol that
50
 
informs a computer of its IP address and where on the network to obtain
51
 
a boot image.</span>
52
 
 
53
 
The DHCP (Dynamic Host Configuration Protocol) is a more flexible,
54
 
backwards-compatible extension of BOOTP.
55
 
Some systems can only be configured via DHCP.
56
 
 
57
 
</p>
58
 
<p>
59
 
 
60
 
The Trivial File Transfer Protocol (TFTP) is used to serve the boot
61
 
image to the client.  Theoretically, any server, on any platform,
62
 
which implements these protocols, may be used.  In the examples in
63
 
this section, we shall provide commands for SunOS 4.x, SunOS 5.x
64
 
(a.k.a. Solaris), and GNU/Linux.
65
 
 
66
 
</p>
67
 
<div class="note"><table border="0" summary="Note">
68
 
<tr>
69
 
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td>
70
 
<th align="left">Note</th>
71
 
</tr>
72
 
<tr><td align="left" valign="top"><p>
73
 
 
74
 
For an Ubuntu or Debian server we recommend
75
 
<code class="classname">tftpd-hpa</code>.
76
 
It's written by the same author as the <code class="classname">syslinux</code>
77
 
bootloader and is therefore least likely to cause issues.
78
 
A good alternative is <code class="classname">atftpd</code>.
79
 
 
80
 
</p></td></tr>
81
 
</table></div>
82
 
<p>
83
 
 
84
 
</p>
85
 
<div class="sect2">
86
 
<div class="titlepage"><div><div><h3 class="title">
87
 
<a name="dhcpd"></a>4.5.1. Setting up a DHCP server</h3></div></div></div>
88
 
<p>
89
 
 
90
 
One free software DHCP server is ISC <span class="command"><strong>dhcpd</strong></span>.
91
 
For Ubuntu, the <code class="classname">isc-dhcp-server</code> package is
92
 
recommended.  Here is a sample configuration file for it (see
93
 
<code class="filename">/etc/dhcp/dhcpd.conf</code>):
94
 
 
95
 
</p>
96
 
<div class="informalexample"><pre class="screen">
97
 
option domain-name "example.com";
98
 
option domain-name-servers ns1.example.com;
99
 
option subnet-mask 255.255.255.0;
100
 
default-lease-time 600;
101
 
max-lease-time 7200;
102
 
server-name "servername";
103
 
 
104
 
subnet 192.168.1.0 netmask 255.255.255.0 {
105
 
  range 192.168.1.200 192.168.1.253;
106
 
  option routers 192.168.1.1;
107
 
}
108
 
 
109
 
host clientname {
110
 
  filename "/tftpboot.img";
111
 
  server-name "servername";
112
 
  next-server servername;
113
 
  hardware ethernet 01:23:45:67:89:AB;
114
 
  fixed-address 192.168.1.90;
115
 
}
116
 
</pre></div>
117
 
<p>
118
 
 
119
 
</p>
120
 
<p>
121
 
 
122
 
In this example, there is one server
123
 
<em class="replaceable"><code>servername</code></em> which performs all of the work
124
 
of DHCP server, TFTP server, and network gateway.  You will almost
125
 
certainly need to change the domain-name options, as well as the
126
 
server name and client hardware address.  The
127
 
<em class="replaceable"><code>filename</code></em> option should be the name of the
128
 
file which will be retrieved via TFTP.
129
 
 
130
 
</p>
131
 
<p>
132
 
 
133
 
After you have edited the <span class="command"><strong>dhcpd</strong></span> configuration file,
134
 
restart it with <strong class="userinput"><code>/etc/init.d/isc-dhcp-server restart</code></strong>.
135
 
 
136
 
</p>
137
 
<div class="sect3">
138
 
<div class="titlepage"><div><div><h4 class="title">
139
 
<a name="idm961"></a>4.5.1.1. Enabling PXE Booting in the DHCP configuration</h4></div></div></div>
140
 
<p>
141
 
Here is another example for a <code class="filename">dhcp.conf</code> using the
142
 
Pre-boot Execution Environment (PXE) method of TFTP.
143
 
 
144
 
</p>
145
 
<div class="informalexample"><pre class="screen">
146
 
option domain-name "example.com";
147
 
 
148
 
default-lease-time 600;
149
 
max-lease-time 7200;
150
 
 
151
 
allow booting;
152
 
allow bootp;
153
 
 
154
 
# The next paragraph needs to be modified to fit your case
155
 
subnet 192.168.1.0 netmask 255.255.255.0 {
156
 
  range 192.168.1.200 192.168.1.253;
157
 
  option broadcast-address 192.168.1.255;
158
 
# the gateway address which can be different
159
 
# (access to the internet for instance)
160
 
  option routers 192.168.1.1;
161
 
# indicate the dns you want to use
162
 
  option domain-name-servers 192.168.1.3;
163
 
}
164
 
 
165
 
group {
166
 
  next-server 192.168.1.3;
167
 
  host tftpclient {
168
 
# tftp client hardware address
169
 
  hardware ethernet  00:10:DC:27:6C:15;
170
 
  filename "pxelinux.0";
171
 
 }
172
 
}
173
 
</pre></div>
174
 
<p>
175
 
 
176
 
Note that for PXE booting, the client filename <code class="filename">pxelinux.0</code>
177
 
is a boot loader, not a kernel image (see <a class="xref" href="ch04s05.html#tftp-images" title="4.5.4. Move TFTP Images Into Place">Section 4.5.4, “Move TFTP Images Into Place”</a>
178
 
below).
179
 
 
180
 
</p>
181
 
</div>
182
 
</div>
183
 
<div class="sect2">
184
 
<div class="titlepage"><div><div><h3 class="title">
185
 
<a name="tftp-bootp"></a>4.5.2. Setting up a BOOTP server</h3></div></div></div>
186
 
<p>
187
 
 
188
 
There are two BOOTP servers available for GNU/Linux. The first is CMU
189
 
<span class="command"><strong>bootpd</strong></span>. The other is actually a DHCP server: ISC
190
 
<span class="command"><strong>dhcpd</strong></span>. In Ubuntu these are contained in the
191
 
<code class="classname">bootp</code> and <code class="classname">isc-dhcp-server</code>
192
 
packages respectively.
193
 
 
194
 
</p>
195
 
<p>
196
 
 
197
 
To use CMU <span class="command"><strong>bootpd</strong></span>, you must first uncomment (or
198
 
add) the relevant line in <code class="filename">/etc/inetd.conf</code>.  On
199
 
Debian or Ubuntu, you can run <strong class="userinput"><code>update-inetd --enable
200
 
bootps</code></strong>, then <strong class="userinput"><code>/etc/init.d/inetd
201
 
reload</code></strong> to do so. Just in case your BOOTP server does not
202
 
run Debian or Ubuntu, the line in question should look like:
203
 
 
204
 
</p>
205
 
<div class="informalexample"><pre class="screen">
206
 
bootps  dgram  udp  wait  root  /usr/sbin/bootpd  bootpd -i -t 120
207
 
</pre></div>
208
 
<p>
209
 
 
210
 
Now, you must create an <code class="filename">/etc/bootptab</code> file.  This
211
 
has the same sort of familiar and cryptic format as the good old BSD
212
 
<code class="filename">printcap</code>, <code class="filename">termcap</code>, and
213
 
<code class="filename">disktab</code> files.  See the
214
 
<code class="filename">bootptab</code> manual page for more information.  For
215
 
CMU <span class="command"><strong>bootpd</strong></span>, you will need to know the hardware
216
 
(MAC) address of the client.  Here is an example
217
 
<code class="filename">/etc/bootptab</code>:
218
 
 
219
 
</p>
220
 
<div class="informalexample"><pre class="screen">
221
 
client:\
222
 
  hd=/tftpboot:\
223
 
  bf=tftpboot.img:\
224
 
  ip=192.168.1.90:\
225
 
  sm=255.255.255.0:\
226
 
  sa=192.168.1.1:\
227
 
  ha=0123456789AB:
228
 
</pre></div>
229
 
<p>
230
 
 
231
 
You will need to change at least the <span class="quote">“<span class="quote">ha</span>”</span> option, which
232
 
specifies the hardware address of the client.  The <span class="quote">“<span class="quote">bf</span>”</span>
233
 
option specifies the file a client should retrieve via TFTP; see
234
 
<a class="xref" href="ch04s05.html#tftp-images" title="4.5.4. Move TFTP Images Into Place">Section 4.5.4, “Move TFTP Images Into Place”</a> for more details.
235
 
 
236
 
 
237
 
 
238
 
</p>
239
 
<p>
240
 
 
241
 
By contrast, setting up BOOTP with ISC <span class="command"><strong>dhcpd</strong></span> is
242
 
really easy, because it treats BOOTP clients as a moderately special
243
 
case of DHCP clients.  Some architectures require a complex
244
 
configuration for booting clients via BOOTP.  If yours is one of
245
 
those, read the section <a class="xref" href="ch04s05.html#dhcpd" title="4.5.1. Setting up a DHCP server">Section 4.5.1, “Setting up a DHCP server”</a>.  Otherwise you
246
 
will probably be able to get away with simply adding the
247
 
<strong class="userinput"><code>allow bootp</code></strong> directive to the configuration
248
 
block for the subnet containing the client in
249
 
<code class="filename">/etc/dhcp/dhcpd.conf</code>, and restart
250
 
<span class="command"><strong>dhcpd</strong></span> with <strong class="userinput"><code>/etc/init.d/isc-dhcp-server
251
 
restart</code></strong>.
252
 
 
253
 
</p>
254
 
</div>
255
 
<div class="sect2">
256
 
<div class="titlepage"><div><div><h3 class="title">
257
 
<a name="tftpd"></a>4.5.3. Enabling the TFTP Server</h3></div></div></div>
258
 
<p>
259
 
 
260
 
To get the TFTP server ready to go, you should first make sure that
261
 
<span class="command"><strong>tftpd</strong></span> is enabled.
262
 
 
263
 
</p>
264
 
<p>
265
 
 
266
 
In the case of <code class="classname">tftpd-hpa</code> there are two ways the
267
 
service can be run. It can be started on demand by the system's
268
 
<code class="classname">inetd</code> daemon, or it can be set up to run as an
269
 
independent daemon. Which of these methods is used is selected when the
270
 
package is installed and can be changed by reconfiguring the package.
271
 
 
272
 
</p>
273
 
<div class="note"><table border="0" summary="Note">
274
 
<tr>
275
 
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td>
276
 
<th align="left">Note</th>
277
 
</tr>
278
 
<tr><td align="left" valign="top"><p>
279
 
 
280
 
Historically, TFTP servers used <code class="filename">/tftpboot</code> as directory
281
 
to serve images from. However, Ubuntu packages may use other directories
282
 
to comply with the <a class="ulink" href="http://www.pathname.com/fhs/" target="_top">Filesystem Hierarchy
283
 
Standard</a>. For example, <code class="classname">tftpd-hpa</code> by default
284
 
uses <code class="filename">/srv/tftp</code>. You may have to adjust the
285
 
configuration examples in this section accordingly.
286
 
 
287
 
</p></td></tr>
288
 
</table></div>
289
 
<p>
290
 
 
291
 
All <span class="command"><strong>in.tftpd</strong></span> alternatives available in Ubuntu should
292
 
log TFTP requests to the system logs by default. Some of them support a
293
 
<strong class="userinput"><code>-v</code></strong> argument to increase verbosity.
294
 
It is recommended to check these log messages in case of boot problems
295
 
as they are a good starting point for diagnosing the cause of errors.
296
 
 
297
 
</p>
298
 
</div>
299
 
<div class="sect2">
300
 
<div class="titlepage"><div><div><h3 class="title">
301
 
<a name="tftp-images"></a>4.5.4. Move TFTP Images Into Place</h3></div></div></div>
302
 
<p>
303
 
 
304
 
Next, place the TFTP boot image you need, as found in
305
 
<a class="xref" href="ch04s02.html#where-files" title="4.2.1. Where to Find Installation Images">Section 4.2.1, “Where to Find Installation Images”</a>, in the <span class="command"><strong>tftpd</strong></span>
306
 
boot image directory.  You may have to make a link from that
307
 
file to the file which <span class="command"><strong>tftpd</strong></span> will use for booting a
308
 
particular client.  Unfortunately, the file name is determined by the
309
 
TFTP client, and there are no strong standards.
310
 
 
311
 
</p>
312
 
<p>
313
 
 
314
 
For PXE booting, everything you should need is set up in the
315
 
<code class="filename">netboot/netboot.tar.gz</code> tarball. Simply extract this
316
 
tarball into the <span class="command"><strong>tftpd</strong></span> boot image directory. Make sure
317
 
your dhcp server is configured to pass <code class="filename">pxelinux.0</code>
318
 
to <span class="command"><strong>tftpd</strong></span> as the filename to boot.
319
 
 
320
 
</p>
321
 
</div>
322
 
</div>
323
 
<div class="navfooter">
324
 
<hr>
325
 
<table width="100%" summary="Navigation footer">
326
 
<tr>
327
 
<td width="40%" align="left">
328
 
<a accesskey="p" href="ch04s04.html"><img src="images/prev.png" alt="Prev"></a> </td>
329
 
<td width="20%" align="center"><a accesskey="u" href="ch04.html"><img src="images/up.png" alt="Up"></a></td>
330
 
<td width="40%" align="right"> <a accesskey="n" href="ch04s06.html"><img src="images/next.png" alt="Next"></a>
331
 
</td>
332
 
</tr>
333
 
<tr>
334
 
<td width="40%" align="left" valign="top">4.4. Preparing Files for Hard Disk Booting </td>
335
 
<td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td>
336
 
<td width="40%" align="right" valign="top"> 4.6. Automatic Installation</td>
337
 
</tr>
338
 
</table>
339
 
</div>
340
 
</body>
341
 
</html>