The following configuration needs to be performed on the server
For this information the Etherboot Userman Setting up a DHCP daemon should be your first read.
At the very least you need to set up DHCPD to give an IP address to the machines card.
If no filename is given the current Etherboot 5.0.5 defaults to /tftpboot/kernel -- a file called kernel. However it is safer to give a specific filename in /etc/dhcpd.conf so that "kernel" can be reserved for a fall-back netboot using something like tomsrtbt, as described in Section 6.1.
Under the chroot environment (-s switch), that path will actually be /tftpboot/tftpboot/kernel. This allows the first /tftpboot to be stripped off under the chroot environment, which then allows etherboot to "find" the file.
For the Dachstein/Etherboot setup, this netboot file will be lrp.nb so filename "firewall/lrp.nb"; would be the string to use within the /etc/dhcpd.conf file
If you need more info regarding DHCP then the following links should be enough to overwhelm you. If you are using a new distribution such as RedHat 7.2 then be aware that any references to building the package from a tarball should not need to be pursued. The rpms on the distributions installation disk should be easier to set up and will also include the necessary xinetd and init.d scripts.
The DHCP Links were found using this google search ... an unsubtle hint ... :-)
If it helps, here is an extract from my dhcpd.conf that is specific to netbooting...
/etc/dhcpd.conf
group {
use-host-decl-names on;
option log-servers 192.168.22.20;
host lance-test{
hardware ethernet 00:80:4b:0a:05:14; # lance
fixed-address 192.168.22.48;
option host-name "lance-test";
filename "firewall/lrp.nb";
}
}
|
For RedHat 7.2, one trap is to be aware of the xinetd file for the tftp daemon, this config file will install with the rpm for tftp however a few changes may be necessary. Besides enabling it you may want to turn on logging with "l" and become familiar with how the -s flag works. Other distributions may well be different in their initial setup, so become familiar with them.
/etc/xinetd.d/tftp
# default: off
# description: The tftp server serves files using the trivial file transfer \
# protocol. The tftp protocol is often used to boot diskless \
# workstations, download configuration files to network-aware printers, \
# and to start the installation process for some operating systems.
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -sl /tftpboot
# disable = yes
} |
If the server args are as above (-s = chroot) then make sure the filename argument in /etc/dhcpd.conf is used without including the /tftpboot/ path.
In other words -- filename "firewall/lrp.nb" instead of filename "/tftpboot/firewall/lrp.nb". As usual, man tftp for the good oil on why and man chroot if the reasons are still vague.
I have changed the permissions by putting /tftpboot in the group nobody and making it searchable only, the same for the directories within. The files ( specifically, lrp.nb ) need to be readable by others for etherboot to load and run.
These alterations will be done by the extractdach.pl script and may seriously mess with an existing /tftpboot directories permissions. If you do have an existing setup then you may need to edit the script (if necessary) to suit that, then be prepared for more configuration changes.