No subject


Sun Feb 20 16:52:19 PST 2005


myself.

tftp is different.

tftp does not require this step for authentication. tftp make a requst of
the server, like:
Give me the file located at /kernels/linux-2.0.36
(to which the server look sto see if that file exists in its tftpd served
directory like: /tftpboot or /boot for the full path of:
/tftpbootp/kernels/linux-2.0.36 or /boot/kernels/linux-2.0.36 )
(The tftp daemon considers its starting directory the root directory so
any request it gets has a "/tftpboot" or "/boot" prepended to it.)

The tftpd server then sends the file (if it has the file and it is
publicly readable) to the client.

You do not often run into tftp/tftpd any more. The most common use it has
if for updating BIOS, or firmware on specialized network equipment, or in
this case to help a diskless workstation get started.

Diskless workstations often use an ethernet card with an EPROM programmed
with information on how to get an IP address with something called BOOTP
or DHCP.
(BOOTP: Boot Parameters Server)
(DHCP : Dynamic Hosts Configuration Protocol)

When the machine is first started, it goes through a POST (power On Self
Test) and examines its internal BIOS (Basic Input Output System) for
devices that will allow it to boot an OS (Operating system.) Common
devices in many machines include:
Floppy disk
Hard Drive
CD-ROM (sometimes in newer machines)
A special EPROM chip added to an ethernet card, or certain types of
hardware designed to be network booted, or use of a specially created
floppy can allow you to make some machines "boot" their operating system
and grab their file systems from over the network.
(EPROM Erasable Programmable Read Only Memory)

So here is what can happen in a network booted system:
You turn on the machine.
The machine looks through the list of hardware from which is may boot.
The machine finds the ethernet card.
The machine reads the BIOS from the ethernet card and understands how to
send out a bootp request, understand the response, and memorize it.
Part of the BOOTP (or DHCP) response includes an IP address, AND what
server it is told will be a tftpd server, as well as what root directory
it should find a file from the tftpd server and what file it will need.
The machine sets its IP address up, and then uses its IP address to send
out a tftp request (using the TCP/IP protocol suite since now it has an 
IP address) to the tftpd server it was told inthe BOOTP (or DHCP)
response to get the file from...
The tftpd server sends the file (if it has it, and it is publicly
readable).
The machines gets the file reads it into memory and continutes booting
from it... (more steps are needed like NFS etc, but wiull not be covered
here...) (NFS: Network File System)

for more information, from a unix shell see:
man bootp
man dhcp
man tftp
man tftpf
man bootptab
Install the "netboot" package (if you have it available) and
man mknbi-dos
man mknbi-linux

and do some searches at Linux.org in the HOW-TO and Mini-How-to sections
for network booting for more complete descriptions...

Andru and I first did some work with tftp a few years ago when we
net-booted some Sun 3/50 and Sun 3/60 machines over a network. Now we have
about 16 Linux based diskless workstations in use at work. They are GREAT
for us. They have little maintenance. Everything is stored on the server,
and executed on the diskless workstations. There are only 2 moving parts:
The fan on the CPU and the fan on the power supply. If any one of them has
a failure, then they are just "reset" and the machine reboots over the
network.
Andru is mostly responsible for setting this up and pushing it through at
our work. He is the one that first suggested the idea, and made this
happen.

-M
P.S. Ignore the typos, I do.





More information about the talk mailing list