我正在设置一台用PXEBoot加载Debian的机器,遵循关于Debian Wiki的指南。我在/var/lib/tftpboot/debian-jessie/pxelinux.0的服务器pxe.example.com上看到了引导映像。当我使用tftp pxe.example.com时,我可以从我的网络上的任何机器手动下载该文件,但是当我启动客户端机器时仍然会收到这个错误:
PXE-T01: File not found
PXE-E3B: TFTP Error - File Not found
PXE-M0F: Exiting PXE ROM.问题是,即使在我的DHCP服务器上的/etc/dchpd.conf中有这样的内容:
group {
next-server pxe.example.com;
option option-209 "/debian-jessie/pxelinux.cfg/default";
filename "/debian-jessie/pxelinux.0";
host theclient {
hardware ethernet my:ma:ca:dd:re:ss;
fixed-address theclient.example.com;
}
}并且在每次编辑之后运行/etc/rc.d/dhcpd restart,并且客户机从服务器获得一个IP地址,它仍然试图从pxe下载错误的文件名!PXE服务器的daemon.log显示:
in.tftpd: RRQ from <client's ip> filename debian-bios/pxelinux.0
in.tftpd: sending NAK (1, File not found) to <client's ip>我尝试了明显的黑客操作,只想将debian-jessie的名称更改为debian-bios,但由于目录结构不匹配,结果仍然失败。我不知道的是,它是从哪里得到这个目录被称为debian-bios的想法的!这是对旧系统的更新,但是"bios“这个词在我的dhcpd.conf中甚至没有出现,那么这个文件名是从哪里来的呢?
就像我说的,我重新启动了dhcpd,我可以看到它给了客户机一个IP地址。整个握手正在发生,并且工作正常,但是它得到的文件名选项无论如何都错了。
我一定是漏掉了什么。有没有人知道它还会在哪里检索这个选项,或者它为什么没有做我期望的事情呢?
谢谢!
发布于 2015-07-29 08:52:41
但是"bios“这个词甚至没有出现在我的dhcpd.conf中,那么这个文件名是从哪里来的呢?
它肯定来自于您网络中的“第二”PXE启用DHCP服务器.
或
/etc/dchpd.conf不是真正驱动DHCP守护进程的conf文件。
在这种情况下,Wireshark流量捕获确实会有很大帮助。
https://serverfault.com/questions/709241
复制相似问题