First, you need to make sure that you haven't denied any host access via TCP wrappers. Look in /etc/hosts.deny and /etc/hosts.allow for tftp entries. If you're using these files to restrict tftp access, then you need to either comment out the tftp entry in hosts.deny or add an entry for your client in hosts.allow
Next, you should copy all of the files necessary for your architecture to /tftpboot, as specified in the client architecture-specific introduction. For example, for a sparc client with IP address 192.168.1.10, you'd run:
# mkdir -p /tftpboot # cp /export/client/root/usr/mdec/boot /tftpboot/C0A8010A.SUN4C
Note, some tftp daemons do not support chroot'ing into /tftpboot, and you may need to specify in bootparams, bootpd, or dhcpd the entire path to the bootloader. This is something you should test using the tftp(1) client before getting frustrated that netbooting doesn't work.
If all else fails, you can set your directories up such that a request for /tftpboot/C0A8010A.SUN4C works on a chroot'ed tftpd:
# cd /tftpboot # ln -s . tftpboot
Setting up tftpd, NetBSD
Setting up tftpd, OpenBSD
Setting up tftpd, FreeBSD
Setting up tftpd, Mac OS X and Darwin
Setting up tftpd, Linux (using inetd.conf)
Setting up tftpd, Linux (using xinetd.conf)
Setting up tftpd, NEXTSTEP
Setting up tftpd, HP-UX
[If you have details for any other platform, please let us know]
tftp dgram udp wait root /usr/libexec/tftpd tftpd -s /tftpboot
You can test your tftpd from any unix machine, by running:
# tftp tftpserver.test.net tftp> get C0A8010A.SUN4C Received 683 bytes in 0.3 seconds tftp> quitIn this case, we use C0A8010A.SUN4C, the sparc kernel name as the test file to get.
Continue on to setting up nfs
tftp dgram udp wait nobody /usr/libexec/tftpd tftpd /tftpboot
You can test your tftpd from any unix machine, by running:
# tftp tftpserver.test.net tftp> get C0A8010A.SUN4C Received 683 bytes in 0.3 seconds tftp> quitIn this case, we use C0A8010A.SUN4C, the sparc kernel name as the test file to get.
Continue on to setting up nfs
tftp dgram udp wait nobody /usr/libexec/tcpd tftpd /private/tftpboot
You can test your tftpd from any unix machine, by running:
# tftp tftpserver.test.net tftp> get C0A8010A.SUN4C Received 683 bytes in 0.3 seconds tftp> quitIn this case, we use C0A8010A.SUN4C, the sparc kernel name as the test file to get.
Continue on to setting up nfs
tftp dgram udp wait nobody /usr/sbin/tcpd in.tftpd /tftpboot
You can test your tftpd from any unix machine, by running:
# tftp tftpserver.test.net tftp> get C0A8010A.SUN4C Received 683 bytes in 0.3 seconds tftp> quitIn this case, we use C0A8010A.SUN4C, the sparc kernel name as the test file to get.
Under some circumstances, you will need to insert a static ARP entry on your tftp server. This may be what you need if the client gets to the point that it is trying to tftp the bootloader but it never receives it. This is apparently common when tftpd is on a Linux server. Under Linux, add the ARP entry using:
# arp -s 192.168.1.10 aa:bb:cc:dd:ee:ffWhere both the IP address and MAC address is the client's.
Continue on to setting up nfs
service tftp { socket_type = dgram protocol = udp wait = yes user = tftp server = /usr/sbin/in.tftpd server_args = -l /tftpboot only_from = client.test.net }
You can test your tftpd from any unix machine (assuming you add it to the only_from line), by running:
# tftp tftpserver.test.net tftp> get C0A8010A.SUN4C Received 683 bytes in 0.3 seconds tftp> quitIn this case, we use C0A8010A.SUN4C, the sparc kernel name as the test file to get.
Under some circumstances, you will need to insert a static ARP entry on your tftp server. This may be what you need if the client gets to the point that it is trying to tftp the bootloader but it never receives it. This is apparently common when tftpd is on a Linux server. Under Linux, add the ARP entry using:
# arp -s 192.168.1.10 aa:bb:cc:dd:ee:ffWhere both the IP address and MAC address is the client's.
Continue on to setting up nfs
tftp dgram udp wait root /usr/etc/tftpd tftpd -s /private/tftpboot
You can test your tftpd from any unix machine, by running:
# tftp tftpserver.test.net tftp> get C0A8010A.SUN4C Received 683 bytes in 0.3 seconds tftp> quitIn this case, we use C0A8010A.SUN4C, the sparc kernel name as the test file to get.
Continue on to setting up nfs
tftp:*:9999:9999:tftp server:/tftpboot:/bin/false
tftp dgram udp wait root /etc/tftpd tftpdUnder HP-UX 10, the path is /usr/lbin/tftpd instead of /etc/tftpd
You can test your tftpd from any unix machine, by running:
# tftp tftpserver.test.net tftp> get C0A8010A.SUN4C Received 683 bytes in 0.3 seconds tftp> quitIn this case, we use C0A8010A.SUN4C, the sparc kernel name as the test file to get.
Continue on to setting up nfs
|
|