我知道运行 PXE 服务器的典型设置是 DHCP+TFTP+HTTP/FTP/NFS... 服务器的组合,但我的设置必须只是 DHCP+HTTP,所以我的 dhcpd.conf 有这些行:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.5 192.168.1.10;
option subnet-mask 255.255.255.0;
...
filename "http://192.168.1.1/pxelinux.0";
}
我使用 iPXE ( http://www.ipxe.org ) - 它可以从 HTTP 服务器获取 pxelinux.0 - 来启动我的客户端。他们会看到一个 pxelinux 菜单,其中包含运行 Ubuntu 安装程序的选项。它的“附加”行是这样的:
APPEND url=http://192.168.1.1/mountpointisoubuntu/preseed/ubuntu-server.seed
安装过程中一切似乎都很顺利,直到我收到一条错误消息:
The installer failed to process preconfiguration file from http://192.168.1.1/pxelinux.0
我在Debian 安装指南的 B.2.5 章中读到,如果 dhcpd.conf 有一个 HTTP url,安装程序会假定它是一个预置文件的 url。
我认为附加“url”预置参数会覆盖此行为,但事实并非如此!我该怎么做才能告诉安装程序忘记使用 dhcpd.conf 中的 url 作为预置文件的 url?
我可以看到两个选项:
APPEND
线路,使其使用静态 IP 设置,而不是外出寻找 DHCP。这样它就永远不会看到 DHCPfilename
。更改您的 DHCP 服务器配置,使其
filename
仅服务于不是来自 Debian 安装程序的请求。安装指南中给出的示例可以很容易地修改: