diff options
author | Joey Hess <joeyh@debian.org> | 2005-10-07 19:51:38 +0000 |
---|---|---|
committer | Joey Hess <joeyh@debian.org> | 2005-10-07 19:51:38 +0000 |
commit | 1ea73eea5ecc6a8ed901316049259aee737ee554 (patch) | |
tree | 03a077f0b1b1548f3c806bd1c5795964fba0fb52 /eu/install-methods/tftp | |
download | installation-guide-1ea73eea5ecc6a8ed901316049259aee737ee554.zip |
move manual to top-level directory, split out of debian-installer package
Diffstat (limited to 'eu/install-methods/tftp')
-rw-r--r-- | eu/install-methods/tftp/bootp.xml | 78 | ||||
-rw-r--r-- | eu/install-methods/tftp/dhcp.xml | 111 | ||||
-rw-r--r-- | eu/install-methods/tftp/rarp.xml | 73 |
3 files changed, 262 insertions, 0 deletions
diff --git a/eu/install-methods/tftp/bootp.xml b/eu/install-methods/tftp/bootp.xml new file mode 100644 index 000000000..1b0df1d95 --- /dev/null +++ b/eu/install-methods/tftp/bootp.xml @@ -0,0 +1,78 @@ +<!-- retain these comments for translator revision tracking --> +<!-- original version: 16879 untranslated --> + + + <sect2 condition="supports-bootp" id="tftp-bootp"> + <title>Setting up BOOTP server</title> +<para> + +There are two BOOTP servers available for GNU/Linux, the CMU +<command>bootpd</command> and the other is actually a DHCP server, ISC +<command>dhcpd</command>, which are contained in the +<classname>bootp</classname> and <classname>dhcp</classname> packages +in &debian;. + +</para><para> + +To use CMU <command>bootpd</command>, you must first uncomment (or +add) the relevant line in <filename>/etc/inetd.conf</filename>. On +&debian;, you can run <userinput>update-inetd --enable +bootps</userinput>, then <userinput>/etc/init.d/inetd +reload</userinput> to do so. Elsewhere, the line in question should +look like: + +<informalexample><screen> + +bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120 + +</screen></informalexample> + +</para><para> + +Now, you must create an <filename>/etc/bootptab</filename> file. This +has the same sort of familiar and cryptic format as the good old BSD +<filename>printcap</filename>, <filename>termcap</filename>, and +<filename>disktab</filename> files. See the +<filename>bootptab</filename> manual page for more information. For +CMU <command>bootpd</command>, you will need to know the hardware +(MAC) address of the client. Here is an example +<filename>/etc/bootptab</filename>: + +<informalexample><screen> + +client:\ + hd=/tftpboot:\ + bf=tftpboot.img:\ + ip=192.168.1.90:\ + sm=255.255.255.0:\ + sa=192.168.1.1:\ + ha=0123456789AB: + +</screen></informalexample> + +You will need to change at least the "ha" option, which specifies the +hardware address of the client. The "bf" option specifies the file a +client should retrieve via TFTP; see +<xref linkend="tftp-images"/> for more details. + +<phrase arch="mips"> +On SGI Indys you can just enter the command monitor and type +<userinput>printenv</userinput>. The value of the +<userinput>eaddr</userinput> variable is the machine's MAC address. +</phrase> + +</para><para> + +By contrast, setting up BOOTP with ISC <command>dhcpd</command> is +really easy, because it treats BOOTP clients as a moderately special +case of DHCP clients. Some architectures require a complex +configuration for booting clients via BOOTP. If yours is one of +those, read the section <xref linkend="dhcpd"/>. Otherwise, you +will probably be able to get away with simply adding the +<userinput>allow bootp</userinput> directive to the configuration +block for the subnet containing the client, and restart +<command>dhcpd</command> with <userinput>/etc/init.d/dhcpd +restart</userinput>. + +</para> + </sect2> diff --git a/eu/install-methods/tftp/dhcp.xml b/eu/install-methods/tftp/dhcp.xml new file mode 100644 index 000000000..a6ba6286e --- /dev/null +++ b/eu/install-methods/tftp/dhcp.xml @@ -0,0 +1,111 @@ +<!-- retain these comments for translator revision tracking --> +<!-- original version: 16879 untranslated --> + + + <sect2 condition="supports-dhcp" id="dhcpd"> + <title>Setting up a DHCP server</title> +<para> + +At the time of this writing, there is only one DHCP server which is +free software, namely ISC <command>dhcpd</command>. In &debian;, this +is available in the <classname>dhcp</classname> package. Here is a +sample configuration file for it (usually +<filename>/etc/dhcpd.conf</filename>): + +<informalexample><screen> + +option domain-name "example.com"; +option domain-name-servers ns1.example.com; +option subnet-mask 255.255.255.0; +default-lease-time 600; +max-lease-time 7200; +server-name "servername"; + +subnet 192.168.1.0 netmask 255.255.255.0 { + range 192.168.1.200 192.168.1.253; + option routers 192.168.1.1; +} + +host clientname { + filename "/tftpboot/tftpboot.img"; + server-name "servername"; + next-server servername; + hardware ethernet 01:23:45:67:89:AB; + fixed-address 192.168.1.90; +} + +</screen></informalexample> + +Note: the new (and preferred) <classname>dhcp3</classname> package uses +<filename>/etc/dhcp3/dhcpd.conf</filename>. + +</para><para> + +In this example, there is one server +<replaceable>"servername"</replaceable> 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 +<replaceable>"filename"</replaceable> option should be the name of the +file which will be retrieved via TFTP. + +</para><para> + +After you have edited the <command>dhcpd</command> configuration file, +restart it with <userinput>/etc/init.d/dhcpd restart</userinput>. + +</para> + + <sect3 arch="i386"> + <title>PXE Booting</title> +<para> +Here is another example for a <filename>dhcp.conf</filename> using the +Pre-boot Execution Environment (PXE) method of TFTP. + +<informalexample><screen> + +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 192.168.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 192.168.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"; + } +} + +</screen></informalexample> + +Note that for PXE booting, the client filename <filename>pxelinux.0</filename> +is a boot loader, not a kernel image (see <xref linkend="tftp-images"/> +below). + +</para> + </sect3> + </sect2> diff --git a/eu/install-methods/tftp/rarp.xml b/eu/install-methods/tftp/rarp.xml new file mode 100644 index 000000000..26f2b681a --- /dev/null +++ b/eu/install-methods/tftp/rarp.xml @@ -0,0 +1,73 @@ +<!-- retain these comments for translator revision tracking --> +<!-- original version: 15652 untranslated --> + + + <sect2 condition="supports-rarp" id="tftp-rarp"> + <title>Setting up RARP server</title> +<para> + +To setup RARP, you need to know the Ethernet address (a.k.a. the MAC address) +of the client computers to be installed. +If you don't know this information, you can + +<phrase arch="sparc"> pick it off the initial OpenPROM boot messages, use the +OpenBoot <userinput>.enet-addr</userinput> command, or </phrase> + +boot into ``Rescue'' mode (e.g., from the rescue floppy) and use the +command <userinput>/sbin/ifconfig eth0</userinput>. + +</para><para> + +On a RARP server system using a Linux 2.2.x kernel, +you need to populate the kernel's RARP table. +To do this, run the following commands: + +<informalexample> +<para> + +<userinput>/sbin/rarp -s +<replaceable>client-hostname</replaceable> +<replaceable>client-enet-addr</replaceable> +</userinput> + +</para><para> + +<userinput>/usr/sbin/arp -s +<replaceable>client-ip</replaceable> +<replaceable>client-enet-addr</replaceable> +</userinput> + +</para></informalexample> + +</para><para> + +If you get + +<informalexample><screen> +SIOCSRARP: Invalid argument +</screen></informalexample> + +you probably need to load the RARP kernel module or else recompile the +kernel to support RARP. Try <userinput>modprobe rarp</userinput> and +then try the <command>rarp</command> command again. + +</para><para> + +On a RARP server system using a Linux 2.4.x kernel, +there is no RARP module, and +you should instead use the <command>rarpd</command> program. The +procedure is similar to that used under SunOS in the following +paragraph. + +</para><para> + +Under SunOS, you need to ensure that the Ethernet hardware address for +the client is listed in the ``ethers'' database (either in the +<filename>/etc/ethers</filename> file, or via NIS/NIS+) and in the +``hosts'' database. Then you need to start the RARP daemon. In SunOS +4, issue the command (as root): +<userinput>/usr/etc/rarpd -a</userinput>; in SunOS 5, use +<userinput>/usr/sbin/rarpd -a</userinput>. + +</para> + </sect2> |