думаю, стоит поступить так: собрать ядро из исходников в конфигурации специально для бездисковой числодробилки. оттуда можно выкинуть практически всё, кроме совершено необходимого: драйверов сетевых карт, NFS клиента, NFS root и тому подобного, причём скомпилировать всё это не модулями, а прямо в ядро -- тогда можно будет не городить initrd. полученный образ ядра сложить в /tftpboot. если используете пакет pxelinux, то в его конфигурации (например, /tftpboot/pxelinux.cfg/default) указать новое ядро и его параметры загрузки как-то примерно так:
TIMEOUT 0
PROMPT 0
DEFAULT linux-26-smp
APPEND apm=on apm=power-off root=/dev/nfs ip=::::::'both' nfsroot=192.168.3.100:/usr/local/diskless/%s/root
здесь linux-26-smp -- имя файла моего самосборного ядра (лежит в /tftpboot/linux-26-smp).
при таких параметрах ядро при загрузке сразу сделает DHCP-запрос и смонтирует root по NFS из каталога /usr/local/diskless/<IP-address>/root
внимательное изучение логов DHCP и TFTP серверов помогут в отладке
