A imagem do kernel (e initrd) deve estar localizada em relação à pasta raiz. Se você seguir esse tutorial, você configurou os seguintes parâmetros:
- O servidor DHCP está configurado para usar
/tftpboot/
- A imagem de inicialização é
/pxelinux.0
(relativa ao diretório raiz do TFTP, portanto, o caminho real é/tftpboot/pxelinux.0
) - O PXELinux (parte do syslinux) procura sua configuração no diretório
/pxelinux.cfg/
. Se não encontrar um arquivo que corresponda ao endereço MAC ou ao GUID do cliente, ele fará o fallback para um arquivo chamadodefault
(/tftpboot/pxelinux.cfg/default
) no seu caso. -
Esse arquivo deve conter algo como:
LABEL linux KERNEL vmlinuz INITRD initrd APPEND root=...
Os arquivos
vmlinuz
einitrd
são então consultados em relação ao diretório raiz TFTP, portanto, verifique se o arquivo/tftpboot/vmlinuz
e/tftpboot/initrd
existe. Você pode encontrar esses arquivos em/boot/
.
Sugiro também não usar /tftpboot/
como diretório raiz para arquivos TFTP, mas /srv/tftpboot/
. Esse é um local mais adequado para dados específicos do site.
Para depuração, certifique-se de dar uma olhada no seu syslog. Eu usei o servidor DHCP dnsmasq que envia seus logs para o syslog ( /var/log/syslog
). O servidor DHCP do ISC deve fazer algo semelhante.