Bug#140579: Report: tftpboot install successfull
On Tue, Dec 31, 2002 at 03:50:56PM +0100, nb wrote:
> PXE is the most natural method in the sens that it doesn't need any
> supplementary media.
> It's the one everyone can use on a real diskless machine.
> It finally worked for me and her's what I've done for that.
See what you think of the following doc patch:
Index: inst-methods.sgml
===================================================================
RCS file: /cvs/debian-boot/boot-floppies/documentation/en/inst-methods.sgml,v
retrieving revision 1.142
diff -u -r1.142 inst-methods.sgml
--- inst-methods.sgml 22 Sep 2002 15:07:44 -0000 1.142
+++ inst-methods.sgml 2 Jan 2003 05:21:28 -0000
@@ -1181,14 +1181,61 @@
fixed-address 192.168.1.90;
}
</example>
+ <p>
In this example, there is one server <var>"servername"</var> which performs all
of the work of DHCP, server, TFTP server, and network gateway. You
will almost certainly need to change the domain-name options, as well
as the server name and client hardware address. The <var>"filename"</var> option
should be the name of the file which will be retrieved via TFTP.
-
+ <p>
After you have edited the <prgn>dhcpd</prgn> configuration file, restart it
-with <tt>/etc/init.d/dhcpd restart</tt>. ]]>
+with <tt>/etc/init.d/dhcpd restart</tt>.
+
+<![ %i386 [
+ <p>
+Here is another example for a <file>dhcp.conf</file> using the
+Pre-boot Execution Environment (PXE) method of TFTP.
+<example>
+option domain-name "example.com";
+
+default-lease-time 6048;
+max-lease-time 604800;
+
+allow booting;
+allow bootp;
+
+# The next paragraph needs to be modified to fit your case
+subnet 192.168.1.0 netmask 255.255.255.0 {
+ range 192.168.1.200 192.168.1.253;
+ option subnet-mask 255.255.255.0;
+ option broadcast-address 10.1.1.255;
+# the gateway address which can be different
+# (access to the internet for instance)
+ option routers 192.168.1.1;
+# indicate the dns you want to use
+ option domain-name-servers 10.1.1.3;
+}
+
+host tftpserver {
+# tftp server ip address
+ fixed-address 192.168.1.90;
+# tftp server hardware address
+ hardware ethernet 01:23:45:67:89:AB;
+}
+
+group {
+ next-server 192.168.1.3;
+ host tftpclient {
+# tftp client hardware address
+ hardware ethernet 00:10:DC:27:6C:15;
+ filename "/tftpboot/pxelinux.0";
+ }
+}
+</example>
+Note that for PXE booting, the client filename <file>pxelinux.0</file>
+is a boot loader, not a kernel image (see <ref id="tftp-images">
+below).
+<!-- end i386 --> ]]>
+<!-- end supports-dhcp --> ]]>
<sect1 id="tftpd">Enabling the TFTP Server
<p>
@@ -1210,6 +1257,12 @@
reload</tt> (for potato/2.2 and newer systems use <tt>/etc/init.d/inetd
reload</tt>); on other machines, find out the process ID for
<prgn>inetd</prgn>, and run <tt>kill -HUP <var>inetd-pid</var></tt>.
+<![ %i386 [
+ <p>
+To use the Pre-boot Execution Environment (PXE) method of TFTP
+booting, you will need a TFTP server with <tt>tsize</tt> support.
+On a &debian; server, <prgn>tftp-hpa</prgn> qualifies.
+]]>
<![ %mips [
<p>
@@ -1257,6 +1310,31 @@
First issue the <tt>obase=16</tt> command to set the output to hex,
then enter the individual components of the client IP one at a time.
As for <var>client-architecture</var>, try out some values.
+]]>
+
+<![ %i386 [
+ <p>
+For PXE booting, you can use the boot loader included with
+<prgn>syslinux</prgn>: <file>pxelinux.0</file>. The boot loader should
+be copied into the <file>/tftpboot</file> folder. Then create a
+subdirectory within <file>/tftpboot</file> named
+<file>/tftpboot/pxelinux.cfg</file>, and within that directory create
+a text file <file>default</file>. Here is an example of a
+<file>default</file> file's contents:
+<example>
+default lanlinux
+prompt 1
+
+label lanlinux
+ kernel tftpboot.img
+ append load initrd=root.bin devfs=nomount
+</example>
+<tt>devfs=nomount</tt> is important, because without it there may be
+problems mounting the root.bin file system once the kernel is booted.
+ <p>
+Finally, copy the <file>tftpboot.img</file> and <file>root.bin</file>
+files from the Debian ftp archive into the <file>/tftpboot</file>
+folder, where the bootloader will be looking for them.
]]>
<![ %mipsel [
--
*----------------------------------------------------------------*
| Chris Tillman tillman@voicetrak.com |
| To HAVE, GIVE all TO all (ACIM) |
*----------------------------------------------------------------*
Reply to: